cisst-saw
Loading...
Searching...
No Matches
mtsGenericObjectProxyBase< _elementType > Class Template Referenceabstract

#include <mtsGenericObjectProxy.h>

Inheritance diagram for mtsGenericObjectProxyBase< _elementType >:
mtsGenericObject cmnGenericObject mtsGenericObjectProxy< mtsComponentState > mtsGenericObjectProxy< mtsExecutionResult > mtsGenericObjectProxy< mtsCommandVoidDescription > mtsGenericObjectProxy< mtsCommandWriteDescription > mtsGenericObjectProxy< mtsCommandReadDescription > mtsGenericObjectProxy< mtsCommandQualifiedReadDescription > mtsGenericObjectProxy< mtsCommandVoidReturnDescription > mtsGenericObjectProxy< mtsCommandWriteReturnDescription > mtsGenericObjectProxy< mtsEventVoidDescription > mtsGenericObjectProxy< mtsEventWriteDescription > mtsGenericObjectProxy< mtsInterfaceProvidedDescription > mtsGenericObjectProxy< mtsInterfaceRequiredDescription > mtsGenericObjectProxy< mtsDescriptionComponent > mtsGenericObjectProxy< mtsDescriptionComponentClass > mtsGenericObjectProxy< mtsDescriptionComponentVec > mtsGenericObjectProxy< mtsDescriptionComponentClassVec > mtsGenericObjectProxy< mtsDescriptionInterface > mtsGenericObjectProxy< mtsDescriptionInterfaceFullName > mtsGenericObjectProxy< mtsDescriptionInterfaceFull > mtsGenericObjectProxy< mtsDescriptionInterfaceFullNameVec > mtsGenericObjectProxy< mtsDescriptionConnection > mtsGenericObjectProxy< mtsDescriptionConnectionVec > mtsGenericObjectProxy< mtsComponentStatusControl > mtsGenericObjectProxy< mtsComponentStateChange > mtsGenericObjectProxy< mtsDescriptionLoadLibrary > mtsGenericObjectProxy< mtsEndUserInterfaceArg > mtsGenericObjectProxy< mtsMessage > mtsGenericObjectProxy< mtsComponentConstructorArg > mtsGenericObjectProxy< mtsTaskConstructorArg > mtsGenericObjectProxy< mtsTaskContinuousConstructorArg > mtsGenericObjectProxy< mtsTaskPeriodicConstructorArg > mtsGenericObjectProxy< double > mtsGenericObjectProxy< float > mtsGenericObjectProxy< long > mtsGenericObjectProxy< long long > mtsGenericObjectProxy< unsigned long > mtsGenericObjectProxy< int > mtsGenericObjectProxy< unsigned int > mtsGenericObjectProxy< short > mtsGenericObjectProxy< unsigned short > mtsGenericObjectProxy< char > mtsGenericObjectProxy< unsigned char > mtsGenericObjectProxy< bool > mtsGenericObjectProxy< size_t > mtsGenericObjectProxy< std::string > mtsGenericObjectProxy< stdStringVec > mtsGenericObjectProxy< stdDoubleVec > mtsGenericObjectProxy< stdCharVec > mtsGenericObjectProxy< stdVct3Vec > mtsGenericObjectProxy< stdStringList > mtsGenericObjectProxy< cmnJointType > mtsGenericObjectProxy< vct1 > mtsGenericObjectProxy< vct2 > mtsGenericObjectProxy< vct3 > mtsGenericObjectProxy< vct4 > mtsGenericObjectProxy< vct5 > mtsGenericObjectProxy< vct6 > mtsGenericObjectProxy< vct7 > mtsGenericObjectProxy< vct8 > mtsGenericObjectProxy< vct9 > mtsGenericObjectProxy< vctFloat1 > mtsGenericObjectProxy< vctFloat2 > mtsGenericObjectProxy< vctFloat3 > mtsGenericObjectProxy< vctFloat4 > mtsGenericObjectProxy< vctFloat5 > mtsGenericObjectProxy< vctFloat6 > mtsGenericObjectProxy< vctFloat7 > mtsGenericObjectProxy< vctFloat8 > mtsGenericObjectProxy< vctFloat9 > mtsGenericObjectProxy< vctLong1 > mtsGenericObjectProxy< vctLong2 > mtsGenericObjectProxy< vctLong3 > mtsGenericObjectProxy< vctLong4 > mtsGenericObjectProxy< vctLong5 > mtsGenericObjectProxy< vctLong6 > mtsGenericObjectProxy< vctLong7 > mtsGenericObjectProxy< vctLong8 > mtsGenericObjectProxy< vctLong9 > mtsGenericObjectProxy< vctULong1 > mtsGenericObjectProxy< vctULong2 > mtsGenericObjectProxy< vctULong3 > mtsGenericObjectProxy< vctULong4 > mtsGenericObjectProxy< vctULong5 > mtsGenericObjectProxy< vctULong6 > mtsGenericObjectProxy< vctULong7 > mtsGenericObjectProxy< vctULong8 > mtsGenericObjectProxy< vctULong9 > mtsGenericObjectProxy< vctInt1 > mtsGenericObjectProxy< vctInt2 > mtsGenericObjectProxy< vctInt3 > mtsGenericObjectProxy< vctInt4 > mtsGenericObjectProxy< vctInt5 > mtsGenericObjectProxy< vctInt6 > mtsGenericObjectProxy< vctInt7 > mtsGenericObjectProxy< vctInt8 > mtsGenericObjectProxy< vctInt9 > mtsGenericObjectProxy< vctUInt1 > mtsGenericObjectProxy< vctUInt2 > mtsGenericObjectProxy< vctUInt3 > mtsGenericObjectProxy< vctUInt4 > mtsGenericObjectProxy< vctUInt5 > mtsGenericObjectProxy< vctUInt6 > mtsGenericObjectProxy< vctUInt7 > mtsGenericObjectProxy< vctUInt8 > mtsGenericObjectProxy< vctUInt9 > mtsGenericObjectProxy< vctShort1 > mtsGenericObjectProxy< vctShort2 > mtsGenericObjectProxy< vctShort3 > mtsGenericObjectProxy< vctShort4 > mtsGenericObjectProxy< vctShort5 > mtsGenericObjectProxy< vctShort6 > mtsGenericObjectProxy< vctShort7 > mtsGenericObjectProxy< vctShort8 > mtsGenericObjectProxy< vctShort9 > mtsGenericObjectProxy< vctUShort1 > mtsGenericObjectProxy< vctUShort2 > mtsGenericObjectProxy< vctUShort3 > mtsGenericObjectProxy< vctUShort4 > mtsGenericObjectProxy< vctUShort5 > mtsGenericObjectProxy< vctUShort6 > mtsGenericObjectProxy< vctUShort7 > mtsGenericObjectProxy< vctUShort8 > mtsGenericObjectProxy< vctUShort9 > mtsGenericObjectProxy< vctChar1 > mtsGenericObjectProxy< vctChar2 > mtsGenericObjectProxy< vctChar3 > mtsGenericObjectProxy< vctChar4 > mtsGenericObjectProxy< vctChar5 > mtsGenericObjectProxy< vctChar6 > mtsGenericObjectProxy< vctChar7 > mtsGenericObjectProxy< vctChar8 > mtsGenericObjectProxy< vctChar9 > mtsGenericObjectProxy< vctUChar1 > mtsGenericObjectProxy< vctUChar2 > mtsGenericObjectProxy< vctUChar3 > mtsGenericObjectProxy< vctUChar4 > mtsGenericObjectProxy< vctUChar5 > mtsGenericObjectProxy< vctUChar6 > mtsGenericObjectProxy< vctUChar7 > mtsGenericObjectProxy< vctUChar8 > mtsGenericObjectProxy< vctUChar9 > mtsGenericObjectProxy< vctBool1 > mtsGenericObjectProxy< vctBool2 > mtsGenericObjectProxy< vctBool3 > mtsGenericObjectProxy< vctBool4 > mtsGenericObjectProxy< vctBool5 > mtsGenericObjectProxy< vctBool6 > mtsGenericObjectProxy< vctBool7 > mtsGenericObjectProxy< vctBool8 > mtsGenericObjectProxy< vctBool9 > mtsGenericObjectProxy< vct2x2 > mtsGenericObjectProxy< vct3x3 > mtsGenericObjectProxy< vct4x4 > mtsGenericObjectProxy< vctMatRot3 > mtsGenericObjectProxy< vctFrm3 > mtsGenericObjectProxy< vctFrm4x4 > mtsGenericObjectProxy< vctDoubleVec > mtsGenericObjectProxy< vctFloatVec > mtsGenericObjectProxy< vctIntVec > mtsGenericObjectProxy< vctUIntVec > mtsGenericObjectProxy< vctCharVec > mtsGenericObjectProxy< vctUCharVec > mtsGenericObjectProxy< vctBoolVec > mtsGenericObjectProxy< vctShortVec > mtsGenericObjectProxy< vctUShortVec > mtsGenericObjectProxy< vctLongVec > mtsGenericObjectProxy< vctULongVec > mtsGenericObjectProxy< vctDoubleMat > mtsGenericObjectProxy< vctFloatMat > mtsGenericObjectProxy< vctIntMat > mtsGenericObjectProxy< prmActuatorJointCoupling > mtsGenericObjectProxy< prmBaseFrame > mtsGenericObjectProxy< prmCameraInfo > mtsGenericObjectProxy< prmCartesianImpedanceHalfPlaneGains > mtsGenericObjectProxy< prmCartesianImpedance > mtsGenericObjectProxy< prmConfigurationJoint > mtsGenericObjectProxy< prmDepthMap > mtsGenericObjectProxy< prmForceTorqueJointSet > mtsGenericObjectProxy< prmForwardKinematicsRequest > mtsGenericObjectProxy< prmForwardKinematicsResponse > mtsGenericObjectProxy< prmImageFrame > mtsGenericObjectProxy< prmIMUSensors > mtsGenericObjectProxy< prmInputData > mtsGenericObjectProxy< prmInverseKinematicsRequest > mtsGenericObjectProxy< prmInverseKinematicsResponse > mtsGenericObjectProxy< prmKeyValue > mtsGenericObjectProxy< prmOperatingState > mtsGenericObjectProxy< prmPositionCartesianArrayGet > mtsGenericObjectProxy< prmPositionCartesianGet > mtsGenericObjectProxy< prmPositionCartesianSet > mtsGenericObjectProxy< prmPositionJointGet > mtsGenericObjectProxy< prmPositionJointSet > mtsGenericObjectProxy< prmServoCartesian > mtsGenericObjectProxy< prmServoJoint > mtsGenericObjectProxy< prmStateCartesian > mtsGenericObjectProxy< prmStateJoint > mtsGenericObjectProxy< prmVelocityCartesianGet > mtsGenericObjectProxy< _elementType > mtsGenericObjectProxyRef< _elementType >

