This is a reference implementation of aesop::Map and aesop::Zone objects.
More...
Typedefs | |
typedef std::map< std::string, smart_ptr< aesop::Zone > > | mapzone::zone_map_t |
data type: maps from zone ID --> zone object | |
Functions | |
smart_ptr< aesop::MapFormatReader > | mapzone::getMapFormatReader (void) |
factory method to create mapzone map format readers | |
smart_ptr< aesop::Map > | mapzone::loadMap (IN const char *id, IN std::istream &stream) |
smart_ptr< aesop::Zone > | mapzone::loadZone (IN std::istream &stream, IN aesop::Zone::eType type) |
void | mapzone::resolveZoneIds (IN aesop::Zone *zone, IN zone_map_t &map) |
void | mapzone::calcBoundaries (IN aesop::Zone *zone) |
This is a reference implementation of aesop::Map and aesop::Zone objects.
The main design objectives of this implementation are:
Note that there are some explicit non-goals:
This is supposed to be a reference implementation to illustrate how some of these interfaces can be built, and to be useful to storytellers that are willing to trade some performance for usability.
typedef std::map<std::string, smart_ptr<aesop::Zone> > mapzone::zone_map_t |
smart_ptr< aesop::MapFormatReader > mapzone::getMapFormatReader | ( | void | ) |
factory method to create mapzone map format readers
smart_ptr< aesop::Map > mapzone::loadMap | ( | IN const char * | id, | |
IN std::istream & | stream | |||
) |
smart_ptr< aesop::Zone > mapzone::loadZone | ( | IN std::istream & | stream, | |
IN aesop::Zone::eType | type | |||
) |
void mapzone::resolveZoneIds | ( | IN aesop::Zone * | zone, | |
IN zone_map_t & | map | |||
) |
void mapzone::calcBoundaries | ( | IN aesop::Zone * | zone | ) |