#pragma once #include "BsEditorPrerequisites.h" #include "BsIReflectable.h" #include "BsModule.h" #include "BsPlatformInfo.h" namespace BansheeEngine { class BS_ED_EXPORT BuildData : public IReflectable { public: BuildData(); PlatformType activePlatform; Vector> platformData; /************************************************************************/ /* RTTI */ /************************************************************************/ public: friend class BuildDataRTTI; static RTTITypeBase* getRTTIStatic(); virtual RTTITypeBase* getRTTI() const; }; class BS_ED_EXPORT BuildManager : public Module { public: BuildManager(); const Vector& getAvailablePlatforms() const; PlatformType getActivePlatform() const; void setActivePlatform(PlatformType type); SPtr getActivePlatformInfo() const; SPtr getPlatformInfo(PlatformType type) const; Vector getFrameworkAssemblies(PlatformType type) const; Path getMainExecutable(PlatformType type) const; WString getDefines(PlatformType type) const; void save(const Path& outFile); void load(const Path& inFile); private: SPtr mBuildData; }; }