Page principale Liste des namespaces Hiérarchie des classes Liste par ordre alphabétique Liste des composants Liste des fichiers Membres des namespaces Composants Déclarations

# Référence de la classe ExManagerObject

`#include <ExManagerObject.h>`

Graphe d'héritage de la classe ExManagerObject

## Membres publics
| ExManagerObject ()
| ~ExManagerObject ()
void | SetManagerId (ExManagerId *Id)
void | Reset (void)
void | Init (void)
void | Init (std::string FileName)
void | List (void)
void | Draw (void)
bool | Add (TypeA object)
bool | Add (std::string FileName)
bool | Load (std::string FileName)
bool | Remove (ExNihilo::ExId id)
bool | Remove (std::string Name)
bool | RemoveCurrentObject (void)
TypeA * | GetObject (ExNihilo::ExId id)
TypeA * | GetObject (std::string Name)
TypeA * | GetCurrentObject (void)
TypeA * | GetFirstObject (void)
TypeA * | GetLasstObject (void)
ExNihilo::ExId | GetFirstObjectId (void)
ExNihilo::ExId | GetLasstObjectId (void)
bool | SetCurrentObject (ExNihilo::ExId id)
bool | SetCurrentObject (std::string Name)
ExNihilo::ExId | NextObject (void)
ExNihilo::ExId | PreviousObject (void)
unsigned int | GetNumberObject (void)
## Membres protégés
std::map< ExNihilo::ExId, TypeA, std::less< ExNihilo::ExId > >::iterator | GetIterator (ExNihilo::ExId id)
std::map< ExNihilo::ExId, TypeA, std::less< ExNihilo::ExId > >::iterator | GetIterator (std::string Name)
## Attributs Protégés
std::map< ExNihilo::ExId, TypeA, std::less< ExNihilo::ExId > > * | m_Map
std::map< ExNihilo::ExId, TypeA, std::less< ExNihilo::ExId > >::iterator | m_ItMap
ExManagerId * | ManagerId
ExNihilo::ExId | m_CurrentObjectId

### template<class TypeA>
class ExManagerObject< TypeA >

## Documentation des contructeurs et destructeurs

ExManagerObject | ( |  | ) |

