Choreonoid  1.8
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
cnoid::MprProgramItemBase Class Reference

#include <MprProgramItemBase.h>

Inheritance diagram for cnoid::MprProgramItemBase:
cnoid::Item cnoid::Referenced

Public Member Functions

virtual ~MprProgramItemBase ()
 
virtual bool setName (const std::string &name) override
 
BodyItemtargetBodyItem ()
 
LinkKinematicsKitkinematicsKit ()
 
MprProgramprogram ()
 
const MprProgramprogram () const
 
bool isStartupProgram () const
 
bool setAsStartupProgram (bool on, bool doNotify=true)
 
bool moveTo (MprPositionStatement *statement)
 
bool moveTo (MprPosition *position)
 
bool superimposePosition (MprPositionStatement *statement)
 
bool superimposePosition (MprPosition *position)
 
void clearSuperimposition ()
 
bool touchupPosition (MprPositionStatement *statement)
 
bool touchupPosition (MprPosition *position)
 
bool resolveStatementReferences (MprStatement *statement)
 
bool resolveAllReferences ()
 
virtual void doPutProperties (PutPropertyFunction &putProperty) override
 
virtual bool store (Archive &archive) override
 
virtual bool restore (const Archive &archive) override
 
- Public Member Functions inherited from cnoid::Item
virtual ~Item ()
 
Itemoperator= (const Item &rhs)=delete
 
int classId () const
 
ItemcreateNewInstance () const
 
void assign (Item *srcItem)
 Copy item properties as much as possible like the assignment operator. More...
 
Itemduplicate (Item *duplicatedParentItem=nullptr) const
 
ItemduplicateSubTree () const
 This function creates a copy of the item including its descendant items. More...
 
ItemduplicateAll () const
 
const std::string & name () const
 
virtual std::string displayName () const
 
void setDisplayNameModifier (std::function< std::string(const Item *item)> modifier)
 
SignalProxy< void(const std::string &oldName)> sigNameChanged ()
 
void notifyNameChange ()
 
void setAttribute (Attribute attribute)
 
void unsetAttribute (Attribute attribute)
 
bool hasAttribute (Attribute attribute) const
 
bool isSubItem () const
 
void setSubItemAttributes ()
 
bool isTemporal () const
 
void setTemporal (bool on=true)
 
bool isSelected () const
 
void setSelected (bool on, bool isCurrent=false)
 
void setSubTreeItemsSelected (bool on)
 
bool isChecked (int checkId=PrimaryCheck) const
 
void setChecked (bool on)
 
void setChecked (int checkId, bool on)
 
int numCheckStates () const
 
int numChildren () const
 
int countDescendantItems () const
 
ItemchildItem () const
 
ItemprevItem () const
 
ItemnextItem () const
 
ItemlastChildItem () const
 
ItemparentItem () const
 
ItemheadItem () const
 
RootItemfindRootItem () const
 
bool isConnectedToRoot () const
 
ItemlocalRootItem () const
 
bool addChildItem (Item *item, bool isManualOperation=false)
 
bool insertChildItem (Item *item, Item *nextItem, bool isManualOperation=false)
 
bool insertChild (Item *position, Item *item, bool isManualOperation=false)
 
bool addSubItem (Item *item)
 
bool insertSubItem (Item *item, Item *nextItem)
 
void removeFromParentItem ()
 
void detachFromParentItem ()
 
void clearChildren ()
 
template<class ItemType >
ItemType * find (const std::string &path="")
 
ItemfindItem (const std::string &path) const
 
template<class ItemType >
ItemType * findItem (const std::string &path) const
 
template<class ItemType >
ItemType * findItem (std::function< bool(ItemType *item)> pred=nullptr) const
 
ItemfindChildItem (const std::string &path, std::function< bool(Item *item)> pred=nullptr) const
 
template<class ItemType >
ItemType * findChildItem (const std::string &path, std::function< bool(ItemType *item)> pred=nullptr) const
 
template<class ItemType >
ItemType * findChildItem (std::function< bool(ItemType *item)> pred=nullptr) const
 
ItemfindSubItem (const std::string &path) const
 
template<class ItemType >
ItemType * findSubItem (const std::string &path="") const
 
template<class ItemType >
ItemType * findOwnerItem (bool includeSelf=false) const
 
bool isOwnedBy (Item *item) const
 
ItemList childItems (std::function< bool(Item *item)> pred=nullptr) const
 
