CEL

Public API Reference

iCelLocalEntitySet Struct Reference

A local entity set define the set of entities that are considered 'local' to the saved file. More...

#include <physicallayer/persist.h>

Inheritance diagram for iCelLocalEntitySet:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual void AddEntity (iCelEntity *entity)=0
 Add an entity to the local set.
virtual iCelEntityFindExternalEntity (iCelDataBuffer *databuf)=0
 This routine will be called by the persistence layer whenever it needs to find a non-local entity.
virtual iCelPropertyClassFindExternalPC (iCelDataBuffer *databuf)=0
 This routine will be called by the persistence layer whenever it needs to find a non-local property class.
virtual iCelEntityGetEntity (size_t idx) const =0
 Get the specified entity.
virtual size_t GetEntityCount () const =0
 Number of entities managed by this set.
virtual bool IsLocal (iCelPropertyClass *pc)=0
 Test if a property class is local (is in this set).
virtual bool IsLocal (iCelEntity *entity)=0
 Test if an entity is local (is in this set).
virtual csPtr< iCelDataBufferSaveExternalEntity (iCelEntity *entity)=0
 This routine will be called by the persistence layer whenever it needs to save a non-local entity.
virtual csPtr< iCelDataBufferSaveExternalPC (iCelPropertyClass *pc)=0
 This routine will be called by the persistence layer whenever it needs to save a non-local property class.

Detailed Description

A local entity set define the set of entities that are considered 'local' to the saved file.

That means that all entities that are in this list will be saved and all entities that are not in this list (but are still referred too from entities in this set) will be saved as references.

Definition at line 303 of file persist.h.


Member Function Documentation

virtual void iCelLocalEntitySet::AddEntity ( iCelEntity entity  )  [pure virtual]

Add an entity to the local set.

Implemented in celStandardLocalEntitySet.

virtual iCelEntity* iCelLocalEntitySet::FindExternalEntity ( iCelDataBuffer databuf  )  [pure virtual]

This routine will be called by the persistence layer whenever it needs to find a non-local entity.

Basically it should return an already existing entity from the databuffer.

Implemented in celStandardLocalEntitySet.

virtual iCelPropertyClass* iCelLocalEntitySet::FindExternalPC ( iCelDataBuffer databuf  )  [pure virtual]

This routine will be called by the persistence layer whenever it needs to find a non-local property class.

Basically it should return an already existing property class from the databuffer.

Implemented in celStandardLocalEntitySet.

virtual iCelEntity* iCelLocalEntitySet::GetEntity ( size_t  idx  )  const [pure virtual]

Get the specified entity.

Implemented in celStandardLocalEntitySet.

virtual size_t iCelLocalEntitySet::GetEntityCount (  )  const [pure virtual]

Number of entities managed by this set.

Implemented in celStandardLocalEntitySet.

virtual bool iCelLocalEntitySet::IsLocal ( iCelPropertyClass pc  )  [pure virtual]

Test if a property class is local (is in this set).

Implemented in celStandardLocalEntitySet.

virtual bool iCelLocalEntitySet::IsLocal ( iCelEntity entity  )  [pure virtual]

Test if an entity is local (is in this set).

Implemented in celStandardLocalEntitySet.

virtual csPtr<iCelDataBuffer> iCelLocalEntitySet::SaveExternalEntity ( iCelEntity entity  )  [pure virtual]

This routine will be called by the persistence layer whenever it needs to save a non-local entity.

So this routine should return a databuffer that can identify a non-local entity.

Implemented in celStandardLocalEntitySet.

virtual csPtr<iCelDataBuffer> iCelLocalEntitySet::SaveExternalPC ( iCelPropertyClass pc  )  [pure virtual]

This routine will be called by the persistence layer whenever it needs to save a non-local property class.

So this routine should return a databuffer that can identify a non-local property class.

Implemented in celStandardLocalEntitySet.


The documentation for this struct was generated from the following file:
Generated for CEL: Crystal Entity Layer by doxygen 1.4.7