wiki:CSimluation2

Version 3 (modified by chlin, 3 years ago) (diff)

--

simulation2/Simulation2.h

class CSimulation2
{
public:
        CSimulation2(CUnitManager*, CTerrain*);
...
private:
        CSimulation2Impl* m;
...
};

simulation2/Simulation2.cpp

class CSimulation2Impl
{
public:
        CSimulation2Impl(CUnitManager* unitManager, CTerrain* terrain) :
                m_SimContext(), m_ComponentManager(m_SimContext), m_EnableOOSLog(false)
        {
                m_SimContext.m_UnitManager = unitManager;
                m_SimContext.m_Terrain = terrain;
                m_ComponentManager.LoadComponentTypes();

                RegisterFileReloadFunc(ReloadChangedFileCB, this);
        }
...

};
...

CSimulation2::CSimulation2(CUnitManager* unitManager, CTerrain* terrain) :
        m(new CSimulation2Impl(unitManager, terrain))
{
}

...
bool CSimulation2::LoadDefaultScripts()
{
        return (
                m->LoadScripts(L"simulation/components/interfaces/") &&
                m->LoadScripts(L"simulation/helpers/") &&
                m->LoadScripts(L"simulation/components/")
        );
}
...