itemrepository.cpp File Reference

Storage facility for all buildingtypes, vehicletypes etc. More...

#include <map>
#include <vector>
#include "typen.h"
#include "itemrepository.h"
#include "textfileparser.h"
#include "sgstream.h"
#include "textfile_evaluation.h"
#include "util/messaginghub.h"
#include "packagemanager.h"
#include "packagerepository.h"

Include dependency graph for itemrepository.cpp:

Go to the source code of this file.

Classes

class  TechAdapterLoader
class  FileCache

Typedefs

typedef vector< TextFileDataLoader * > DataLoaders
typedef map< ASCString, TextPropertyListTextFileRepository

Functions

void duplicateIDError (const ASCString &itemtype, int id, const ASCString &file1, const ASCString &name1, const ASCString &file2, const ASCString &name2)
void loadalltextfiles ()
void registerDataLoader (TextFileDataLoader *dataLoader)
 registers a dataLoader . The object is delete after use, so use: registerDataLoader( new MyDataLoader() )
void registerDataLoader (TextFileDataLoader &dataLoader)
 registers a dataLoader .
void loadAllData (bool useCache)

Variables

SigC::Signal0< void > dataLoaderTicker
const char * cacheFileName = "asc2.cache"
DataLoaders dataLoaders
DataLoaders dataLoadersToDelete
TextFileRepository textFileRepository
MineTypeRepository mineTypeRepository
ItemRepositoryLoader< VehicleTypevehicleTypeRepository ("vehicletype")
ItemRepositoryLoader< TerrainTypeterrainTypeRepository ("terraintype")
ItemRepositoryLoader< ObjectTypeobjectTypeRepository ("objecttype")
ItemRepositoryLoader< BuildingTypebuildingTypeRepository ("buildingtype")
ItemRepositoryLoader< TechnologytechnologyRepository ("technology")
TechAdapterContainer techAdapterContainer
{ ... } ::Foo foo
const int cacheVersion = 33


Detailed Description

Storage facility for all buildingtypes, vehicletypes etc.

Definition in file itemrepository.cpp.


Typedef Documentation

typedef vector<TextFileDataLoader*> DataLoaders

Definition at line 39 of file itemrepository.cpp.

typedef map<ASCString,TextPropertyList> TextFileRepository

Definition at line 44 of file itemrepository.cpp.


Function Documentation

void duplicateIDError ( const ASCString itemtype,
int  id,
const ASCString file1,
const ASCString name1,
const ASCString file2,
const ASCString name2 
)

Definition at line 48 of file itemrepository.cpp.

References fatalError(), and strrr().

Referenced by ItemRepository< T >::RegisterID::operator()().

void loadAllData ( bool  useCache  ) 

Definition at line 317 of file itemrepository.cpp.

References buildingTypeRepository, cacheFileName, dataLoaders, dataLoaderTicker, displayLogMessage(), fatalError(), FileCache::isCurrent(), FileCache::load(), loadalltextfiles(), objectTypeRepository, packageRepository, registerDataLoader(), technologyRepository, terrainTypeRepository, textFileRepository, vehicleTypeRepository, and FileCache::write().

Referenced by loaddata(), and loadEditordata().

void loadalltextfiles (  ) 

Definition at line 379 of file itemrepository.cpp.

References dataLoaderTicker, displayLogMessage(), tn_c_lzw_filestream::getLocation(), tfindfile::getnextname(), tnstream::reading, textFileRepository, and TextPropertyGroup::typeName.

Referenced by loadAllData(), and loaddata().

void registerDataLoader ( TextFileDataLoader dataLoader  ) 

registers a dataLoader .

Definition at line 311 of file itemrepository.cpp.

References dataLoaders.

void registerDataLoader ( TextFileDataLoader dataLoader  ) 

registers a dataLoader . The object is delete after use, so use: registerDataLoader( new MyDataLoader() )

Definition at line 305 of file itemrepository.cpp.

Referenced by loadAllData(), loaddata(), and loadEditordata().


Variable Documentation

ItemRepositoryLoader<BuildingType> buildingTypeRepository("buildingtype")

Referenced by ConstructBuildingCommand::buildingFits(), constructBuilding(), NewGadgetDetection::evaluate(), execaction_pg(), trunreplay::execnextreplaymove(), getBuildingType(), GameMap::getbuildingtype_byid(), GameMap::getbuildingtype_bypos(), GameMap::getBuildingTypeNum(), ConstructBuildingCommand::getFields(), ConstructBuildingCommand::getProduceableBuildings(), ConstructBuildingCommand::go(), loadAllData(), MemoryMeasurement::measureTypes(), NewGadgetDetection::NewGadgetDetection(), TechAdapterSelectionItemFactory::restart(), Maped_MainScreenWidget::selectBuilding(), transformMap(), and unitProductionAnalysis().

const char* cacheFileName = "asc2.cache"

Definition at line 37 of file itemrepository.cpp.

Referenced by FileCache::FileCache(), loadAllData(), and FileCache::write().

const int cacheVersion = 33

Definition at line 191 of file itemrepository.cpp.

Referenced by FileCache::FileCache(), and FileCache::write().

DataLoaders dataLoaders

