OpenSim  OpenSim 3.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
OpenSim::PrescribedController Class Reference

#include <PrescribedController.h>

Inheritance diagram for OpenSim::PrescribedController:
OpenSim::Controller OpenSim::ModelComponent OpenSim::Object

Public Member Functions

 PrescribedController ()
 Default constructor.
 PrescribedController (const PrescribedController &PrescribedController)
 Copy constructor.
virtual ~PrescribedController ()
 Destructor.
PrescribedControlleroperator= (const PrescribedController &PrescribedController)
 Assignment operator.
virtual void computeControls (const SimTK::State &s, SimTK::Vector &controls) const
 Set this class's pointer to the set containing functions of the desired controls to be executed by this Controller.
void prescribeControlForActuator (int index, OpenSim::Function *prescribedFunction)
 Assign a prescribe control function for the desired actuator identified by its index.
void prescribeControlForActuator (const std::string actName, OpenSim::Function *prescribedFunction)
 Assign a prescribe control function for the desired actuator identified by its name.
- Public Member Functions inherited from OpenSim::Controller
 OpenSim_DECLARE_PROPERTY (isDisabled, bool,"Flag (true or false) indicating whether or not the controller is disabled.")
 OpenSim_DECLARE_LIST_PROPERTY (actuator_list, std::string,"The list of model actuators that this controller will control.""The keyword ALL indicates the controller will controll all the acuators in the model")
 Controller ()
 Default constructor.
bool isDisabled () const
 Get whether or not this controller is disabled.
void setDisabled (bool disableFlag)
 Disable this controller.
void setActuators (const Set< Actuator > &actuators)
 replace the current set of actuators with the provided set
void addActuator (const Actuator &actuator)
 add to the current set of actuators
const Set< Actuator > & getActuatorSet () const
 get a const reference to the current set of actuators
Set< Actuator > & updActuators ()
 get a writable reference to the set of actuators for this controller

Protected Member Functions

virtual void setupProperties ()
 Connect properties to local pointers.
void copyData (const PrescribedController &aController)
 Copy the member variables of the specified controller.
- Protected Member Functions inherited from OpenSim::Controller
void connectToModel (Model &model) override
 Model component interface that permits the controller to be "wired" up to its actuators.
void addToSystem (SimTK::MultibodySystem &system) const override
 Model component interface that creates underlying computational components in the SimTK::MultibodySystem.

Protected Attributes

PropertyObj _prescribedControlFunctionsProp
FunctionSet_prescribedControlFunctions

Additional Inherited Members

- Static Public Member Functions inherited from OpenSim::Object
static void registerType (const Object &defaultObject)
 
Register an instance of a class; if the class is already registered it

will be replaced.

static void renameType (const std::string &oldTypeName, const std::string &newTypeName)
 
Support versioning by associating the current %Object type with an 

old name.

static const ObjectgetDefaultInstanceOfType (const std::string &concreteClassName)
 
Return a pointer to the default instance of the registered (concrete)

Object whose class name is given, or NULL if the type is not registered.

template<class T >
static bool isObjectTypeDerivedFrom (const std::string &concreteClassName)
 
Return true if the given concrete object type represents a subclass of 

the template object type T, and thus could be referenced with a T*.

static ObjectnewInstanceOfType (const std::string &concreteClassName)
 
Create a new instance of the concrete %Object type whose class name is 

given as concreteClassName.

static void getRegisteredTypenames (Array< std::string > &typeNames)
 Retrieve all the typenames registered so far.
template<class T >
static void getRegisteredObjectsOfGivenType (ArrayPtrs< T > &rArray)
 
Return an array of pointers to the default instances of all registered

(concrete) Object types that derive from a given Object-derived type that does not have to be concrete.

static void PrintPropertyInfo (std::ostream &os, const std::string &classNameDotPropertyName)
 
Dump formatted property information to a given output stream, useful

for creating a "help" facility for registered objects.

