Public Types | Public Member Functions | Protected Member Functions | Private Attributes | List of all members
dynamicgraph::command::Getter< E, T > Class Template Reference

#include <command-getter.h>

Inheritance diagram for dynamicgraph::command::Getter< E, T >:
Inheritance graph
[legend]

Public Types

typedef T(E::* GetterMethod) () const
 Pointer to method that sets parameter of type T. More...
 

Public Member Functions

 Getter (E &entity, GetterMethod getterMethod, const std::string &docString)
 Constructor. More...
 
- Public Member Functions inherited from dynamicgraph::command::Command
 Command (Entity &entity, const std::vector< Value::Type > &valueTypes, const std::string &docstring)
 
Value execute ()
 Execute the command after checking parameters. More...
 
std::string getDocstring () const
 Get documentation string. More...
 
const std::vector< Value > & getParameterValues () const
 Get parameter values. More...
 
Entityowner ()
 Get a reference to the Entity owning this command. More...
 
void setParameterValues (const std::vector< Value > &values)
 Set parameter values. More...
 
const std::vector< Value::Type > & valueTypes () const
 Return the value type of all parameters. More...
 
virtual ~Command ()
 

Protected Member Functions

virtual Value doExecute ()
 Specific action performed by the command. More...
 

Private Attributes

GetterMethod getterMethod_
 

Additional Inherited Members

- Static Public Attributes inherited from dynamicgraph::command::Command
static const std::vector< Value::TypeEMPTY_ARG = std::vector<Value::Type>()
 

Detailed Description

template<class E, typename T>
class dynamicgraph::command::Getter< E, T >

Command that calls a parameter getter function

This class is templated by a type E deriving from entity and a type T of data.

Let us assume that class E has a private member of type T and a public getter function for this member:

class E : public Entity
{
public:
E (const std::string& inName) : Entity(inName) {}
T getParameter() const {return parameter_;}
private:
T parameter_;
};

Then the command defined by:

E entity("MyEntity");
Getter<E,T> command(entity, &E::getParameter)

returns the value of entity.parameter_ upon invocation.

Note
  • T should be a type supported by class Value,
  • prototype of E::getParameter should be exactly as specified in this example.

Definition at line 45 of file command-getter.h.

Member Typedef Documentation

◆ GetterMethod

template<class E , typename T >
typedef T(E::* dynamicgraph::command::Getter< E, T >::GetterMethod) () const

Pointer to method that sets parameter of type T.

Definition at line 48 of file command-getter.h.

Constructor & Destructor Documentation

◆ Getter()

template<class E , typename T >
dynamicgraph::command::Getter< E, T >::Getter ( E &  entity,
GetterMethod  getterMethod,
const std::string &  docString 
)

Constructor.

Definition at line 19 of file command-getter.t.cpp.

Member Function Documentation

◆ doExecute()

template<class E , typename T >
Value dynamicgraph::command::Getter< E, T >::doExecute ( )
protectedvirtual

Specific action performed by the command.

Implements dynamicgraph::command::Command.

Definition at line 25 of file command-getter.t.cpp.

Member Data Documentation

◆ getterMethod_

template<class E , typename T >
GetterMethod dynamicgraph::command::Getter< E, T >::getterMethod_
private

Definition at line 56 of file command-getter.h.


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


dynamic-graph
Author(s): Nicolas Mansard, Olivier Stasse
autogenerated on Sun Oct 22 2023 02:27:08