cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
mtsFunctionBase Class Referenceabstract

#include <mtsFunctionBase.h>

Inheritance diagram for mtsFunctionBase:
mtsFunctionQualifiedRead mtsFunctionRead mtsFunctionVoid mtsFunctionVoidReturn mtsFunctionWrite mtsFunctionWriteReturn

Public Member Functions

virtual bool Detach (void)=0
 
virtual bool IsValid (void) const =0
 
virtual void ToStream (std::ostream &outputStream) const =0
 
virtual void InitCompletionCommand (const std::string &name)
 
void SetThreadSignal (osaThreadSignal *threadSignal)
 
void ThreadSignalWait (void) const
 
mtsExecutionResult WaitForResult (mtsGenericObject &arg) const
 
mtsExecutionResult WaitForResult (void) const
 

Protected Member Functions

 mtsFunctionBase (const bool isProxy)
 
virtual ~mtsFunctionBase ()
 

Protected Attributes

osaThreadSignalThreadSignal
 
mtsEventReceiverWriteCompletionCommand
 
bool IsProxy
 

Constructor & Destructor Documentation

mtsFunctionBase::mtsFunctionBase ( const bool  isProxy)
protected

Default constructor.

virtual mtsFunctionBase::~mtsFunctionBase ( )
protectedvirtual

Destructor.

Member Function Documentation

virtual bool mtsFunctionBase::Detach ( void  )
pure virtual

Detach the function from the command used. Internally, sets the command pointer to 0

Implemented in mtsFunctionQualifiedRead, mtsFunctionWriteReturn, mtsFunctionWrite, mtsFunctionVoidReturn, mtsFunctionRead, and mtsFunctionVoid.

virtual void mtsFunctionBase::InitCompletionCommand ( const std::string &  name)
virtual

Initialize the completion command (mtsEventReceiverWrite), creating it if necessary.

virtual bool mtsFunctionBase::IsValid ( void  ) const
pure virtual

Return whether function is valid (i.e., command pointer is non-zero)

Implemented in mtsFunctionQualifiedRead, mtsFunctionWriteReturn, mtsFunctionWrite, mtsFunctionVoidReturn, mtsFunctionRead, and mtsFunctionVoid.

void mtsFunctionBase::SetThreadSignal ( osaThreadSignal threadSignal)

Set the thread signal used for blocking commands

void mtsFunctionBase::ThreadSignalWait ( void  ) const

Wait for internal thread signal

virtual void mtsFunctionBase::ToStream ( std::ostream &  outputStream) const
pure virtual
mtsExecutionResult mtsFunctionBase::WaitForResult ( mtsGenericObject arg) const

Wait for return value (read, qualified read, void return, write return)

mtsExecutionResult mtsFunctionBase::WaitForResult ( void  ) const

Wait for execution result (blocking void, blocking write)

Member Data Documentation

mtsEventReceiverWrite* mtsFunctionBase::CompletionCommand
protected

Event receiver for events containing return value or indication that blocking command has finished.

bool mtsFunctionBase::IsProxy
protected

Indicates if this function is used by a proxy required interface. If this is the case, blocking commands should not block the proxy component.

osaThreadSignal* mtsFunctionBase::ThreadSignal
protected

Reference to an existing thread signal used to block the execution.


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