Choreonoid  1.5
Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
cnoid::ControllerItem Class Referenceabstract

#include <ControllerItem.h>

Inheritance diagram for cnoid::ControllerItem:
cnoid::Item cnoid::Referenced cnoid::BodyMotionControllerItem cnoid::BodyRTCItem cnoid::OpenHRPClockGeneratorItem cnoid::OpenHRPControllerItem cnoid::SimpleControllerItem

Public Types

typedef ControllerItemIO Target
 
- Public Types inherited from cnoid::Item
enum  Attribute { SUB_ITEM, TEMPORAL, LOAD_ONLY, NUM_ATTRIBUTES }
 

Public Member Functions

 ControllerItem ()
 
 ControllerItem (const ControllerItem &org)
 
virtual ~ControllerItem ()
 
bool isActive () const
 
bool isImmediateMode () const
 
void setImmediateMode (bool on)
 
const std::string & optionString () const
 
bool splitOptionString (const std::string &optionString, std::vector< std::string > &out_options) const
 
virtual bool initialize (ControllerItemIO *io)
 
virtual bool start ()
 
virtual bool start (ControllerItemIO *io)
 
virtual double timeStep () const =0
 
virtual void input ()=0
 
virtual bool control ()=0
 
virtual void output ()=0
 
virtual void stop ()
 
SignalProxy< void(const std::string &message)> sigMessage ()
 
std::string getMessage ()
 
- Public Member Functions inherited from cnoid::Item
virtual ~Item ()
 
const std::string & name () const
 
virtual void setName (const std::string &name)
 
bool hasAttribute (Attribute attribute) const
 
ItemchildItem () const
 
ItemprevItem () const
 
ItemnextItem () const
 
ItemparentItem () const
 
bool addChildItem (Item *item, bool isManualOperation=false)
 
bool addSubItem (Item *item)
 
bool isSubItem () const
 
void detachFromParentItem ()
 
void emitSigDetachedFromRootForSubTree ()
 
bool insertChildItem (Item *item, Item *nextItem, bool isManualOperation=false)
 
bool insertSubItem (Item *item, Item *nextItem)
 
bool isTemporal () const
 
void setTemporal (bool on=true)
 
RootItemfindRootItem () const
 
ItemfindItem (const std::string &path) const
 
template<class ItemType >
ItemType * findItem (const std::string &path) const
 
template<class ItemType >
ItemType * find (const std::string &path)
 
ItemfindChildItem (const std::string &path) const
 
template<class ItemType >
ItemType * findChildItem (const std::string &path) const
 
ItemfindSubItem (const std::string &path) const
 
template<class ItemType >
ItemType * findSubItem (const std::string &path) const
 
ItemheadItem () const
 
template<class ItemType >
ItemType * findOwnerItem (bool includeSelf=false)
 
bool isOwnedBy (Item *item) const
 
bool traverse (boost::function< bool(Item *)> function)
 
template<class ItemType >
bool traverse (boost::function< bool(ItemType *item)> function)
 
Itemduplicate () const
 
ItemduplicateAll () const
 
void assign (Item *srcItem)
 
bool load (const std::string &filename, const std::string &format=std::string())
 
bool load (const std::string &filename, Item *parent, const std::string &format=std::string())
 
bool save (const std::string &filename, const std::string &format=std::string())
 
bool overwrite (bool forceOverwrite=false, const std::string &format=std::string())
 
const std::string & filePath () const
 
const std::string & fileFormat () const
 
std::time_t fileModificationTime () const
 
bool isConsistentWithFile () const
 
void clearFileInformation ()
 
void suggestFileUpdate ()
 
void putProperties (PutPropertyFunction &putProperty)
 
virtual void notifyUpdate ()
 
SignalProxy< void(const std::string &oldName)> sigNameChanged ()
 
SignalProxy< void()> sigUpdated ()
 
SignalProxy< void()> sigPositionChanged ()
 
SignalProxy< void()> sigDetachedFromRoot ()
 
SignalProxy< void()> sigDisconnectedFromRoot ()
 
SignalProxy< void()> sigSubTreeChanged ()
 
ReferencedcustomData (int id)
 
const ReferencedcustomData (int id) const
 
void setCustomData (int id, ReferencedPtr data)
 
