Namespaces | Typedefs | Functions | Variables

typeinst.cpp File Reference

#include "typeinst.h"
#include <fstream>
#include "common/wave_ex.h"
#include "datahash/datahash_text.h"
#include "datahash/datahash_util.h"
#include "geometry/geometry_3d.h"
#include "perf/perf.h"
#include "story/story.h"
#include "threadsafe/threadsafe_map.h"
#include "threadsafe/threadsafe_queue.h"
#include "util/parsing.h"
#include "util/token_stream.h"
Include dependency graph for typeinst.cpp:

Go to the source code of this file.

Namespaces

namespace  aesop

Typedefs

typedef threadsafe_queue
< smart_ptr
< TypeComponentLoader > > 
aesop::vec_loader_t
typedef threadsafe_map
< std::string, smart_ptr
< vec_loader_t > > 
aesop::map_loaders_t

Functions

static void aesop::readIdFromStream (std::istream &stream, AESOPIdBuffer &buffer, std::string &token)
static bool aesop::isReservedComponent (const char *name)
void aesop::registerTypeComponentLoader (smart_ptr< aesop::TypeComponentLoader > &tcl)
 Static method for registering type component loaders.
void aesop::initializeTypeInstanceLibrary (smart_ptr< story::Story > &story)
 Must initialize the type instance library at the beginning of time!
void aesop::loadInstances (std::istream &stream,vec_instance_t &instances)
 Load Instance objects from the given stream.
const char * aesop::getKeyWithOverrides (const char *keyName,const Datahash *instanceData,const Datahash *typeData,const Datahash *modelData,eDatahash_Flag flag)
 handy utility method for type component loaders: given the three raw data hashes (instance data, type data, and model data) get the value from the appropriate override source (instance, then type, then model)

Variables

static map_loaders_t aesop::s_loaders