Field template class for scalar fields. More...
#include <Field.h>
Public Member Functions | |
Field (const std::string &fieldName, const FieldCategory fieldCategory, bool multiplexed, bool multiMultiplexed, bool persistent, DataIntegrity bufferType, DataStore *pDataStore) | |
Constructor. | |
~Field () | |
destructor | |
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. | |
FieldValue< T > * | getFieldValue (int32_t slot) |
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 | copyValue (uint32_t slot, std::string &val) |
this method puts in the slot the value passed by parameter in the corresponding format | |
void | getValueToStore (int32_t slot, std::string &str) |
Protected Attributes | |
FieldValue< T > * | fieldValue_ |
value of the field in the first slot |
Field template class for scalar fields.
Field template class for string arrays.
Field template class for strings.
Field template class for 2D arrays of various numeric types and structure types.
], D>
Definition at line 23 of file Field.h.
fesa::Field< T >::Field | ( | const std::string & | fieldName, | |
const FieldCategory | fieldCategory, | |||
bool | multiplexed, | |||
bool | multiMultiplexed, | |||
bool | persistent, | |||
DataIntegrity | bufferType, | |||
DataStore * | pDataStore | |||
) | [inline] |
fesa::Field< T >::~Field | ( | ) | [inline] |
void fesa::Field< T >::copyValue | ( | uint32_t | slot, | |
std::string & | val | |||
) | [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 135 of file Field.h.
References fesa::FieldValue< T >::activeBuffer(), and fesa::Field< T >::getFieldValue().
FieldValue< T > * fesa::Field< T >::getFieldValue | ( | int32_t | slot | ) | [inline, protected, virtual] |
Implements fesa::AbstractField.
Definition at line 95 of file Field.h.
References fesa::Field< T >::fieldValue_, and fesa::AbstractField::valueSize_.
Referenced by fesa::Field< T >::copyValue(), fesa::SettingFieldStruct< T >::get(), fesa::SettingFieldScalar< T >::get(), fesa::GenericFieldStruct< T >::get(), fesa::GenericFieldScalar< T >::get(), fesa::AcqFieldStruct< T >::get(), fesa::AcqFieldScalar< T >::get(), fesa::SettingFieldStruct< T >::getPending(), fesa::SettingFieldScalar< T >::getPending(), fesa::Field< T >::getValueToStore(), fesa::SettingFieldStruct< T >::set(), fesa::SettingFieldScalar< T >::set(), fesa::GenericFieldStruct< T >::set(), fesa::GenericFieldScalar< T >::set(), fesa::AcqFieldStruct< T >::set(), and fesa::AcqFieldScalar< T >::set().
uint32_t fesa::Field< 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 103 of file Field.h.
References fesa::AbstractField::buffer_, and fesa::AbstractField::valueSize_.
void fesa::Field< T >::getValueToStore | ( | int32_t | slot, | |
std::string & | str | |||
) | [inline, protected, virtual] |
Implements fesa::AbstractField.
Definition at line 148 of file Field.h.
References fesa::FieldValue< T >::activeBuffer(), fesa::Field< T >::getFieldValue(), fesa::FieldValueBase::hasPendingChanged(), fesa::FieldValueBase::isToBeSync(), and fesa::FieldValue< T >::pendingBuffer().
void fesa::Field< 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 111 of file Field.h.
References fesa::AbstractField::buffer_, FesaErrorSettingFieldValueAddress, fesa::Field< T >::fieldValue_, fesa::AbstractMultiplexingManager::getDepth(), fesa::AbstractField::multiplexingManager_, fesa::AbstractField::name_, and fesa::AbstractField::valueSize_.
FieldValue<T>* fesa::Field< T >::fieldValue_ [protected] |
value of the field in the first slot
Definition at line 63 of file Field.h.
Referenced by fesa::ConfigFieldStruct< T >::get(), fesa::ConfigFieldScalar< T >::get(), fesa::Field< T >::getFieldValue(), and fesa::Field< T >::setFieldValueAddress().