void clearCustomData (int id)
 
- Public Member Functions inherited from cnoid::Referenced
virtual ~Referenced ()
 
void addRef ()
 
void releaseRef ()
 

Protected Member Functions

void putMessage (const std::string &message)
 
virtual void doPutProperties (PutPropertyFunction &putProperty)
 
virtual bool store (Archive &archive)
 
virtual bool restore (const Archive &archive)
 
- Protected Member Functions inherited from cnoid::Item
 Item ()
 
 Item (const Item &item)
 
virtual void onConnectedToRoot ()
 
virtual void onDisconnectedFromRoot ()
 
virtual void onPositionChanged ()
 
virtual bool onChildItemAboutToBeAdded (Item *childItem, bool isManualOperation)
 
virtual ItemdoDuplicate () const
 
virtual void doAssign (Item *srcItem)
 
void setAttribute (Attribute attribute)
 
void unsetAttribute (Attribute attribute)
 
- Protected Member Functions inherited from cnoid::Referenced
 Referenced ()
 
 Referenced (const Referenced &org)
 
int refCount () const
 

Friends

class SimulatorItemImpl
 

Additional Inherited Members

- Static Public Member Functions inherited from cnoid::Item
static Itemfind (const std::string &path)
 
static SignalProxy< void(const char *type_info_name)> sigClassUnregistered ()
 

Member Typedef Documentation

◆ Target

Constructor & Destructor Documentation

◆ ControllerItem() [1/2]

ControllerItem::ControllerItem ( )

◆ ControllerItem() [2/2]

ControllerItem::ControllerItem ( const ControllerItem org)

◆ ~ControllerItem()

ControllerItem::~ControllerItem ( )
virtual

Member Function Documentation

◆ control()

virtual bool cnoid::ControllerItem::control ( )
pure virtual

◆ doPutProperties()

void ControllerItem::doPutProperties ( PutPropertyFunction putProperty)
protectedvirtual

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.

Reimplemented in cnoid::BodyRTCItem, cnoid::OpenHRPControllerItem, cnoid::SimpleControllerItem, cnoid::BodyMotionControllerItem, and cnoid::OpenHRPClockGeneratorItem.

◆ getMessage()

std::string ControllerItem::getMessage ( )

◆ initialize()

bool ControllerItem::initialize ( ControllerItemIO io)
virtual

This function is called before the simulation world is initialized.

Note
If the body() of the target returns a null pointer, a controller is not associated with a particular body. This is for a controller which does some general operations.
This function is called from the main thread.

Reimplemented in cnoid::SimpleControllerItem, and cnoid::BodyMotionControllerItem.

◆ input()

virtual void cnoid::ControllerItem::input ( )
pure virtual

◆ isActive()

bool ControllerItem::isActive ( ) const

◆ isImmediateMode()

bool cnoid::ControllerItem::isImmediateMode ( ) const
inline

◆ optionString()

const std::string& cnoid::ControllerItem::optionString ( ) const
inline

◆ output()

virtual void cnoid::ControllerItem::output ( )
pure virtual

◆ putMessage()

void ControllerItem::putMessage ( const std::string &  message)
protected

◆ restore()

bool ControllerItem::restore ( const Archive archive)
protectedvirtual

◆ setImmediateMode()

void ControllerItem::setImmediateMode ( bool  on)

◆ sigMessage()

SignalProxy< void(const std::string &message)> ControllerItem::sigMessage ( )

◆ splitOptionString()

bool ControllerItem::splitOptionString ( const std::string &  optionString,
std::vector< std::string > &  out_options 
) const

◆ start() [1/2]

bool ControllerItem::start ( )
virtual

This function is called after the simulation world is initialized.

Reimplemented in cnoid::SimpleControllerItem, and cnoid::BodyMotionControllerItem.

◆ start() [2/2]

bool ControllerItem::start ( ControllerItemIO io)
virtual

◆ stop()

void ControllerItem::stop ( )
virtual

◆ store()

bool ControllerItem::store ( Archive archive)
protectedvirtual

◆ timeStep()

virtual double cnoid::ControllerItem::timeStep ( ) const
pure virtual

Friends And Related Function Documentation

◆ SimulatorItemImpl

friend class SimulatorItemImpl
friend

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