Public Types

enum  { HAS_DYNAMIC_CREATION = true }
enum  { InitialLoD = CMN_LOG_ALLOW_DEFAULT }
typedef mtsGenericObjectProxyBase< _elementType > ThisType
typedef mtsGenericObject BaseType
typedef mtsGenericObjectProxy< _elementType > DeRefType
typedef mtsGenericObjectProxyRef< _elementType > RefType
typedef _elementType value_type

Public Member Functions

virtual const cmnClassServicesBaseServices (void) const
 mtsGenericObjectProxyBase (void)
 mtsGenericObjectProxyBase (const ThisType &other)
 ~mtsGenericObjectProxyBase (void)
virtual value_typeGetData (void)=0
virtual const value_typeGetData (void) const =0
ThisTypeoperator= (const ThisType &data)
virtual void Assign (const ThisType &other)
Public Member Functions inherited from mtsGenericObject
 mtsGenericObject (void)
 mtsGenericObject (double timestamp, bool automaticTimestamp, bool valid)
 mtsGenericObject (const mtsGenericObject &other)
virtual ~mtsGenericObject (void)
mtsGenericObjectoperator= (const mtsGenericObject &other)
bool SetTimestampIfAutomatic (double timestamp)
virtual void ToStream (std::ostream &outputStream) const
virtual void ToStreamRaw (std::ostream &outputStream, const char delimiter=' ', bool headerOnly=false, const std::string &headerPrefix="") const
virtual bool FromStreamRaw (std::istream &inputStream, const char delimiter=' ')
virtual void SerializeRaw (std::ostream &outputStream) const
virtual void DeSerializeRaw (std::istream &inputStream)
size_t ScalarNumber (void) const
bool ScalarNumberIsFixed (void) const
Public Member Functions inherited from cmnGenericObject
virtual ~cmnGenericObject (void)
bool ReconstructFrom (const cmnGenericObject &other)
std::string ToString (void) const
virtual cmnLogger::StreamBufTypeGetLogMultiplexer (void) const
virtual double Scalar (const size_t CMN_UNUSED(index)) const CISST_THROW(std
virtual std::string ScalarDescription (const size_t CMN_UNUSED(index), const std::string &CMN_UNUSED(userDescription)) const

Static Public Member Functions

static cmnClassServicesBaseClassServices (void)

Detailed Description

template<class _elementType>
class mtsGenericObjectProxyBase< _elementType >

Proxy class used to create a simple mtsGenericObject, i.e. data object with a registered type, dynamic creation, serialization and de-serialization. Note that there are really three classes defined here: mtsGenericObjectProxyBase, mtsGenericObjectProxy, and mtsGenericObjectProxyRef (henceforth called ProxyBase, Proxy, and ProxyRef for brevity). ProxyBase provides a common base class. Proxy contains one data member of the actual type provided as the template parameter. ProxyRef contains a pointer to a data member of the actual type provided as the template parameter.

ProxyRef is used internally by the library to enable arbitrary data types T (not just ones derived from mtsGenericObject) to be added to the State Table. In this case, the StateVector (State Table history) will be an array of Proxy<T> and the StateVectorElements (pointers to working copy) will be of type ProxyRef<T>.

To create an mtsGenericObject from an existing type, one would have to specialize mtsGenericObjectProxy as follows in the header file (it is not necessary to worry about the ProxyBase or ProxyRef – these are handled automatically):

class UserType {
....
};
typedef mtsGenericObjectProxy<UserType> UserTypeProxy;
Definition mtsGenericObjectProxy.h:376
#define CMN_DECLARE_SERVICES_INSTANTIATION(className)
Definition cmnClassRegisterMacros.h:199

It is also required to instantiate the associated services in the compiled code (.cpp) file with:

#define CMN_IMPLEMENT_SERVICES_TEMPLATED(className)
Definition cmnClassRegisterMacros.h:297
Note
It is really important to note that this simple way of creating mtsGenericObject derived classes works as is for classes which can be serialized as a memory block, i.e. native types, compact structs, ... For classes which require a more complex way to serialize and deserialize, the user will also have to overload the functions cmnSerializeRaw and cmnDeSerializeRaw.
As it is, this class cannot be used in libraries other than cisstCommon if a DLL is to be created. The issue is that the class will be declared as imported in the header file because it is part of cisstCommon. (PK: OBSOLETE COMMENT?)
There are some "dirty tricks" in this class now, so that we can have a Proxy class and a ProxyRef class, and enable assignments between them. This provides a bit of polymorphic behavior for the command objects, because the Execute method can be parameterized as a ProxyBase object, and thus can be called with either a Proxy or ProxyRef object. This is used for "read from state" commands. One particularly dirty trick is that the class services are actually defined in the Proxy class, but are "stolen" by the ProxyRef class, via the ProxyBase class.
See also
mtsGenericObject, cmnClassServices, cmnSerializer, cmnDeSerializer
Parameters
_elementTypeThe actual type for which we want to provide a proxy object.

Member Typedef Documentation

◆ BaseType

template<class _elementType>
typedef mtsGenericObject mtsGenericObjectProxyBase< _elementType >::BaseType

◆ DeRefType

template<class _elementType>
typedef mtsGenericObjectProxy<_elementType> mtsGenericObjectProxyBase< _elementType >::DeRefType

◆ RefType

template<class _elementType>
typedef mtsGenericObjectProxyRef<_elementType> mtsGenericObjectProxyBase< _elementType >::RefType

◆ ThisType

template<class _elementType>
typedef mtsGenericObjectProxyBase<_elementType> mtsGenericObjectProxyBase< _elementType >::ThisType

◆ value_type

template<class _elementType>
typedef _elementType mtsGenericObjectProxyBase< _elementType >::value_type

Member Enumeration Documentation

◆ anonymous enum

template<class _elementType>
anonymous enum
Enumerator
HAS_DYNAMIC_CREATION 

◆ anonymous enum

template<class _elementType>
anonymous enum
Enumerator
InitialLoD 

Constructor & Destructor Documentation

◆ mtsGenericObjectProxyBase() [1/2]

template<class _elementType>
mtsGenericObjectProxyBase< _elementType >::mtsGenericObjectProxyBase ( void )
inline

Default constructor. The data member is initialized using its default constructor.

◆ mtsGenericObjectProxyBase() [2/2]

template<class _elementType>
mtsGenericObjectProxyBase< _elementType >::mtsGenericObjectProxyBase ( const ThisType & other)
inline

Copy constructor.

◆ ~mtsGenericObjectProxyBase()

template<class _elementType>
mtsGenericObjectProxyBase< _elementType >::~mtsGenericObjectProxyBase ( void )
inline

Member Function Documentation

◆ Assign()

template<class _elementType>
virtual void mtsGenericObjectProxyBase< _elementType >::Assign ( const ThisType & other)
inlinevirtual

◆ ClassServices()

template<class _elementType>
cmnClassServicesBase * mtsGenericObjectProxyBase< _elementType >::ClassServices ( void )
inlinestatic

◆ GetData() [1/2]

template<class _elementType>
virtual const value_type & mtsGenericObjectProxyBase< _elementType >::GetData ( void ) const
pure virtual

Implemented in mtsGenericObjectProxy< _elementType >, mtsGenericObjectProxy< bool >, mtsGenericObjectProxy< char >, mtsGenericObjectProxy< cmnJointType >, mtsGenericObjectProxy< double >, mtsGenericObjectProxy< float >, mtsGenericObjectProxy< int >, mtsGenericObjectProxy< long >, mtsGenericObjectProxy< long long >, mtsGenericObjectProxy< mtsCommandQualifiedReadDescription >, mtsGenericObjectProxy< mtsCommandReadDescription >, mtsGenericObjectProxy< mtsCommandVoidDescription >, mtsGenericObjectProxy< mtsCommandVoidReturnDescription >, mtsGenericObjectProxy< mtsCommandWriteDescription >, mtsGenericObjectProxy< mtsCommandWriteReturnDescription >, mtsGenericObjectProxy< mtsComponentConstructorArg >, mtsGenericObjectProxy< mtsComponentState >, mtsGenericObjectProxy< mtsComponentStateChange >, mtsGenericObjectProxy< mtsComponentStatusControl >, mtsGenericObjectProxy< mtsDescriptionComponent >, mtsGenericObjectProxy< mtsDescriptionComponentClass >, mtsGenericObjectProxy< mtsDescriptionComponentClassVec >, mtsGenericObjectProxy< mtsDescriptionComponentVec >, mtsGenericObjectProxy< mtsDescriptionConnection >, mtsGenericObjectProxy< mtsDescriptionConnectionVec >, mtsGenericObjectProxy< mtsDescriptionInterface >, mtsGenericObjectProxy< mtsDescriptionInterfaceFull >, mtsGenericObjectProxy< mtsDescriptionInterfaceFullName >, mtsGenericObjectProxy< mtsDescriptionInterfaceFullNameVec >, mtsGenericObjectProxy< mtsDescriptionLoadLibrary >, mtsGenericObjectProxy< mtsEndUserInterfaceArg >, mtsGenericObjectProxy< mtsEventVoidDescription >, mtsGenericObjectProxy< mtsEventWriteDescription >, mtsGenericObjectProxy< mtsExecutionResult >, mtsGenericObjectProxy< mtsInterfaceProvidedDescription >, mtsGenericObjectProxy< mtsInterfaceRequiredDescription >, mtsGenericObjectProxy< mtsMessage >, mtsGenericObjectProxy< mtsTaskConstructorArg >, mtsGenericObjectProxy< mtsTaskContinuousConstructorArg >, mtsGenericObjectProxy< mtsTaskPeriodicConstructorArg >, mtsGenericObjectProxy< prmActuatorJointCoupling >, mtsGenericObjectProxy< prmBaseFrame >, mtsGenericObjectProxy< prmCameraInfo >, mtsGenericObjectProxy< prmCartesianImpedance >, mtsGenericObjectProxy< prmCartesianImpedanceHalfPlaneGains >, mtsGenericObjectProxy< prmConfigurationJoint >, mtsGenericObjectProxy< prmDepthMap >, mtsGenericObjectProxy< prmForceTorqueJointSet >, mtsGenericObjectProxy< prmForwardKinematicsRequest >, mtsGenericObjectProxy< prmForwardKinematicsResponse >, mtsGenericObjectProxy< prmImageFrame >, mtsGenericObjectProxy< prmIMUSensors >, mtsGenericObjectProxy< prmInputData >, mtsGenericObjectProxy< prmInverseKinematicsRequest >, mtsGenericObjectProxy< prmInverseKinematicsResponse >, mtsGenericObjectProxy< prmKeyValue >, mtsGenericObjectProxy< prmOperatingState >, mtsGenericObjectProxy< prmPositionCartesianArrayGet >, mtsGenericObjectProxy< prmPositionCartesianGet >, mtsGenericObjectProxy< prmPositionCartesianSet >, mtsGenericObjectProxy< prmPositionJointGet >, mtsGenericObjectProxy< prmPositionJointSet >, mtsGenericObjectProxy< prmServoCartesian >, mtsGenericObjectProxy< prmServoJoint >, mtsGenericObjectProxy< prmStateCartesian >, mtsGenericObjectProxy< prmStateJoint >, mtsGenericObjectProxy< prmVelocityCartesianGet >, mtsGenericObjectProxy< short >, mtsGenericObjectProxy< size_t >, mtsGenericObjectProxy< std::string >, mtsGenericObjectProxy< stdCharVec >, mtsGenericObjectProxy< stdDoubleVec >, mtsGenericObjectProxy< stdStringList >, mtsGenericObjectProxy< stdStringVec >, mtsGenericObjectProxy< stdVct3Vec >, mtsGenericObjectProxy< T >, mtsGenericObjectProxy< unsigned char >, mtsGenericObjectProxy< unsigned int >, mtsGenericObjectProxy< unsigned long >, mtsGenericObjectProxy< unsigned short >, mtsGenericObjectProxy< vct1 >, mtsGenericObjectProxy< vct2 >, mtsGenericObjectProxy< vct2x2 >, mtsGenericObjectProxy< vct3 >, mtsGenericObjectProxy< vct3x3 >, mtsGenericObjectProxy< vct4 >, mtsGenericObjectProxy< vct4x4 >, mtsGenericObjectProxy< vct5 >, mtsGenericObjectProxy< vct6 >, mtsGenericObjectProxy< vct7 >, mtsGenericObjectProxy< vct8 >, mtsGenericObjectProxy< vct9 >, mtsGenericObjectProxy< vctBool1 >, mtsGenericObjectProxy< vctBool2 >, mtsGenericObjectProxy< vctBool3 >, mtsGenericObjectProxy< vctBool4 >, mtsGenericObjectProxy< vctBool5 >, mtsGenericObjectProxy< vctBool6 >, mtsGenericObjectProxy< vctBool7 >, mtsGenericObjectProxy< vctBool8 >, mtsGenericObjectProxy< vctBool9 >, mtsGenericObjectProxy< vctBoolVec >, mtsGenericObjectProxy< vctChar1 >, mtsGenericObjectProxy< vctChar2 >, mtsGenericObjectProxy< vctChar3 >, mtsGenericObjectProxy< vctChar4 >, mtsGenericObjectProxy< vctChar5 >, mtsGenericObjectProxy< vctChar6 >, mtsGenericObjectProxy< vctChar7 >, mtsGenericObjectProxy< vctChar8 >, mtsGenericObjectProxy< vctChar9 >, mtsGenericObjectProxy< vctCharVec >, mtsGenericObjectProxy< vctDoubleMat >, mtsGenericObjectProxy< vctDoubleVec >, mtsGenericObjectProxy< vctFloat1 >, mtsGenericObjectProxy< vctFloat2 >, mtsGenericObjectProxy< vctFloat3 >, mtsGenericObjectProxy< vctFloat4 >, mtsGenericObjectProxy< vctFloat5 >, mtsGenericObjectProxy< vctFloat6 >, mtsGenericObjectProxy< vctFloat7 >, mtsGenericObjectProxy< vctFloat8 >, mtsGenericObjectProxy< vctFloat9 >, mtsGenericObjectProxy< vctFloatMat >, mtsGenericObjectProxy< vctFloatVec >, mtsGenericObjectProxy< vctFrm3 >, mtsGenericObjectProxy< vctFrm4x4 >, mtsGenericObjectProxy< vctInt1 >, mtsGenericObjectProxy< vctInt2 >, mtsGenericObjectProxy< vctInt3 >, mtsGenericObjectProxy< vctInt4 >, mtsGenericObjectProxy< vctInt5 >, mtsGenericObjectProxy< vctInt6 >, mtsGenericObjectProxy< vctInt7 >, mtsGenericObjectProxy< vctInt8 >, mtsGenericObjectProxy< vctInt9 >, mtsGenericObjectProxy< vctIntMat >, mtsGenericObjectProxy< vctIntVec >, mtsGenericObjectProxy< vctLong1 >, mtsGenericObjectProxy< vctLong2 >, mtsGenericObjectProxy< vctLong3 >, mtsGenericObjectProxy< vctLong4 >, mtsGenericObjectProxy< vctLong5 >, mtsGenericObjectProxy< vctLong6 >, mtsGenericObjectProxy< vctLong7 >, mtsGenericObjectProxy< vctLong8 >, mtsGenericObjectProxy< vctLong9 >, mtsGenericObjectProxy< vctLongVec >, mtsGenericObjectProxy< vctMatRot3 >, mtsGenericObjectProxy< vctShort1 >, mtsGenericObjectProxy< vctShort2 >, mtsGenericObjectProxy< vctShort3 >, mtsGenericObjectProxy< vctShort4 >, mtsGenericObjectProxy< vctShort5 >, mtsGenericObjectProxy< vctShort6 >, mtsGenericObjectProxy< vctShort7 >, mtsGenericObjectProxy< vctShort8 >, mtsGenericObjectProxy< vctShort9 >, mtsGenericObjectProxy< vctShortVec >, mtsGenericObjectProxy< vctUChar1 >, mtsGenericObjectProxy< vctUChar2 >, mtsGenericObjectProxy< vctUChar3 >, mtsGenericObjectProxy< vctUChar4 >, mtsGenericObjectProxy< vctUChar5 >, mtsGenericObjectProxy< vctUChar6 >, mtsGenericObjectProxy< vctUChar7 >, mtsGenericObjectProxy< vctUChar8 >, mtsGenericObjectProxy< vctUChar9 >, mtsGenericObjectProxy< vctUCharVec >, mtsGenericObjectProxy< vctUInt1 >, mtsGenericObjectProxy< vctUInt2 >, mtsGenericObjectProxy< vctUInt3 >, mtsGenericObjectProxy< vctUInt4 >, mtsGenericObjectProxy< vctUInt5 >, mtsGenericObjectProxy< vctUInt6 >, mtsGenericObjectProxy< vctUInt7 >, mtsGenericObjectProxy< vctUInt8 >, mtsGenericObjectProxy< vctUInt9 >, mtsGenericObjectProxy< vctUIntVec >, mtsGenericObjectProxy< vctULong1 >, mtsGenericObjectProxy< vctULong2 >, mtsGenericObjectProxy< vctULong3 >, mtsGenericObjectProxy< vctULong4 >, mtsGenericObjectProxy< vctULong5 >, mtsGenericObjectProxy< vctULong6 >, mtsGenericObjectProxy< vctULong7 >, mtsGenericObjectProxy< vctULong8 >, mtsGenericObjectProxy< vctULong9 >, mtsGenericObjectProxy< vctULongVec >, mtsGenericObjectProxy< vctUShort1 >, mtsGenericObjectProxy< vctUShort2 >, mtsGenericObjectProxy< vctUShort3 >, mtsGenericObjectProxy< vctUShort4 >, mtsGenericObjectProxy< vctUShort5 >, mtsGenericObjectProxy< vctUShort6 >, mtsGenericObjectProxy< vctUShort7 >, mtsGenericObjectProxy< vctUShort8 >, mtsGenericObjectProxy< vctUShort9 >, mtsGenericObjectProxy< vctUShortVec >, mtsGenericObjectProxyRef< _elementType >, and mtsGenericObjectProxyRef< T >.

◆ GetData() [2/2]

template<class _elementType>
virtual value_type & mtsGenericObjectProxyBase< _elementType >::GetData ( void )
pure virtual

Return pointer to data

Implemented in mtsGenericObjectProxy< _elementType >, mtsGenericObjectProxy< bool >, mtsGenericObjectProxy< char >, mtsGenericObjectProxy< cmnJointType >, mtsGenericObjectProxy< double >, mtsGenericObjectProxy< float >, mtsGenericObjectProxy< int >, mtsGenericObjectProxy< long >, mtsGenericObjectProxy< long long >, mtsGenericObjectProxy< mtsCommandQualifiedReadDescription >, mtsGenericObjectProxy< mtsCommandReadDescription >, mtsGenericObjectProxy< mtsCommandVoidDescription >, mtsGenericObjectProxy< mtsCommandVoidReturnDescription >, mtsGenericObjectProxy< mtsCommandWriteDescription >, mtsGenericObjectProxy< mtsCommandWriteReturnDescription >, mtsGenericObjectProxy< mtsComponentConstructorArg >, mtsGenericObjectProxy< mtsComponentState >, mtsGenericObjectProxy< mtsComponentStateChange >, mtsGenericObjectProxy< mtsComponentStatusControl >, mtsGenericObjectProxy< mtsDescriptionComponent >, mtsGenericObjectProxy< mtsDescriptionComponentClass >, mtsGenericObjectProxy< mtsDescriptionComponentClassVec >, mtsGenericObjectProxy< mtsDescriptionComponentVec >, mtsGenericObjectProxy< mtsDescriptionConnection >, mtsGenericObjectProxy< mtsDescriptionConnectionVec >, mtsGenericObjectProxy< mtsDescriptionInterface >, mtsGenericObjectProxy< mtsDescriptionInterfaceFull >, mtsGenericObjectProxy< mtsDescriptionInterfaceFullName >, mtsGenericObjectProxy< mtsDescriptionInterfaceFullNameVec >, mtsGenericObjectProxy< mtsDescriptionLoadLibrary >, mtsGenericObjectProxy< mtsEndUserInterfaceArg >, mtsGenericObjectProxy< mtsEventVoidDescription >, mtsGenericObjectProxy< mtsEventWriteDescription >, mtsGenericObjectProxy< mtsExecutionResult >, mtsGenericObjectProxy< mtsInterfaceProvidedDescription >, mtsGenericObjectProxy< mtsInterfaceRequiredDescription >, mtsGenericObjectProxy< mtsMessage >, mtsGenericObjectProxy< mtsTaskConstructorArg >, mtsGenericObjectProxy< mtsTaskContinuousConstructorArg >, mtsGenericObjectProxy< mtsTaskPeriodicConstructorArg >, mtsGenericObjectProxy< prmActuatorJointCoupling >, mtsGenericObjectProxy< prmBaseFrame >, mtsGenericObjectProxy< prmCameraInfo >, mtsGenericObjectProxy< prmCartesianImpedance >, mtsGenericObjectProxy< prmCartesianImpedanceHalfPlaneGains >, mtsGenericObjectProxy< prmConfigurationJoint >, mtsGenericObjectProxy< prmDepthMap >, mtsGenericObjectProxy< prmForceTorqueJointSet >, mtsGenericObjectProxy< prmForwardKinematicsRequest >, mtsGenericObjectProxy< prmForwardKinematicsResponse >, mtsGenericObjectProxy< prmImageFrame >, mtsGenericObjectProxy< prmIMUSensors >, mtsGenericObjectProxy< prmInputData >, mtsGenericObjectProxy< prmInverseKinematicsRequest >, mtsGenericObjectProxy< prmInverseKinematicsResponse >, mtsGenericObjectProxy< prmKeyValue >, mtsGenericObjectProxy< prmOperatingState >, mtsGenericObjectProxy< prmPositionCartesianArrayGet >, mtsGenericObjectProxy< prmPositionCartesianGet >, mtsGenericObjectProxy< prmPositionCartesianSet >, mtsGenericObjectProxy< prmPositionJointGet >, mtsGenericObjectProxy< prmPositionJointSet >, mtsGenericObjectProxy< prmServoCartesian >, mtsGenericObjectProxy< prmServoJoint >, mtsGenericObjectProxy< prmStateCartesian >, mtsGenericObjectProxy< prmStateJoint >, mtsGenericObjectProxy< prmVelocityCartesianGet >, mtsGenericObjectProxy< short >, mtsGenericObjectProxy< size_t >, mtsGenericObjectProxy< std::string >, mtsGenericObjectProxy< stdCharVec >, mtsGenericObjectProxy< stdDoubleVec >, mtsGenericObjectProxy< stdStringList >, mtsGenericObjectProxy< stdStringVec >, mtsGenericObjectProxy< stdVct3Vec >, mtsGenericObjectProxy< T >, mtsGenericObjectProxy< unsigned char >, mtsGenericObjectProxy< unsigned int >, mtsGenericObjectProxy< unsigned long >, mtsGenericObjectProxy< unsigned short >, mtsGenericObjectProxy< vct1 >, mtsGenericObjectProxy< vct2 >, mtsGenericObjectProxy< vct2x2 >, mtsGenericObjectProxy< vct3 >, mtsGenericObjectProxy< vct3x3 >, mtsGenericObjectProxy< vct4 >, mtsGenericObjectProxy< vct4x4 >, mtsGenericObjectProxy< vct5 >, mtsGenericObjectProxy< vct6 >, mtsGenericObjectProxy< vct7 >, mtsGenericObjectProxy< vct8 >, mtsGenericObjectProxy< vct9 >, mtsGenericObjectProxy< vctBool1 >, mtsGenericObjectProxy< vctBool2 >, mtsGenericObjectProxy< vctBool3 >, mtsGenericObjectProxy< vctBool4 >, mtsGenericObjectProxy< vctBool5 >, mtsGenericObjectProxy< vctBool6 >, mtsGenericObjectProxy< vctBool7 >, mtsGenericObjectProxy< vctBool8 >, mtsGenericObjectProxy< vctBool9 >, mtsGenericObjectProxy< vctBoolVec >, mtsGenericObjectProxy< vctChar1 >, mtsGenericObjectProxy< vctChar2 >, mtsGenericObjectProxy< vctChar3 >, mtsGenericObjectProxy< vctChar4 >, mtsGenericObjectProxy< vctChar5 >, mtsGenericObjectProxy< vctChar6 >, mtsGenericObjectProxy< vctChar7 >, mtsGenericObjectProxy< vctChar8 >, mtsGenericObjectProxy< vctChar9 >, mtsGenericObjectProxy< vctCharVec >, mtsGenericObjectProxy< vctDoubleMat >, mtsGenericObjectProxy< vctDoubleVec >, mtsGenericObjectProxy< vctFloat1 >, mtsGenericObjectProxy< vctFloat2 >, mtsGenericObjectProxy< vctFloat3 >, mtsGenericObjectProxy< vctFloat4 >, mtsGenericObjectProxy< vctFloat5 >, mtsGenericObjectProxy< vctFloat6 >, mtsGenericObjectProxy< vctFloat7 >, mtsGenericObjectProxy< vctFloat8 >, mtsGenericObjectProxy< vctFloat9 >, mtsGenericObjectProxy< vctFloatMat >, mtsGenericObjectProxy< vctFloatVec >, mtsGenericObjectProxy< vctFrm3 >, mtsGenericObjectProxy< vctFrm4x4 >, mtsGenericObjectProxy< vctInt1 >, mtsGenericObjectProxy< vctInt2 >, mtsGenericObjectProxy< vctInt3 >, mtsGenericObjectProxy< vctInt4 >, mtsGenericObjectProxy< vctInt5 >, mtsGenericObjectProxy< vctInt6 >, mtsGenericObjectProxy< vctInt7 >, mtsGenericObjectProxy< vctInt8 >, mtsGenericObjectProxy< vctInt9 >, mtsGenericObjectProxy< vctIntMat >, mtsGenericObjectProxy< vctIntVec >, mtsGenericObjectProxy< vctLong1 >, mtsGenericObjectProxy< vctLong2 >, mtsGenericObjectProxy< vctLong3 >, mtsGenericObjectProxy< vctLong4 >, mtsGenericObjectProxy< vctLong5 >, mtsGenericObjectProxy< vctLong6 >, mtsGenericObjectProxy< vctLong7 >, mtsGenericObjectProxy< vctLong8 >, mtsGenericObjectProxy< vctLong9 >, mtsGenericObjectProxy< vctLongVec >, mtsGenericObjectProxy< vctMatRot3 >, mtsGenericObjectProxy< vctShort1 >, mtsGenericObjectProxy< vctShort2 >, mtsGenericObjectProxy< vctShort3 >, mtsGenericObjectProxy< vctShort4 >, mtsGenericObjectProxy< vctShort5 >, mtsGenericObjectProxy< vctShort6 >, mtsGenericObjectProxy< vctShort7 >, mtsGenericObjectProxy< vctShort8 >, mtsGenericObjectProxy< vctShort9 >, mtsGenericObjectProxy< vctShortVec >, mtsGenericObjectProxy< vctUChar1 >, mtsGenericObjectProxy< vctUChar2 >, mtsGenericObjectProxy< vctUChar3 >, mtsGenericObjectProxy< vctUChar4 >, mtsGenericObjectProxy< vctUChar5 >, mtsGenericObjectProxy< vctUChar6 >, mtsGenericObjectProxy< vctUChar7 >, mtsGenericObjectProxy< vctUChar8 >, mtsGenericObjectProxy< vctUChar9 >, mtsGenericObjectProxy< vctUCharVec >, mtsGenericObjectProxy< vctUInt1 >, mtsGenericObjectProxy< vctUInt2 >, mtsGenericObjectProxy< vctUInt3 >, mtsGenericObjectProxy< vctUInt4 >, mtsGenericObjectProxy< vctUInt5 >, mtsGenericObjectProxy< vctUInt6 >, mtsGenericObjectProxy< vctUInt7 >, mtsGenericObjectProxy< vctUInt8 >, mtsGenericObjectProxy< vctUInt9 >, mtsGenericObjectProxy< vctUIntVec >, mtsGenericObjectProxy< vctULong1 >, mtsGenericObjectProxy< vctULong2 >, mtsGenericObjectProxy< vctULong3 >, mtsGenericObjectProxy< vctULong4 >, mtsGenericObjectProxy< vctULong5 >, mtsGenericObjectProxy< vctULong6 >, mtsGenericObjectProxy< vctULong7 >, mtsGenericObjectProxy< vctULong8 >, mtsGenericObjectProxy< vctULong9 >, mtsGenericObjectProxy< vctULongVec >, mtsGenericObjectProxy< vctUShort1 >, mtsGenericObjectProxy< vctUShort2 >, mtsGenericObjectProxy< vctUShort3 >, mtsGenericObjectProxy< vctUShort4 >, mtsGenericObjectProxy< vctUShort5 >, mtsGenericObjectProxy< vctUShort6 >, mtsGenericObjectProxy< vctUShort7 >, mtsGenericObjectProxy< vctUShort8 >, mtsGenericObjectProxy< vctUShort9 >, mtsGenericObjectProxy< vctUShortVec >, mtsGenericObjectProxyRef< _elementType >, and mtsGenericObjectProxyRef< T >.

◆ operator=()

template<class _elementType>
ThisType & mtsGenericObjectProxyBase< _elementType >::operator= ( const ThisType & data)
inline

Conversion assignment.

◆ Services()

template<class _elementType>
virtual const cmnClassServicesBase * mtsGenericObjectProxyBase< _elementType >::Services ( void ) const
inlinevirtual

Pure virtual method to access the class services. The derived classes should always declare and implement this method using the macros CMN_DECLARE_SERVICES, CMN_DECLARE_SERVICES_INSTANTIATION and CMN_IMPLEMENT_SERVICES. In NO WAY, a user should redefine/overload this method otherwise.

Returns
A pointer on the class services. This points to the unique instance of cmnClassServiceBase for a given class.
See also
cmnClassRegister cmnClassServiceBase

Implements cmnGenericObject.


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