#ifndef __CIVILIZATIONIGC_H_
#define __CIVILIZATIONIGC_H_
class CcivilizationIGC : public IcivilizationIGC
{
public:
CcivilizationIGC(void)
{
}
public:
virtual HRESULT Initialize(ImissionIGC* pMission, Time now, const void* data, int dataSize);
virtual void Terminate(void);
virtual int Export(void* data) const;
virtual ObjectType GetObjectType(void) const
{
return OT_civilization;
}
virtual ObjectID GetObjectID(void) const
{
return m_data.civilizationID;
}
virtual const char* GetName(void) const
{
return m_data.name;
}
virtual const char* GetIconName(void) const
{
return m_data.iconName;
}
virtual IhullTypeIGC* GetLifepod(void) const
{
return m_phtLifepod;
}
virtual const TechTreeBitMask& GetBaseTechs(void) const
{
return m_data.ttbmBaseTechs;
}
virtual const TechTreeBitMask& GetNoDevTechs(void) const
{
return m_data.ttbmNoDevTechs;
}
virtual const GlobalAttributeSet& GetBaseAttributes(void) const
{
return m_data.gasBaseAttributes;
}
virtual IstationTypeIGC* GetInitialStationType(void) const
{
return m_pstInitial;
}
virtual const char* GetHUDName(void) const
{
return m_data.hudName;
}
virtual float GetBonusMoney(void) const
{
return m_data.bonusMoney;
}
virtual float GetIncomeMoney(void) const
{
return m_data.incomeMoney;
}
private:
ImissionIGC* m_pMission;
DataCivilizationIGC m_data;
IhullTypeIGC* m_phtLifepod;
IstationTypeIGC* m_pstInitial;
};
#endif