template<class ItemType >
ItemList< ItemType > childItems (std::function< bool(ItemType *item)> pred=nullptr) const
 
ItemList descendantItems (std::function< bool(Item *item)> pred=nullptr) const
 
template<class ItemType >
ItemList< ItemType > descendantItems (std::function< bool(ItemType *item)> pred=nullptr) const
 
ItemList selectedDescendantItems (std::function< bool(Item *item)> pred=nullptr) const
 
template<class ItemType >
ItemList< ItemType > selectedDescendantItems (std::function< bool(Item *item)> pred=nullptr) const
 
bool traverse (std::function< bool(Item *)> pred)
 
template<class ItemType >
bool traverse (std::function< bool(ItemType *item)> pred=nullptr)
 
SignalProxy< void()> sigPositionChanged ()
 
SignalProxy< void(Item *topItem, Item *prevTopParentItem)> sigPositionChanged2 ()
 
SignalProxy< void()> sigSubTreeChanged ()
 
SignalProxy< void()> sigDisconnectedFromRoot ()
 
SignalProxy< void()> sigDetachedFromRoot ()
 
SignalProxy< void(bool on)> sigSelectionChanged ()
 
SignalProxy< void(int checkId, bool on)> sigAnyCheckToggled ()
 
SignalProxy< void(bool on)> sigCheckToggled (int checkId=PrimaryCheck)
 
virtual void notifyUpdate ()
 
SignalProxy< void()> sigUpdated ()
 
bool setAddon (ItemAddon *addon)
 
void removeAddon (ItemAddon *addon)
 
template<class AddonType >
AddonType * findAddon ()
 
template<class AddonType >
AddonType * getAddon ()
 
std::vector< ItemAddon * > addons ()
 
bool load (const std::string &filename, const std::string &format=std::string(), const Mapping *options=nullptr)
 
bool load (const std::string &filename, Item *parent, const std::string &format=std::string(), const Mapping *options=nullptr)
 
bool save (const std::string &filename, const std::string &format=std::string(), const Mapping *options=nullptr)
 
bool overwrite (bool forceOverwrite=false, const std::string &format=std::string())
 
const std::string & filePath () const
 
std::string fileName () const
 
const std::string & fileFormat () const
 
const MappingfileOptions () const
 
std::time_t fileModificationTime () const
 
bool isConsistentWithFile () const
 
void updateFileInformation (const std::string &filename, const std::string &format, Mapping *options=nullptr)
 
void setConsistentWithFile (bool isConsistent)
 
void suggestFileUpdate ()
 
void clearFileInformation ()
 Use this function to disable the implicit overwrite next time. More...
 
bool reload ()
 
bool replace (Item *originalItem)
 
ItemfindOriginalItem () const
 
ItemfindReplacementItem () const
 
void putProperties (PutPropertyFunction &putProperty)
 
- Public Member Functions inherited from cnoid::Referenced
virtual ~Referenced ()
 

Static Public Member Functions

static void initializeClass (ExtensionManager *ext)
 
template<class StatementType >
static void registerReferenceResolver (std::function< bool(StatementType *, MprProgramItemBase *)> resolve)
 
- Static Public Member Functions inherited from cnoid::Item
template<class ItemType >
static ItemPredicate getItemPredicate ()
 
template<class ItemType >
static ItemPredicate getItemPredicate (std::function< bool(ItemType *item)> pred)
 
static Itemfind (const std::string &path)
 

Protected Member Functions

 MprProgramItemBase ()
 
 MprProgramItemBase (const MprProgramItemBase &org)
 
virtual ItemdoDuplicate () const override
 Override this function to allow duplication of an instance. More...
 
virtual void onPositionChanged () override
 
virtual void onConnectedToRoot () override
 
- Protected Member Functions inherited from cnoid::Item
 Item ()
 
 Item (const std::string &name)
 
 Item (const Item &item)
 
virtual void doAssign (Item *srcItem)
 Implement the code to copy properties like the assingment operator. More...
 
virtual ItemdoDuplicate (Item *duplicatedParentItem) const
 
virtual bool onNewPositionCheck (bool isManualOperation, std::function< void()> &out_callbackWhenAdded)
 
virtual void onAddedToParent ()
 
virtual void onRemovedFromParent (Item *parentItem, bool isParentBeingDeleted)
 
virtual void onDisconnectedFromRoot ()
 
virtual bool onChildItemAboutToBeAdded (Item *childItem, bool isManualOperation)
 
- Protected Member Functions inherited from cnoid::Referenced
 Referenced ()
 
 Referenced (const Referenced &)
 
