SMTK
@SMTK_VERSION@
Simulation Modeling Tool Kit
|
A base class for custom (i.e. More...
#include <CustomItem.h>
Public Member Functions | |
smtkTypeMacro (CustomItemBase) | |
CustomItemBase (smtk::attribute::Attribute *owningAttribute, int itemPosition) | |
CustomItemBase (smtk::attribute::Item *owningItem, int myPosition, int mySubGroupPosition) | |
virtual const CustomItemBase & | operator>> (nlohmann::json &json) const =0 |
virtual CustomItemBase & | operator<< (const nlohmann::json &json)=0 |
virtual const CustomItemBase & | operator>> (pugi::xml_node &node) const =0 |
virtual CustomItemBase & | operator<< (const pugi::xml_node &node)=0 |
![]() | |
smtkTypeMacroBase (smtk::attribute::Item) | |
std::string | name () const |
std::string | label () const |
virtual Item::Type | type () const =0 |
virtual bool | isRelevant (bool includeCatagories=true, bool includeReadAccess=false, unsigned int readAccessLevel=0) const |
Returns true if the item is relevant. More... | |
virtual void | visitChildren (std::function< void(smtk::attribute::ItemPtr, bool)> visitor, bool activeChildren=true) |
visitChildren Invoke a function on each (or, if findInActiveChildren is true, each active) child item. More... | |
const smtk::attribute::ConstItemDefinitionPtr & | definition () const |
template<typename DefType > | |
std::shared_ptr< const DefType > | definitionAs () const |
smtk::attribute::AttributePtr | attribute () const |
Return the attribute that owns this item. | |
smtk::attribute::ItemPtr | owningItem () const |
int | position () const |
Position is the item's location w/r to the owning item if not null or the owning attribute. More... | |
int | subGroupPosition () const |
bool | isOptional () const |
Returns true if the item is optional. | |
bool | isEnabled () const |
An item is enabled under the following conditions: More... | |
bool | localEnabledState () const |
Return the state of the instance's isEnabled state. | |
void | setIsEnabled (bool isEnabledValue) |
Set the instance's local enabled state. | |
const smtk::attribute::Categories & | categories () const |
return the categories associated with the item (via its Definition) | |
unsigned int | advanceLevel (int mode=0) const |
Get the item 's advance level. More... | |
void | setLocalAdvanceLevel (int mode, unsigned int level) |
unsigned int | localAdvanceLevel (int mode=0) const |
void | unsetLocalAdvanceLevel (int mode=0) |
bool | hasLocalAdvanceLevelInfo (int mode=0) const |
void | setUserData (const std::string &key, smtk::simulation::UserDataPtr value) |
smtk::simulation::UserDataPtr | userData (const std::string &key) const |
void | clearUserData (const std::string &key) |
void | clearAllUserData () |
virtual void | reset () |
virtual bool | rotate (std::size_t fromPosition, std::size_t toPosition) |
Rotate internal data. More... | |
virtual void | detachOwningResource () |
Release the item's dependency on its parent attribute's Resource. | |
void | detachOwningAttribute () |
This should be used only by attributes. | |
void | detachOwningItem () |
This should only be called by the item that owns this one. | |
bool | isValid (bool useActiveCategories=true) const |
tests the validity of an item More... | |
bool | isValid (const std::set< std::string > &categories) const |
tests the validity of an item More... | |
smtk::attribute::ItemPtr | find (const std::string &name, SearchStyle style=RECURSIVE_ACTIVE) |
return a child item that matches name and satisfies the SearchStyle | |
smtk::attribute::ConstItemPtr | find (const std::string &name, SearchStyle style=RECURSIVE_ACTIVE) const |
return a child item that matches name and satisfies the SearchStyle | |
template<typename T > | |
T::Ptr | findAs (const std::string &name, SearchStyle style=RECURSIVE_ACTIVE) |
return a child item that matches name and satisfies the SearchStyle | |
template<typename T > | |
T::ConstPtr | findAs (const std::string &name, SearchStyle style=RECURSIVE_ACTIVE) const |
return a child item that matches name and satisfies the SearchStyle | |
void | setForceRequired (bool val) |
Controls if an item should be forced to be required regardless of its local enable property. More... | |
bool | forceRequired () const |
Controls if an item should be forced to be required regardless of its local enable property. More... | |
virtual Status | assign (const smtk::attribute::ConstItemPtr &sourceItem, const CopyAssignmentOptions &options=CopyAssignmentOptions()) |
virtual Status | assign (const smtk::attribute::ConstItemPtr &sourceItem, const CopyAssignmentOptions &options, smtk::io::Logger &logger) |
void | setIsIgnored (bool val) |
Controls if an item should be ignored. More... | |
bool | isIgnored () const |
Controls if an item should be ignored. More... | |
Additional Inherited Members | |
![]() | |
enum | Type { AttributeRefType, DoubleType, GroupType, IntType, StringType, VoidType, FileType, DirectoryType, ColorType, ModelEntityType, MeshEntityType, DateTimeType, ReferenceType, ResourceType, ComponentType, NUMBER_OF_TYPES } |
using | Status = smtk::common::Status |
![]() | |
static std::string | type2String (Item::Type t) |
static Item::Type | string2Type (const std::string &s) |
![]() | |
Item (Attribute *owningAttribute, int itemPosition) | |
Item (Item *owningItem, int myPosition, int mySubGroupPOsition) | |
virtual bool | setDefinition (smtk::attribute::ConstItemDefinitionPtr def) |
virtual smtk::attribute::ItemPtr | findInternal (const std::string &name, SearchStyle style) |
Internal implementation of the find method. | |
virtual smtk::attribute::ConstItemPtr | findInternal (const std::string &name, SearchStyle style) const |
template<typename T > | |
bool | rotateVector (std::vector< T > &v, std::size_t fromPosition, std::size_t toPosition) |
virtual bool | isValidInternal (bool useCategories, const std::set< std::string > &categories) const =0 |
Internal implementation of calculating the validity of the item. More... | |
![]() | |
Attribute * | m_attribute |
Item * | m_owningItem |
int | m_position |
int | m_subGroupPosition |
bool | m_isEnabled |
bool | m_isIgnored |
smtk::attribute::ConstItemDefinitionPtr | m_definition |
std::map< std::string, smtk::simulation::UserDataPtr > | m_userData |
A base class for custom (i.e.
user-defined) items. This class defines the requisite API for custom items.