#include <FieldArray2D.h>
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
| ||||
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 |
Definition at line 18 of file FieldArray2D.h.
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.
name | of the field, field category, multiplexing criterion, pointer to DataStore |
Definition at line 107 of file FieldArray2D.h.
fesa::FieldArray2D< T >::~FieldArray2D | ( | ) | [inline] |
destructor
Definition at line 118 of file FieldArray2D.h.
void fesa::FieldArray2D< T >::checkMaxDimensions | ( | uint32_t | size1, | |
uint32_t | size2 | |||
) | [inline, protected] |
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
FesaException | in case one of the dimensions is bigger than the dynamic size |
Definition at line 178 of file FieldArray2D.h.
References FesaErrorFieldMaxDimensionsOutOfBound, fesa::FieldArray2D< T >::maxSize1_, fesa::FieldArray2D< T >::maxSize2_, fesa::AbstractField::name_, and fesa::StringUtilities::toString().
Referenced by fesa::FieldArray2D< T >::copyValue(), 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().
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
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().
FieldValue< T[][1]> * fesa::FieldArray2D< T >::getFieldValue | ( | int32_t | slot | ) | [inline, protected, virtual] |
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().
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.
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_.
void fesa::FieldArray2D< T >::getMaxSize | ( | uint32_t & | size1, | |
uint32_t & | size2 | |||
) | [inline] |
retrieve the size of the array
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_.
void fesa::FieldArray2D< T >::getValueToStore | ( | int32_t | slot, | |
std::string & | value | |||
) | [inline, protected, virtual] |
Implements fesa::AbstractField.
Definition at line 248 of file FieldArray2D.h.
References fesa::FieldValue< T[][1]>::activeBuffer(), fesa::FieldArray2D< T >::getFieldValue(), fesa::FieldValueBase::isToBeSync(), and fesa::FieldValue< T[][1]>::pendingBuffer().
void fesa::FieldArray2D< T >::initialize | ( | FieldElement & | fieldElement | ) | [inline, protected, virtual] |
used to initialize some parameters of the field from the instance document
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_.
void fesa::FieldArray2D< T >::setFieldValueAddress | ( | char * | pFV, | |
bool | initFieldsFlag | |||
) | [inline, protected, virtual] |
Maps an address in shared memory or on the heap to the field value member of the field class.
pFV | pointer to a field value. |
Implements fesa::AbstractField.
Definition at line 131 of file FieldArray2D.h.
References fesa::AbstractField::buffer_, FesaErrorSettingFieldValueAddress, fesa::FieldArray2D< T >::fieldValue_, fesa::AbstractMultiplexingManager::getDepth(), fesa::FieldArray2D< T >::maxSize1_, fesa::FieldArray2D< T >::maxSize2_, fesa::AbstractField::multiplexingManager_, fesa::AbstractField::name_, and fesa::AbstractField::valueSize_.
FieldValue<T[][1]>* fesa::FieldArray2D< T >::fieldValue_ [protected] |
value of the field
Definition at line 102 of file FieldArray2D.h.
Referenced by fesa::ConfigFieldArray2D< T >::get(), fesa::ConfigFieldStructArray2D< T >::getCell(), fesa::ConfigFieldScalarArray2D< T >::getCell(), fesa::ConfigFieldArray2D< T >::getColumn(), fesa::FieldArray2D< T >::getFieldValue(), fesa::ConfigFieldArray2D< T >::getRow(), fesa::ConfigFieldArray2D< T >::getSize(), and fesa::FieldArray2D< T >::setFieldValueAddress().
uint32_t fesa::FieldArray2D< T >::maxSize1_ [protected] |
maximum size of first dimension of the array
Definition at line 92 of file FieldArray2D.h.
Referenced by fesa::FieldArray2D< T >::checkMaxDimensions(), fesa::FieldArray2D< T >::copyValue(), fesa::FieldArray2D< T >::getFieldValueSize(), fesa::FieldArray2D< T >::getMaxSize(), fesa::FieldArray2D< T >::initialize(), and fesa::FieldArray2D< T >::setFieldValueAddress().
uint32_t fesa::FieldArray2D< T >::maxSize2_ [protected] |
maximum size of second dimension of the array
Definition at line 97 of file FieldArray2D.h.
Referenced by fesa::FieldArray2D< T >::checkMaxDimensions(), fesa::FieldArray2D< T >::copyValue(), fesa::FieldArray2D< T >::getFieldValueSize(), fesa::FieldArray2D< T >::getMaxSize(), fesa::FieldArray2D< T >::initialize(), and fesa::FieldArray2D< T >::setFieldValueAddress().