Definition at line 40 of file itemrepository.cpp.

Referenced by FileCache::load(), loadAllData(), registerDataLoader(), and FileCache::write().

DataLoaders dataLoadersToDelete

Definition at line 41 of file itemrepository.cpp.

Referenced by registerDataLoader(), and FileCache::~FileCache().

SigC::Signal0<void> dataLoaderTicker

Definition at line 34 of file itemrepository.cpp.

Referenced by ASC_MainScreenWidget::ASC_MainScreenWidget(), gamethread(), loadAllData(), loadalltextfiles(), GraphicSetManager_Base::loadData(), loaddata(), loadEditordata(), MapDisplayPG::MapDisplayPG(), mapeditorMainThread(), ItemRepositoryLoader< T >::read(), and MainScreenWidget::setup().

class { ... } Foo foo [static]

MineTypeRepository mineTypeRepository

Definition at line 139 of file itemrepository.cpp.

Referenced by Maped_MainScreenWidget::selectMine().

ItemRepositoryLoader<ObjectType> objectTypeRepository("objecttype")

Referenced by chooseObject(), execaction_pg(), trunreplay::execnextreplaymove(), AddObject::fieldOperator(), GuiFunctions::ObjectBuildingGui::getImage(), GuiFunctions::ObjectBuildingGui::getName(), getObjectType(), GameMap::getobjecttype_byid(), GameMap::getobjecttype_bypos(), GameMap::getObjectTypeNum(), MemoryMeasurement::getResult(), loadAllData(), MemoryMeasurement::measureTypes(), PipeLayer::PipeLayer(), ObjectStorage< T >::print(), tspfldloaders::readfields(), TechAdapterSelectionItemFactory::restart(), Maped_MainScreenWidget::selectObjectList(), Vehicle::spawnMoveObjects(), testAttack2(), testMovementTracks(), testObjectConstruction1(), testObjectRemoval(), and transformMap().

TechAdapterContainer techAdapterContainer

Definition at line 157 of file itemrepository.cpp.

Referenced by Research::evalTechAdapter(), Research::listTriggeredTechAdapter(), and TechAdapterDependency::writeInvertTreeOutput().

ItemRepositoryLoader<Technology> technologyRepository("technology")

Referenced by anyTechAvailable(), editResearch(), trunreplay::execnextreplaymove(), executeUserAction(), TechDependency::findInheritanceLevel(), generateTechTree(), DirectResearchCommand::getAvailableTechnologies(), GameMap::gettechnology_byid(), GameMap::gettechnology_bypos(), GameMap::getTechnologyNum(), DirectResearchCommand::go(), Research::isBlocked(), loadAllData(), printTech(), Research::read_struct(), Research::read_techs(), tspfldloaders::readdissections(), researchinfo(), setResearchGoal(), Research::settechlevel(), TechDependency::showDebug(), testresearch1(), testresearch2(), DirectResearchCommand::undoAction(), CancelResearchCommand::undoAction(), TechDependency::writeInvertTreeOutput(), and TechDependency::writeTreeOutput().

ItemRepositoryLoader<TerrainType> terrainTypeRepository("terraintype")

Referenced by tmapgenerator::addcoast(), buildemptymap(), chooseTerrain(), CopyMap::copy(), execaction_pg(), MapChange::fieldOperator(), getTerrainType(), GameMap::getterraintype_byid(), GameMap::getterraintype_bypos(), GameMap::getTerrainTypeNum(), loadAllData(), MemoryMeasurement::measureTypes(), process_BI_map(), tspfldloaders::readfields(), Maped_MainScreenWidget::selectTerrainList(), tmapgenerator::setmap(), and transformMap().

TextFileRepository textFileRepository

Definition at line 45 of file itemrepository.cpp.

Referenced by loadAllData(), and loadalltextfiles().

ItemRepositoryLoader<VehicleType> vehicleTypeRepository("vehicletype")

Referenced by ActionWidget::ActionWidget(), buildProductionLine(), CalculateThreat_Vehicle::calc_threat_vehicle(), chooseVehicleType(), constructUnit(), createUnitCostList(), TechWidget::display(), NewGadgetDetection::evaluate(), execaction_pg(), trunreplay::execnextreplaymove(), RemoveProductionLineCommand::getDescription(), BuildProductionLineCommand::getDescription(), getUnitType(), GameMap::getvehicletype_byid(), GameMap::getvehicletype_bypos(), GameMap::getVehicleTypeNum(), loadAllData(), MemoryMeasurement::measureTypes(), NewGadgetDetection::NewGadgetDetection(), BuildProductionLineCommand::productionLinesBuyable(), tspfldloaders::readdissections(), removeProductionLine(), VehicleTypeRenderer::renderWidget(), TechAdapterSelectionItemFactory::restart(), UnitTypeTransformation::run(), Maped_MainScreenWidget::selectVehicle(), showUnitEndurance(), testresearch1(), testresearch2(), transform(), RemoveProductionLineCommand::undoAction(), BuildProductionLineCommand::undoAction(), and unitProductionAnalysis().


Generated on Mon May 21 01:37:09 2012 for Advanced Strategic Command by  doxygen 1.5.1