fesa::FieldArray2D< T > Class Template Reference

#include <FieldArray2D.h>

Inheritance diagram for fesa::FieldArray2D< T >:
fesa::AbstractField fesa::AcqFieldArray2D< T > fesa::ConfigFieldArray2D< T > fesa::GenericFieldArray2D< T > fesa::SettingFieldArray2D< T > fesa::AcqFieldScalarArray2D< T > fesa::AcqFieldStructArray2D< T > fesa::ConfigFieldScalarArray2D< T > fesa::ConfigFieldStructArray2D< T > fesa::GenericFieldScalarArray2D< T > fesa::GenericFieldStructArray2D< T > fesa::SettingFieldScalarArray2D< T > fesa::SettingFieldStructArray2D< T >

List of all members.

Public Member Functions

 FieldArray2D (const std::string &fieldName, const FieldCategory fieldCategory, bool multiplexed, bool multiMultiplexed, bool persistent, DataIntegrity bufferType, DataStore *pDataStore, int32_t size1, int32_t size2)
 Constructor.
 ~FieldArray2D ()
 destructor
void getMaxSize (uint32_t &size1, uint32_t &size2)
 retrieve the size of the array

Protected Member Functions

void initialize (FieldElement &fieldElement)
 used to initialize some parameters of the field from the instance document
uint32_t getFieldValueSize ()
 Method to get the size of the field-value object. The template of the field-value class depends on the field type.
void setFieldValueAddress (char *pFV, bool initFieldsFlag)
 Maps an address in shared memory or on the heap to the field value member of the field class.
void checkMaxDimensions (uint32_t size1, uint32_t size2)
 this method checks whether the two dimensions passed by parameter are within the max dimensions of the array throwing an exception if they are not

Exceptions:
FesaException in case one of the dimensions is bigger than the dynamic size

FieldValue< T[][1]> * getFieldValue (int32_t slot)
void copyValue (uint32_t slot, std::string &str)
 this method puts in the slot the value passed by parameter in the corresponding format
void getValueToStore (int32_t slot, std::string &value)

Protected Attributes

uint32_t maxSize1_
 maximum size of first dimension of the array
uint32_t maxSize2_
 maximum size of second dimension of the array
FieldValue< T[][1]> * fieldValue_
 value of the field

Detailed Description

template<typename T>
class fesa::FieldArray2D< T >

Definition at line 18 of file FieldArray2D.h.


Constructor & Destructor Documentation

template<typename T >
fesa::FieldArray2D< T >::FieldArray2D ( const std::string &  fieldName,
const FieldCategory  fieldCategory,
bool  multiplexed,
bool  multiMultiplexed,
bool  persistent,
DataIntegrity  bufferType,
DataStore pDataStore,
int32_t  size1,
int32_t  size2 
) [inline]

Constructor.

Parameters:
name of the field, field category, multiplexing criterion, pointer to DataStore

Definition at line 107 of file FieldArray2D.h.

template<typename T >
fesa::FieldArray2D< T >::~FieldArray2D (  )  [inline]

destructor

Definition at line 118 of file FieldArray2D.h.


Member Function Documentation

template<typename T >
void fesa::FieldArray2D< T >::checkMaxDimensions ( uint32_t  size1,
uint32_t  size2 
) [inline, protected]
template<typename T >
void fesa::FieldArray2D< T >::copyValue ( uint32_t  slot,
std::string &  str 
) [inline, protected, virtual]

this method puts in the slot the value passed by parameter in the corresponding format

Parameters:
slot to put the value
val value to put

Implements fesa::AbstractField.

Definition at line 193 of file FieldArray2D.h.

References fesa::FieldValue< T[][1]>::activeBuffer(), fesa::FieldArray2D< T >::checkMaxDimensions(), fesa::StringUtilities::getElements(), fesa::FieldArray2D< T >::getFieldValue(), fesa::FieldArray2D< T >::maxSize1_, fesa::FieldArray2D< T >::maxSize2_, and fesa::StringUtilities::removeBrackets().

template<typename T >
FieldValue< T[][1]> * fesa::FieldArray2D< T >::getFieldValue ( int32_t  slot  )  [inline, protected, virtual]
Returns:
the field value object for the slot passed by parameter

Implements fesa::AbstractField.

Definition at line 122 of file FieldArray2D.h.

References fesa::FieldArray2D< T >::fieldValue_, and fesa::AbstractField::valueSize_.

