Public Member Functions

aesop::TypeComponentLoader Class Reference
[AESOP Types and Instances]

Clients of this library need to provide component loaders for anything that they want loaded. More...

#include <typeinst.h>

Inheritance diagram for aesop::TypeComponentLoader:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~TypeComponentLoader (void) throw ()
virtual const char * getComponentName (void) const =0 throw ()
 what type of component does this load? "physics", "model", "ai" ...
virtual const char * getLoaderName (void) const =0 throw ()
 what is the name of this loader? "Bob's homemade loader"?
virtual bool isMyFormat (const Datahash *componentData, const char *path) const =0
 given the component data, is this something we can load?
virtual smart_ptr< ComponentDataloadTS (smart_ptr< Instance > &instance, const Datahash *componentData, const char *path)=0
 go ahead and load the given component for the given instance

Detailed Description

Clients of this library need to provide component loaders for anything that they want loaded.

For instance, servers will need to provide loaders for physics and ai components, and clients will need to provide loaders for visual components.

Think of TypeComponentLoader objects as factories. They are capable of creating rich component data for a specific instance of a type.

Every method must be threadsafe! Can be called on multiple background threads during loading etc.

Definition at line 245 of file typeinst.h.


Constructor & Destructor Documentation

aesop::TypeComponentLoader::~TypeComponentLoader ( void   )  throw () [virtual]

Definition at line 41 of file typeinst.cpp.


The documentation for this class was generated from the following files: