XLE
v0.02.0
|
Holds a collection of IObjectType interface, and selects the appropriate interface for a given object More...
#include <EntityInterface.h>
Classes | |
class | KnownType |
Public Member Functions | |
IEntityInterface * | GetInterface (Identifier &translatedId, const Identifier &inputId) const |
DocumentId | CreateDocument (DocumentTypeId docType, const char initializer[]) |
bool | DeleteDocument (DocumentId doc, DocumentTypeId docType) |
ObjectId | AssignObjectId (DocumentId doc, ObjectTypeId objType) const |
ObjectTypeId | GetTypeId (const char name[]) const |
DocumentTypeId | GetDocumentTypeId (const char name[]) const |
PropertyId | GetPropertyId (ObjectTypeId type, const char name[]) const |
ChildListId | GetChildListId (ObjectTypeId type, const char name[]) const |
uint32 | MapTypeId (ObjectTypeId type, const IEntityInterface &owner) |
void | RegisterType (std::shared_ptr< IEntityInterface > type) |
Protected Attributes | |
std::vector< std::shared_ptr< IEntityInterface > > | _types |
std::vector< KnownType > | _knownObjectTypes |
std::vector< KnownType > | _knownDocumentTypes |
ObjectId | _nextObjectId |
Holds a collection of IObjectType interface, and selects the appropriate interface for a given object
Normally a scene will contain multiple different types of objects. Each object type might have a different IObjectType implementation to access that data.
This class will keep a collection of interfaces, and will select the right interface for any given operation.