GlsMenu
|
#include <gls_menu_data_group.h>
Public Member Functions | |
GlsMenuDynDataGroup (const std::string &name, bool uniqueKeys=true) | |
virtual | ~GlsMenuDynDataGroup () |
virtual std::istream & | ReadValue (std::istream &instr) |
const GlsMenuDictionary & | Attributes () const |
virtual std::ostream & | WriteValue (std::ostream &outstr) |
virtual void | Inc (long amount=1) |
Protected Member Functions | |
virtual GlsMenuData * | CreateDataItem (const std::string &name) const =0 |
Protected Attributes | |
bool | _uniqueKeys |
Specifies whether attribute names should be unique or not. More... | |
GlsMenuDictionary | _attr |
The dictionary of attributes for the group attribute. More... | |
The GlsMenuDynDataGroup is the base class for groups of data that can be created dynamically at ReadValue time. If the data does NOT already exist, it will be created and added to the attribute group dictionary, otherwise its value will be updated. The class supports either unique or multiple keys. Derived classes must override the CreateDataItem method that will instantiate a concrete data item.
Definition at line 125 of file gls_menu_data_group.h.
GlsMenuDynDataGroup::GlsMenuDynDataGroup | ( | const std::string & | name, |
bool | uniqueKeys = true |
||
) |
Class constructor.
name | the name of the group of data items. |
uniqueKeys | whether or not unique keys are required in the group. |
|
virtual |
Class destructor.
|
inlineinherited |
Read attribute dictionary from an input stream.
instr | input stream to read value from. |
Definition at line 80 of file gls_menu_data_group.h.
References GlsMenuDataGroup::_attr.
Referenced by GlsMFDMenu_T< MenuItem_t, Submenu_t, PageId_t >::ReadValue().
|
protectedpure virtual |
Create a new instance of our particular data item type using name.
name | name of the data item. |
Implemented in GlsMenuHandlerGroup_T< T >, GlsMenuHandlerGroup_T< State_t >, GlsMenuHandlerGroup_T< GlsMenuTimer >, GlsMenuHandlerGroup_T< Menu_t >, and GlsMenuDataGroup_T< T >.
|
virtualinherited |
Increment the data item. Derived classes must override this as the default is a no-op.
Reimplemented in GlsMenuDiscrete_T< T >.
Referenced by GlsMenuSet_T< MenuType_t, DataFactory_t >::IncData().
|
virtual |
Read attribute dictionary from an input stream.
instr | input stream to read value from. |
Reimplemented from GlsMenuDataGroup.
|
virtualinherited |
Read attribute dictionary from an input stream.
instr | input stream to read value from. |
|
protectedinherited |
The dictionary of attributes for the group attribute.
Definition at line 103 of file gls_menu_data_group.h.
Referenced by GlsMenuDataGroup::Attributes(), GlsMenu_T< MenuItem_t, GlsMFD::MenuItemId_t >::GlsMenu_T(), GlsMFDMenu_T< MenuItem_t, Submenu_t, PageId_t >::GlsMFDMenu_T(), GlsMFDSubmenu_T< MenuItemId_t >::GlsMFDSubmenu_T(), GlsMenuDataGroup_T< T >::Item(), GlsMenuHandlerGroup_T< Menu_t >::Item(), GlsMFDMenu_T< MenuItem_t, Submenu_t, PageId_t >::ReadValue(), and GlsMenuItem_T< State_t >::State().
|
protected |
Specifies whether attribute names should be unique or not.
Definition at line 157 of file gls_menu_data_group.h.