fesa::FieldStringArray Class Reference

#include <FieldStringArray.h>

Inheritance diagram for fesa::FieldStringArray:
fesa::AbstractField fesa::AcqFieldStringArray fesa::ConfigFieldStringArray fesa::GenericFieldStringArray fesa::SettingFieldStringArray

List of all members.

Public Member Functions

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

Protected Member Functions

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 initialize (FieldElement &fieldElement)
 used to initialize some parameters of the field from the instance document
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.
FieldValue< char *[]> * 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_
 first dimension of the array
uint32_t maxSize2_
 second dimension of the array. Maximum size of a string
FieldValue< char *[]> * fieldValue_
 value of the field
char **** pointers_
 buffer that contains the pointers to the strings for all slots. the first index contain the slots, the second one the pending or active buffer, and the third one acces to the strings

Detailed Description

Definition at line 18 of file FieldStringArray.h.


Constructor & Destructor Documentation

fesa::FieldStringArray::FieldStringArray ( const std::string &  fieldName,
const FieldCategory  fieldCategory,
bool  multiplexed,
bool  multiMultiplexed,
bool  persistent,
DataIntegrity  bufferType,
DataStore pDataStore,
int32_t  arrayLength,
int32_t  stringLength 
)

Constructor.

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

Definition at line 17 of file FieldStringArray.cpp.

fesa::FieldStringArray::~FieldStringArray (  ) 

Member Function Documentation

void fesa::FieldStringArray::copyValue ( uint32_t  slot,
std::string &  str 
) [protected, virtual]
FieldValue< char *[]> * fesa::FieldStringArray::getFieldValue ( int32_t  slot  )  [protected, virtual]
uint32_t fesa::FieldStringArray::getFieldValueSize (  )  [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 62 of file FieldStringArray.cpp.

References fesa::AbstractField::buffer_, maxSize1_, maxSize2_, and fesa::AbstractField::valueSize_.

void fesa::FieldStringArray::getMaxSize ( uint32_t &  size1,
uint32_t &  size2 
)

retrieve the size of the array

Parameters:
size1 first dimension of the array
size2 second dimension of the array

Definition at line 187 of file FieldStringArray.cpp.

References maxSize1_, and maxSize2_.

uint32_t fesa::FieldStringArray::getSize ( MultiplexingContext context  ) 
void fesa::FieldStringArray::getValueToStore ( int32_t  slot,
std::string &  value 
) [protected, virtual]
void fesa::FieldStringArray::initialize ( FieldElement fieldElement  )  [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 47 of file FieldStringArray.cpp.

References fesa::FieldElement::dimension1_, fesa::FieldElement::dimension2_, maxSize1_, and maxSize2_.

void fesa::FieldStringArray::setFieldValueAddress ( char *  pFV,
bool  initFieldsFlag 
) [protected, virtual]

Maps an address in shared memory or on the heap to the field value member of the field class.

Parameters:
pFV pointer to a field value.

Implements fesa::AbstractField.

Definition at line 73 of file FieldStringArray.cpp.

References fesa::AbstractField::buffer_, fieldValue_, fesa::AbstractMultiplexingManager::getDepth(), maxSize1_, maxSize2_, fesa::AbstractField::multiplexingManager_, and pointers_.


Member Data Documentation

uint32_t fesa::FieldStringArray::maxSize1_ [protected]
uint32_t fesa::FieldStringArray::maxSize2_ [protected]
char**** fesa::FieldStringArray::pointers_ [protected]

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

Generated on 18 Jan 2013 for Fesa by  doxygen 1.6.1