static void PrintPropertyInfo (std::ostream &os, const std::string &className, const std::string &propertyName)
 
Same as the other signature but the class name and property name are

provided as two separate strings.

static ObjectmakeObjectFromFile (const std::string &fileName)
 
Create an %OpenSim object whose type is based on the tag at the root 

node of the XML file passed in.

static const std::string & getClassName ()
 Return the name of this class as a string; i.e., "Object".
static void setSerializeAllDefaults (bool shouldSerializeDefaults)
 
Static function to control whether all registered objects and

their properties are written to the defaults section of output files rather than only those values for which the default was explicitly overwritten when read in from an input file or set programmatically.

static bool getSerializeAllDefaults ()
 Report the value of the "serialize all defaults" flag.
static bool isKindOf (const char *type)
 
Returns true if the passed-in string is "Object"; each %Object-derived

class defines a method of this name for its own class name.

static void setDebugLevel (int newLevel)
 Set the debug level to get verbose output.
static int getDebugLevel ()
 Get current setting of debug level.
static ObjectSafeCopy (const Object *aObject)
 
Use the clone() method to duplicate the given object unless the pointer

is null in which case null is returned.

static void RegisterType (const Object &defaultObject)
 OBSOLETE alternate name for registerType().
static void RenameType (const std::string &oldName, const std::string &newName)
 OBSOLETE alternate name for renameType().
- Public Attributes inherited from OpenSim::Controller
int _numControls
 number of controls this controller computes
- Static Public Attributes inherited from OpenSim::Object
static const std::string DEFAULT_NAME
 Name used for default objects when they are serialized.
- Friends inherited from OpenSim::Controller

Constructor & Destructor Documentation

OpenSim::PrescribedController::PrescribedController ( )

Default constructor.

OpenSim::PrescribedController::PrescribedController ( const PrescribedController PrescribedController)

Copy constructor.

Parameters
aControllerThe controller to be copied.
virtual OpenSim::PrescribedController::~PrescribedController ( )
virtual

Destructor.

This method should be a member of any subclass of the Controller class. It will be called automatically whenever an instance of the subclass is deleted from memory.

Member Function Documentation

virtual void OpenSim::PrescribedController::computeControls ( const SimTK::State &  s,
SimTK::Vector &  controls 
) const
virtual

Set this class's pointer to the set containing functions of the desired controls to be executed by this Controller.

Parameters
functionsPointer to a Set of Functions- one per actuator Compute the control values for all actuators under the control of this Controller
ssystem state
modelcontrols

Implements OpenSim::Controller.

void OpenSim::PrescribedController::copyData ( const PrescribedController aController)
protected

Copy the member variables of the specified controller.

This method is called by the copy constructor of the Controller class.

Parameters
aControllerThe controller whose data is to be copied.
PrescribedController& OpenSim::PrescribedController::operator= ( const PrescribedController PrescribedController)

Assignment operator.

Parameters
aControllerThe controller to be copied.
Returns
Reference to the altered object.
void OpenSim::PrescribedController::prescribeControlForActuator ( int  index,
OpenSim::Function prescribedFunction 
)

Assign a prescribe control function for the desired actuator identified by its index.

Parameters
index,theactuator's index in the controller's actuator set
prescribedFunction,theactuator's control function
void OpenSim::PrescribedController::prescribeControlForActuator ( const std::string  actName,
OpenSim::Function prescribedFunction 
)

Assign a prescribe control function for the desired actuator identified by its name.

Parameters
name,theactuator's name to be found in the controller's actuator set
prescribedFunction,theactuator's control function
virtual void OpenSim::PrescribedController::setupProperties ( )
protectedvirtual

Connect properties to local pointers.

Reimplemented from OpenSim::Object.

Member Data Documentation

FunctionSet& OpenSim::PrescribedController::_prescribedControlFunctions
protected
PropertyObj OpenSim::PrescribedController::_prescribedControlFunctionsProp
protected

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