int refCount () const
 

Additional Inherited Members

- Public Types inherited from cnoid::Item
enum  Attribute {
  SubItem, Attached, Temporal, LoadOnly,
  NumAttributes, SUB_ITEM = SubItem, TEMPORAL = Temporal, LOAD_ONLY = LoadOnly
}
 
enum  CheckId { LogicalSumOfAllChecks = -1, PrimaryCheck = 0 }
 
typedef std::function< bool(Item *item)> ItemPredicate
 

Constructor & Destructor Documentation

◆ ~MprProgramItemBase()

MprProgramItemBase::~MprProgramItemBase ( )
virtual

◆ MprProgramItemBase() [1/2]

MprProgramItemBase::MprProgramItemBase ( )
protected

◆ MprProgramItemBase() [2/2]

MprProgramItemBase::MprProgramItemBase ( const MprProgramItemBase org)
protected

Member Function Documentation

◆ clearSuperimposition()

void MprProgramItemBase::clearSuperimposition ( )

◆ doDuplicate()

Item * MprProgramItemBase::doDuplicate ( ) const
overrideprotectedvirtual

Override this function to allow duplication of an instance.

Reimplemented from cnoid::Item.

◆ doPutProperties()

void MprProgramItemBase::doPutProperties ( PutPropertyFunction putProperty)
overridevirtual

Override this function to put properties of the item.

Note
Please call doPutProperties() of the parent class in this function. For example, when your class directly inherits the Item class, call Item::doPutProperties(putProperty).

Reimplemented from cnoid::Item.

◆ initializeClass()

void MprProgramItemBase::initializeClass ( ExtensionManager ext)
static

◆ isStartupProgram()

bool MprProgramItemBase::isStartupProgram ( ) const

◆ kinematicsKit()

LinkKinematicsKit * MprProgramItemBase::kinematicsKit ( )

◆ moveTo() [1/2]

bool MprProgramItemBase::moveTo ( MprPosition position)

◆ moveTo() [2/2]

bool MprProgramItemBase::moveTo ( MprPositionStatement statement)

◆ onConnectedToRoot()

void MprProgramItemBase::onConnectedToRoot ( )
overrideprotectedvirtual

This function is called when the item has been connected to the tree including the root item. Note that the onPositionChanged function is called after this function.

Reimplemented from cnoid::Item.

◆ onPositionChanged()

void MprProgramItemBase::onPositionChanged ( )
overrideprotectedvirtual

This function is called when the item position in the whole item tree is changed. Note that this function is not called when the item is not connected to the root even if the item is newly attached to another item that is not connected to the root. For such items, the function is called for each item when the sub tree is connected to the root.

Reimplemented from cnoid::Item.

◆ program() [1/2]

const MprProgram * MprProgramItemBase::program ( )

◆ program() [2/2]

const MprProgram* cnoid::MprProgramItemBase::program ( ) const

◆ registerReferenceResolver()

template<class StatementType >
static void cnoid::MprProgramItemBase::registerReferenceResolver ( std::function< bool(StatementType *, MprProgramItemBase *)>  resolve)
inlinestatic

◆ resolveAllReferences()

bool MprProgramItemBase::resolveAllReferences ( )

◆ resolveStatementReferences()

bool MprProgramItemBase::resolveStatementReferences ( MprStatement statement)

◆ restore()

bool MprProgramItemBase::restore ( const Archive archive)
overridevirtual

Reimplemented from cnoid::Item.

◆ setAsStartupProgram()

bool MprProgramItemBase::setAsStartupProgram ( bool  on,
bool  doNotify = true 
)

◆ setName()

bool MprProgramItemBase::setName ( const std::string &  name)
overridevirtual

Reimplemented from cnoid::Item.

◆ store()

bool MprProgramItemBase::store ( Archive archive)
overridevirtual

Reimplemented from cnoid::Item.

◆ superimposePosition() [1/2]

bool MprProgramItemBase::superimposePosition ( MprPosition position)

◆ superimposePosition() [2/2]

bool MprProgramItemBase::superimposePosition ( MprPositionStatement statement)

◆ targetBodyItem()

BodyItem * MprProgramItemBase::targetBodyItem ( )

◆ touchupPosition() [1/2]

bool MprProgramItemBase::touchupPosition ( MprPosition position)

◆ touchupPosition() [2/2]

bool MprProgramItemBase::touchupPosition ( MprPositionStatement statement)

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