| ## Public API Reference

- Main Page
- Classes
- Files

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# 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:

[legend]
List of all members.

## Public Member Functions
virtual void | AddEntity (iCelEntity *entity)=0
| Add an entity to the local set.
virtual iCelEntity * | FindExternalEntity (iCelDataBuffer *databuf)=0
| This routine will be called by the persistence layer whenever it needs to find a non-local entity.
virtual iCelPropertyClass * | FindExternalPC (iCelDataBuffer *databuf)=0
| This routine will be called by the persistence layer whenever it needs to find a non-local property class.
virtual iCelEntity * | GetEntity (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< iCelDataBuffer > | SaveExternalEntity (iCelEntity *entity)=0
| This routine will be called by the persistence layer whenever it needs to save a non-local entity.
virtual csPtr< iCelDataBuffer > | SaveExternalPC (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:

- physicallayer/persist.h