OpenClonk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros
StdMeshInstance::SerializableValueProvider::IDBase Struct Reference

#include <StdMesh.h>

Inheritance diagram for StdMeshInstance::SerializableValueProvider::IDBase:
[legend]
Collaboration diagram for StdMeshInstance::SerializableValueProvider::IDBase:
[legend]

Public Types

typedef
SerializableValueProvider *(* 
NewFunc )()
 

Public Attributes

const char * name
 
const std::type_info & type
 
NewFunc newfunc
 

Protected Member Functions

 IDBase (const char *name, const std::type_info &type, NewFunc newfunc)
 
virtual ~IDBase ()
 

Detailed Description

Definition at line 427 of file StdMesh.h.

Member Typedef Documentation

typedef SerializableValueProvider*(* StdMeshInstance::SerializableValueProvider::IDBase::NewFunc)()

Definition at line 429 of file StdMesh.h.

Constructor & Destructor Documentation

StdMeshInstance::SerializableValueProvider::IDBase::IDBase ( const char *  name,
const std::type_info &  type,
NewFunc  newfunc 
)
inlineprotected

Definition at line 431 of file StdMesh.h.

431  :
433  {
434  if(!IDs) IDs = new std::vector<IDBase*>;
435  IDs->push_back(this);
436  }
virtual StdMeshInstance::SerializableValueProvider::IDBase::~IDBase ( )
inlineprotectedvirtual

Definition at line 438 of file StdMesh.h.

439  {
440  assert(IDs);
441  IDs->erase(std::find(IDs->begin(), IDs->end(), this));
442  if (!IDs->size()) { delete IDs; IDs = nullptr; }
443  }

Member Data Documentation

const char* StdMeshInstance::SerializableValueProvider::IDBase::name

Definition at line 446 of file StdMesh.h.

NewFunc StdMeshInstance::SerializableValueProvider::IDBase::newfunc

Definition at line 448 of file StdMesh.h.

Referenced by CompileNewFuncCtx().

const std::type_info& StdMeshInstance::SerializableValueProvider::IDBase::type

Definition at line 447 of file StdMesh.h.


The documentation for this struct was generated from the following file: