cisst-saw
Loading...
Searching...
No Matches
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)
virtual void DeleteCompletionCommand (void)
void SetThreadSignal (osaThreadSignal *threadSignal)
void ThreadSignalWait (void) const
mtsExecutionResult WaitForResult (void) const

Protected Member Functions

 mtsFunctionBase ()
virtual ~mtsFunctionBase ()

Protected Attributes

osaThreadSignalThreadSignal
mtsEventReceiverWriteCompletionCommand

Constructor & Destructor Documentation

◆ mtsFunctionBase()

mtsFunctionBase::mtsFunctionBase ( )
protected

Default constructor.

◆ ~mtsFunctionBase()

virtual mtsFunctionBase::~mtsFunctionBase ( )
protectedvirtual

Destructor.

Member Function Documentation

◆ DeleteCompletionCommand()

virtual void mtsFunctionBase::DeleteCompletionCommand ( void )
virtual

Delete the completion command (mtsEventReceiverWrite), if it exists.

◆ Detach()

virtual bool mtsFunctionBase::Detach ( void )
pure virtual

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

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

◆ InitCompletionCommand()

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

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

◆ IsValid()

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

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

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

◆ SetThreadSignal()

void mtsFunctionBase::SetThreadSignal ( osaThreadSignal * threadSignal)

Set the thread signal used for blocking commands

◆ ThreadSignalWait()

void mtsFunctionBase::ThreadSignalWait ( void ) const

Wait for internal thread signal

◆ ToStream()

virtual void mtsFunctionBase::ToStream ( std::ostream & outputStream) const
pure virtual

◆ WaitForResult()

mtsExecutionResult mtsFunctionBase::WaitForResult ( void ) const

Wait for return value. Note that return object is specified via CompletionCommand (PrepareToWait). Return object contains:

  • result – for read, qualified read, void return, write return
  • execution result – for blocking void, blocking write

Member Data Documentation

◆ CompletionCommand

mtsEventReceiverWrite* mtsFunctionBase::CompletionCommand
protected

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

◆ ThreadSignal

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: