Class Index | Cross Index | Namespace Index |
The base class for all containers.
Contained in: FrameCPP::Version_3_4_5
Derived from:
none
Derived by:
FrameCPP::Version_3_4_5::Container
#include "../../../../../lib/framecpp/src/Version3_4_5/containerbase.hh"
public function member index: |
|||
virtual | ~ContainerBase | (); | Destructor |
virtual Base* | operator [] | (unsigned int index); | Container indexing. |
virtual const Base* | operator [] | (unsigned int index) const; | Container indexing. |
virtual unsigned int | size | () const; | Get container size. |
Most of the LIGO Frame components are containers which contain other frame components. For example, the RawData object is a container for AdcData, SerData, log messages, and other information. In a frame file, these containers are implemented as linked-lists. However, in the FrameCPP library these are implemented by a container class, "Container". This class standardizes the interface and maximizes code re-use.
ContainerBase is the base class for these container objects. The container classes themselves are templates, so this class allows the user to perform queries on the containers which do not require knowledge of the template type (the template type specifies what Frame class is stored in the container).
The methods defined are (they are all pure virtual):
The destructor is also declared virtual so that the container can be
destructed with only a pointer to the ContainerBase parent.
Exceptions:
Exception | Description |
range_error |
Exceptions:
Exception | Description |
range_error |
Exceptions:
Exception | Description |
None. |