CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CArrayHandler.h
Go to the documentation of this file.
1 #ifndef INCLUDE_ORA_CARRAYHANDLER_H
2 #define INCLUDE_ORA_CARRAYHANDLER_H
3 
4 #include "IArrayHandler.h"
5 // externals
6 #include "Reflex/Reflex.h"
7 
8 namespace ora {
9 
11  public:
13  CArrayIteratorHandler( const void* startAddress, const Reflex::Type& iteratorReturnType );
14 
17 
19  void increment();
20 
22  void* object();
23 
26 
27  private:
28 
31 
33  const void* m_currentElement;
34  };
35 
36 
37  class CArrayHandler : virtual public IArrayHandler {
38 
39  public:
41  explicit CArrayHandler( const Reflex::Type& dictionary );
42 
45 
47  size_t size( const void* address );
48 
50  IArrayIteratorHandler* iterate( const void* address );
51 
53  void appendNewElement( void* address, void* data );
54 
56  void clear( const void* address );
57 
60 
62  bool isAssociative() const { return false; }
63 
64  private:
67 
70 
71  };
72 
73 }
74 
75 #endif
void increment()
Increments itself.
~CArrayHandler()
Destructor.
Reflex::Type & returnType()
Returns the return type of the iterator dereference method.
IArrayIteratorHandler * iterate(const void *address)
Returns an initialized iterator.
void clear(const void *address)
Clear the content of the container.
const void * m_currentElement
Current element object pointer.
Definition: CArrayHandler.h:33
void * object()
Returns the current object.
void appendNewElement(void *address, void *data)
Appends a new element and returns its address of the object reference.
Reflex::Type m_returnType
The return type of the iterator dereference method.
Definition: CArrayHandler.h:30
~CArrayIteratorHandler()
Destructor.
size_t size(const void *address)
Returns the size of the container.
Reflex::Type & iteratorReturnType()
Returns the iterator return type.
CArrayHandler(const Reflex::Type &dictionary)
Constructor.
Reflex::Type m_type
The dictionary information.
Definition: CArrayHandler.h:66
Reflex::Type m_elementType
The iterator return type.
Definition: CArrayHandler.h:69
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
CArrayIteratorHandler(const void *startAddress, const Reflex::Type &iteratorReturnType)
Constructor.
Definition: CArrayHandler.cc:6
bool isAssociative() const
Returns the associativeness of the container.
Definition: CArrayHandler.h:62