cisst-saw
Toggle main menu visibility
Loading...
Searching...
No Matches
tmp
cisst-saw
cisst
cisstMultiTask
mtsFunctionBase.h
Go to the documentation of this file.
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
/* ex: set filetype=cpp softtabstop=4 shiftwidth=4 tabstop=4 cindent expandtab: */
3
4
/*
5
6
Author(s): Peter Kazanzides, Anton Deguet
7
8
(C) Copyright 2007-2026 Johns Hopkins University (JHU), All Rights Reserved.
9
10
--- begin cisst license - do not edit ---
11
12
This software is provided "as is" under an open source license, with
13
no warranty. The complete license can be found in license.txt and
14
http://www.cisst.org/cisst/license.txt.
15
16
--- end cisst license ---
17
*/
18
19
20
25
26
#ifndef _mtsFunctionBase_h
27
#define _mtsFunctionBase_h
28
29
#include <
cisstOSAbstraction/osaForwardDeclarations.h
>
30
#include <
cisstMultiTask/mtsExecutionResult.h
>
31
#include <
cisstMultiTask/mtsForwardDeclarations.h
>
32
33
// Always include last
34
#include <
cisstMultiTask/mtsExport.h
>
35
36
class
mtsEventReceiverWrite
;
37
38
class
CISST_EXPORT
mtsFunctionBase
{
39
40
protected
:
42
mtsFunctionBase
();
43
45
virtual
~mtsFunctionBase
();
46
48
osaThreadSignal
*
ThreadSignal
;
49
52
mtsEventReceiverWrite
*
CompletionCommand
;
53
54
public
:
56
virtual
bool
Detach
(
void
) = 0;
57
59
virtual
bool
IsValid
(
void
)
const
= 0;
60
62
virtual
void
ToStream
(std::ostream & outputStream)
const
= 0;
63
65
virtual
void
InitCompletionCommand
(
const
std::string &name);
66
68
virtual
void
DeleteCompletionCommand
(
void
);
69
71
void
SetThreadSignal
(
osaThreadSignal
* threadSignal);
72
74
void
ThreadSignalWait
(
void
)
const
;
75
81
mtsExecutionResult
WaitForResult
(
void
)
const
;
82
};
83
84
86
inline
std::ostream &
operator <<
(std::ostream & output,
87
const
mtsFunctionBase
& function) {
88
function.
ToStream
(output);
89
return
output;
90
}
91
92
93
#endif
// _mtsFunctionBase_h
mtsEventReceiverWrite
Definition
mtsEventReceiver.h:221
mtsExecutionResult
Definition
mtsExecutionResult.h:34
mtsFunctionBase
Definition
mtsFunctionBase.h:38
mtsFunctionBase::DeleteCompletionCommand
virtual void DeleteCompletionCommand(void)
mtsFunctionBase::ThreadSignalWait
void ThreadSignalWait(void) const
mtsFunctionBase::~mtsFunctionBase
virtual ~mtsFunctionBase()
mtsFunctionBase::mtsFunctionBase
mtsFunctionBase()
mtsFunctionBase::WaitForResult
mtsExecutionResult WaitForResult(void) const
mtsFunctionBase::InitCompletionCommand
virtual void InitCompletionCommand(const std::string &name)
mtsFunctionBase::ThreadSignal
osaThreadSignal * ThreadSignal
Definition
mtsFunctionBase.h:48
mtsFunctionBase::Detach
virtual bool Detach(void)=0
mtsFunctionBase::CompletionCommand
mtsEventReceiverWrite * CompletionCommand
Definition
mtsFunctionBase.h:52
mtsFunctionBase::IsValid
virtual bool IsValid(void) const =0
mtsFunctionBase::SetThreadSignal
void SetThreadSignal(osaThreadSignal *threadSignal)
mtsFunctionBase::ToStream
virtual void ToStream(std::ostream &outputStream) const =0
osaThreadSignal
Definition
osaThreadSignal.h:41
CISST_EXPORT
#define CISST_EXPORT
Definition
cmnExportMacros.h:50
mtsExecutionResult.h
mtsExport.h
Rules of exporting.
mtsForwardDeclarations.h
Forward declarations and #define for cisstMultiTask.
operator<<
std::ostream & operator<<(std::ostream &output, const mtsFunctionBase &function)
Definition
mtsFunctionBase.h:86
osaForwardDeclarations.h
Forward declarations and #define for cisstOSAbstraction.
Generated by
1.18.0