Referenced by fesa::FieldArray2D< T >::copyValue(), fesa::SettingFieldArray2D< T >::get(), fesa::GenericFieldArray2D< T >::get(), fesa::AcqFieldArray2D< T >::get(), fesa::SettingFieldStructArray2D< T >::getCell(), fesa::SettingFieldScalarArray2D< T >::getCell(), fesa::GenericFieldStructArray2D< T >::getCell(), fesa::GenericFieldScalarArray2D< T >::getCell(), fesa::AcqFieldStructArray2D< T >::getCell(), fesa::AcqFieldScalarArray2D< T >::getCell(), fesa::SettingFieldArray2D< T >::getColumn(), fesa::GenericFieldArray2D< T >::getColumn(), fesa::AcqFieldArray2D< T >::getColumn(), fesa::SettingFieldArray2D< T >::getRow(), fesa::GenericFieldArray2D< T >::getRow(), fesa::AcqFieldArray2D< T >::getRow(), fesa::SettingFieldArray2D< T >::getSize(), fesa::GenericFieldArray2D< T >::getSize(), fesa::AcqFieldArray2D< T >::getSize(), fesa::FieldArray2D< T >::getValueToStore(), fesa::SettingFieldArray2D< T >::set(), fesa::GenericFieldArray2D< T >::set(), fesa::AcqFieldArray2D< T >::set(), fesa::SettingFieldStructArray2D< T >::setCell(), fesa::SettingFieldScalarArray2D< T >::setCell(), fesa::GenericFieldStructArray2D< T >::setCell(), fesa::GenericFieldScalarArray2D< T >::setCell(), fesa::AcqFieldStructArray2D< T >::setCell(), fesa::AcqFieldScalarArray2D< T >::setCell(), fesa::SettingFieldArray2D< T >::setColumn(), fesa::GenericFieldArray2D< T >::setColumn(), fesa::AcqFieldArray2D< T >::setColumn(), fesa::SettingFieldArray2D< T >::setRow(), fesa::GenericFieldArray2D< T >::setRow(), and fesa::AcqFieldArray2D< T >::setRow().

template<typename T >
uint32_t fesa::FieldArray2D< T >::getFieldValueSize (  )  [inline, protected, virtual]

Method to get the size of the field-value object. The template of the field-value class depends on the field type.

Returns:
the size in bytes of the field value object.

Implements fesa::AbstractField.

Definition at line 168 of file FieldArray2D.h.

References fesa::AbstractField::buffer_, fesa::FieldArray2D< T >::maxSize1_, fesa::FieldArray2D< T >::maxSize2_, and fesa::AbstractField::valueSize_.

template<typename T >
void fesa::FieldArray2D< T >::getMaxSize ( uint32_t &  size1,
uint32_t &  size2 
) [inline]

retrieve the size of the array

Parameters:
size1 first dimension of the array (row)
size2 second dimension of the array (column)

Definition at line 283 of file FieldArray2D.h.

References fesa::FieldArray2D< T >::maxSize1_, and fesa::FieldArray2D< T >::maxSize2_.

template<typename T >
void fesa::FieldArray2D< T >::getValueToStore ( int32_t  slot,
std::string &  value 
) [inline, protected, virtual]
template<typename T >
void fesa::FieldArray2D< T >::initialize ( FieldElement fieldElement  )  [inline, protected, virtual]

used to initialize some parameters of the field from the instance document

Parameters:
fieldElement that contains the values for the field

Reimplemented from fesa::AbstractField.

Definition at line 156 of file FieldArray2D.h.

References fesa::FieldElement::dimension1_, fesa::FieldElement::dimension2_, fesa::FieldArray2D< T >::maxSize1_, and fesa::FieldArray2D< T >::maxSize2_.

template<typename T >
void fesa::FieldArray2D< T >::setFieldValueAddress ( char *  pFV,
bool  initFieldsFlag 
) [inline, protected, virtual]

Member Data Documentation

template<typename T >
FieldValue<T[][1]>* fesa::FieldArray2D< T >::fieldValue_ [protected]
template<typename T >
uint32_t fesa::FieldArray2D< T >::maxSize1_ [protected]
template<typename T >
uint32_t fesa::FieldArray2D< T >::maxSize2_ [protected]

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

Generated on 18 Jan 2013 for Fesa by  doxygen 1.6.1