| Définition à la ligne 100 du fichier ExManagerObject.h. Références Guard. Référencé par ~ExManagerObject().
    00102 {
    00103 Guard(ExManagerObject<TypeA>::ExManagerObject(void))
    00104
    00105 UnGuard

~ExManagerObject | ( |  | ) |

| Définition à la ligne 108 du fichier ExManagerObject.h. Références ExManagerObject(), et Guard.
    00110 {
    00111 Guard(ExManagerObject<TypeA>::~ExManagerObject(void))
    00112 UnGuard

## Documentation des méthodes

bool Add | ( | std::string | FileName | ) |

| Redéfinie dans ExManagerMenu, et ExManagerTexture. Définition à la ligne 194 du fichier ExManagerObject.h. Références Add(), Guard, et Load().
    00196 {
    00197 Guard(bool  ExManagerObject<TypeA>::Add(std::string FileName))
    00198         return Load(FileName);
    00199 UnGuard

bool Add | ( | TypeA | object | ) |

| Redéfinie dans ExManagerMenu, et ExManagerTexture. Définition à la ligne 158 du fichier ExManagerObject.h. Références ExManager::Consol, Guard, m_Map, ManagerId, et ExManagerId::RecordObject(). Référencé par ExManagerTexture::Add(), Add(), ExManagerMenu::Add(), ExManagerCamera::Add(), ExManagerParticuleSystem::Load(), Load(), ExManagerModel::Load3DS(), ExManagerModel::LoadASC(), et ExManagerModel::LoadMD2().
    00160 {
    00161 Guard(bool  ExManagerObject<TypeA>::Add(TypeA object))
    00162         try
    00163         {
    00164                 //Ask ManagerId for Aviable Id and Avialbe name
    00165                 //object.SetIdName(ManagerId->GetNewIdName(object.GetName()));
    00166
    00167                 std::pair<ExNihilo::ExId,TypeA>  obj;
    00168                 obj.first=ManagerId->RecordObject(object);
    00169                 obj.second=object;
    00170                 m_Map->insert(obj);
    00171                 return true;
    00172         }
    00173         catch(ExCExpRecordObject)
    00174         {
    00175                 *Consol<<"Managerobject:: Exception record object"<<std::endl;
    00176                 return false;
    00177         }
    00178         catch(...)
    00179         {
    00180                 *Consol<<"Managerobject:: Exception add object"<<std::endl;
    00181                 return false;
    00182         }
    00183 UnGuard

void Draw | ( | void |  | ) | `[inline]`

| Redéfinie dans ExManagerCamera, ExManagerGizmo, ExManagerInterface, ExManagerLight, ExManagerMenu, ExManagerModel, ExManagerParticuleSystem, et ExManagerSpirit. Définition à la ligne 71 du fichier ExManagerObject.h.
    00072 {};

TypeA * GetCurrentObject | ( | void |  | ) |

| Redéfinie dans ExManagerCamera, et ExManagerModel. Définition à la ligne 244 du fichier ExManagerObject.h. Références GetObject(), Guard, et m_CurrentObjectId.
    00246 {
    00247 Guard(TypeA *  ExManagerObject<TypeA>::GetCurrentObject(void))
    00248         return GetObject(m_CurrentObjectId);
    00249 UnGuard

TypeA* GetFirstObject | ( | void |  | ) |

ExNihilo::ExId GetFirstObjectId | ( | void |  | ) |

std::map< ExNihilo::ExId, TypeA, std::less< ExNihilo::ExId > >::iterator GetIterator | ( | std::string | Name | ) | `[protected]`

| Définition à la ligne 260 du fichier ExManagerObject.h. Références GetIterator(), ExManagerId::GetObjectId(), Guard, m_ItMap, et ManagerId.
    00262 {
    00263 Guard(... iterator ExManagerObject<TypeA>::GetIterator(std::string  Name))
    00264         return GetIterator(ManagerId->GetObjectId(Name,typeid(&m_ItMap->second).name()));
    00265 UnGuard

std::map< ExNihilo::ExId, TypeA, std::less< ExNihilo::ExId > >::iterator GetIterator | ( | ExNihilo::ExId | id | ) | `[protected]`

| Définition à la ligne 252 du fichier ExManagerObject.h. Références Guard, et m_Map. Référencé par GetIterator().
    00254 {
    00255 Guard(... iterator ExManagerObject<TypeA>::GetIterator(ExNihilo::ExId id))
    00256         return m_Map->find(id);
    00257 UnGuard

TypeA* GetLasstObject | ( | void |  | ) |

ExNihilo::ExId GetLasstObjectId | ( | void |  | ) |

unsigned int GetNumberObject | ( | void |  | ) | `[inline]`

| Définition à la ligne 94 du fichier ExManagerObject.h.
    00095 {return m_Vec->size();}

TypeA * GetObject | ( | std::string | Name | ) |

| Définition à la ligne 236 du fichier ExManagerObject.h. Références GetObject(), ExManagerId::GetObjectId(), Guard, m_ItMap, et ManagerId.
    00238 {
    00239 Guard(TypeA *  ExManagerObject<TypeA>::GetObject(std::string  Name))
    00240         return GetObject(ManagerId->GetObjectId(Name,typeid(&m_ItMap->second).name()));
    00241 UnGuard

TypeA * GetObject | ( | ExNihilo::ExId | id | ) |

| Redéfinie dans ExManagerCamera, et ExManagerModel. Définition à la ligne 227 du fichier ExManagerObject.h. Références Guard, et m_Map. Référencé par GetCurrentObject(), GetObject(), et SetCurrentObject().
    00229 {
    00230 Guard(TypeA *  ExManagerObject<TypeA>::GetObject(ExNihilo::ExId id))
    00231         if(m_Map->find(id)==m_Map->end())return NULL;
    00232         return &m_Map->find(id)->second;
    00233 UnGuard

void Init | ( | std::string | FileName | ) |

| Redéfinie dans ExManagerTexture. Définition à la ligne 134 du fichier ExManagerObject.h. Références Guard, et Init().
    00136 {
    00137 Guard(void  ExManagerObject<TypeA>::Init(std::string FileName))
    00138 UnGuard

void Init | ( | void |  | ) | `[virtual]`

| Redéfinie à partir de ExManager. Redéfinie dans ExManagerCamera, ExManagerFont, ExManagerGizmo, ExManagerInterface, ExManagerLight, ExManagerMenu, ExManagerModel, ExManagerParticuleSystem, ExManagerSound, ExManagerSpirit, et ExManagerTexture. Définition à la ligne 125 du fichier ExManagerObject.h. Références Guard, m_CurrentObjectId, et m_Map. Référencé par ExManagerTexture::Init(), ExManagerSpirit::Init(), ExManagerSound::Init(), ExManagerParticuleSystem::Init(), Init(), ExManagerModel::Init(), ExManagerMenu::Init(), ExManagerLight::Init(), ExManagerInterface::Init(), ExManagerGizmo::Init(), ExManagerFont::Init(), et ExManagerCamera::Init().
    00127 {
    00128 Guard(void  ExManagerObject<TypeA>::Init(void))
    00129         m_CurrentObjectId=-1;
    00130         m_Map=new std::map< ExNihilo::ExId  , TypeA , std::less <ExNihilo::ExId  >  >;
    00131 UnGuard

void List | ( | void |  | ) |

| Redéfinie dans ExManagerModel. Définition à la ligne 141 du fichier ExManagerObject.h. Références ExManager::Consol, Guard, m_CurrentObjectId, m_ItMap, et m_Map.
    00143 {
    00144 Guard(void  ExManagerObject<TypeA>::List(void))
    00145         *Consol<<"---------------List of Object Type :"<<typeid(&m_ItMap->second).name()<<"--------------"<<std::endl;
    00146         for(m_ItMap=m_Map->begin();m_ItMap!=m_Map->end();m_ItMap++)
    00147         {
    00148                 *Consol<<" Id:"<<m_ItMap->second.GetId()<<" Name :"<<m_ItMap->second.GetName()<<std::endl;
    00149         }
    00150         *Consol<<"-----------------------------------------------------------------"<<std::endl;
    00151         *Consol<<" Number Total of Object : "<<m_Map->size()<<std::endl;
    00152         *Consol<<" Current Object Id : "<<m_CurrentObjectId<<std::endl;
    00153         *Consol<<"-----------------------------------------------------------------"<<std::endl;
    00154
    00155 UnGuard

bool Load | ( | std::string | FileName | ) |

| Redéfinie dans ExManagerInterface, ExManagerMenu, ExManagerModel, ExManagerParticuleSystem, et ExManagerTexture. Définition à la ligne 186 du fichier ExManagerObject.h. Références Add(), et Guard. Référencé par Add().
    00188 {
    00189 Guard(bool  ExManagerObject<TypeA>::Load(std::string FileName))
    00190         return  Add(TypeA(FileName));
    00191 UnGuard

ExNihilo::ExId NextObject | ( | void |  | ) |

| Définition à la ligne 285 du fichier ExManagerObject.h. Références Guard, m_CurrentObjectId, et m_Map.
    00287 {
    00288 Guard(ExNihilo::ExId   ExManagerObject<TypeA>::NextObject(void))
    00289         if(m_Map->upper_bound(m_CurrentObjectId)==m_Map->end())
    00290         {
    00291                 m_CurrentObjectId=m_Map->begin()->first;
    00292         }else
    00293         {
    00294                 m_CurrentObjectId=m_Map->upper_bound(m_CurrentObjectId)->first;
    00295         }
    00296         return m_CurrentObjectId;
    00297 UnGuard

ExNihilo::ExId PreviousObject | ( | void |  | ) |

| Définition à la ligne 300 du fichier ExManagerObject.h. Références Guard, m_CurrentObjectId, m_ItMap, et m_Map.
    00302 {
    00303 Guard(ExNihilo::ExId   ExManagerObject<TypeA>::PreviousObject(void))
    00304         if(m_Map->begin()->first==m_CurrentObjectId)
    00305         {
    00306                 m_CurrentObjectId=m_Map->rbegin()->first;
    00307         }else
    00308         {
    00309                 m_ItMap=m_Map->find(m_CurrentObjectId);
    00310                 m_ItMap--;
    00311                 m_CurrentObjectId=m_ItMap->first;
    00312         }
    00313         return m_CurrentObjectId;
    00314 UnGuard

bool Remove | ( | std::string | Name | ) |

| Définition à la ligne 211 du fichier ExManagerObject.h. Références ExManagerId::GetObjectId(), Guard, ManagerId, et Remove().
    00213 {
    00214 Guard(bool  ExManagerObject<TypeA>::Remove(std::string  Name))
    00215         return  Remove(ManagerId->GetObjectId(Name,typeid(&TypeA)));
    00216 UnGuard

bool Remove | ( | ExNihilo::ExId | id | ) |

| Définition à la ligne 202 du fichier ExManagerObject.h. Références Guard, m_CurrentObjectId, et m_Map. Référencé par Remove(), et RemoveCurrentObject().
    00204 {
    00205 Guard(bool  ExManagerObject<TypeA>::Remove(ExNihilo::ExId id))
    00206         if(0==m_Map->erase(id))return false;
    00207         else{if(m_CurrentObjectId==id)m_CurrentObjectId=-1;return true;}
    00208 UnGuard

bool RemoveCurrentObject | ( | void |  | ) |

| Définition à la ligne 219 du fichier ExManagerObject.h. Références Guard, m_CurrentObjectId, et Remove().
    00221 {
    00222 Guard(bool  ExManagerObject<TypeA>::RemoveCurrentObject(void))
    00223         return  Remove(m_CurrentObjectId);
    00224 UnGuard

void Reset | ( | void |  | ) | `[virtual]`

| Redéfinie à partir de ExManager. Redéfinie dans ExManagerCamera, ExManagerFont, ExManagerGizmo, ExManagerInterface, ExManagerLight, ExManagerMenu, ExManagerModel, ExManagerParticuleSystem, ExManagerSound, ExManagerSpirit, et ExManagerTexture. Définition à la ligne 116 du fichier ExManagerObject.h. Références Guard, m_CurrentObjectId, et m_Map. Référencé par ExManagerTexture::Reset(), ExManagerSpirit::Reset(), ExManagerSound::Reset(), ExManagerParticuleSystem::Reset(), ExManagerModel::Reset(), ExManagerMenu::Reset(), ExManagerLight::Reset(), ExManagerInterface::Reset(), ExManagerGizmo::Reset(), et ExManagerCamera::Reset().
    00118 {
    00119 Guard(void  ExManagerObject<TypeA>::Reset(void))
    00120         m_CurrentObjectId=-1;
    00121         m_Map->clear();
    00122 UnGuard

bool SetCurrentObject | ( | std::string | Name | ) |

| Redéfinie dans ExManagerTexture. Définition à la ligne 277 du fichier ExManagerObject.h. Références ExManagerId::GetObjectId(), Guard, m_ItMap, ManagerId, et SetCurrentObject().
    00279 {
    00280 Guard(bool  ExManagerObject<TypeA>::SetCurrentObject(std::string  Name))
    00281         return SetCurrentObject(ManagerId->GetObjectId(Name,typeid(&m_ItMap->second).name()));
    00282 UnGuard

bool SetCurrentObject | ( | ExNihilo::ExId | id | ) |

| Redéfinie dans ExManagerTexture. Définition à la ligne 268 du fichier ExManagerObject.h. Références GetObject(), Guard, et m_CurrentObjectId. Référencé par SetCurrentObject().
    00270 {
    00271 Guard(bool  ExManagerObject<TypeA>::SetCurrentObject(ExNihilo::ExId id))
    00272         if(GetObject(id)!=NULL)m_CurrentObjectId=id;return true;
    00273         return false;
    00274 UnGuard

void SetManagerId | ( | ExManagerId * | Id | ) | `[inline]`

| Définition à la ligne 65 du fichier ExManagerObject.h.
    00066 {ManagerId      = Id;}

## Documentation des données imbriquées

ExNihilo::ExId m_CurrentObjectId`[protected]`

| Définition à la ligne 50 du fichier ExManagerObject.h. Référencé par GetCurrentObject(), Init(), List(), NextObject(), PreviousObject(), Remove(), RemoveCurrentObject(), Reset(), et SetCurrentObject().

std::map< ExNihilo::ExId , TypeA , std::less <ExNihilo::ExId > >::iterator m_ItMap`[protected]`

| Définition à la ligne 47 du fichier ExManagerObject.h. Référencé par GetIterator(), GetObject(), List(), PreviousObject(), et SetCurrentObject().

std::map< ExNihilo::ExId , TypeA , std::less <ExNihilo::ExId > >* m_Map`[protected]`

| Définition à la ligne 46 du fichier ExManagerObject.h. Référencé par Add(), GetIterator(), GetObject(), Init(), List(), NextObject(), PreviousObject(), Remove(), et Reset().

ExManagerId* ManagerId`[protected]`

| Définition à la ligne 49 du fichier ExManagerObject.h. Référencé par Add(), GetIterator(), GetObject(), Remove(), et SetCurrentObject().

La documentation associée à cette classe a été générée à partir du fichier suivant :

- ExManagerObject.h