17 #ifndef STROMX_RUNTIME_THREAD_H
18 #define STROMX_RUNTIME_THREAD_H
22 #include "stromx/runtime/Color.h"
23 #include "stromx/runtime/Config.h"
24 #include "stromx/runtime/Input.h"
30 class ThreadUtilities;
41 class ThreadImplObserver;
56 friend class ThreadTest;
57 friend class stromx::python::ThreadUtilities;
76 Status status()
const;
79 const std::string & name()
const;
82 void setName(
const std::string& name);
85 const Color & color()
const;
91 void setColor(
const Color & color);
94 const std::vector<Input> & inputSequence()
const;
103 void addInput(
Operator*
const op,
const unsigned int inputId);
112 void insertInput(
const unsigned int position,
Operator*
const op,
const unsigned int inputId);
120 void removeInput(
const unsigned int position);
129 void removeInput(
Operator*
const op,
const unsigned int inputId);
132 explicit Thread(
const impl::Network*
const network);
133 unsigned int findInput(
Operator*
const op,
const unsigned int inputId);
141 void setDelay(
const unsigned int delay);
147 void removeOperator(
const Operator* op);
149 void setObserver(
const impl::ThreadImplObserver*
const observer);
160 void setInterruptedFlag(
const bool value) { m_interruptedFlag = value; }
161 bool interruptedFlag()
const {
return m_interruptedFlag; }
163 impl::ThreadImpl* m_thread;
165 const impl::Network* m_network;
166 std::vector<Input> m_inputSequence;
168 bool m_interruptedFlag;
173 #endif // STROMX_RUNTIME_THREAD_H
RGB color.
Definition: Color.h:35
Status
Definition: Thread.h:61
The stromx class library.
Definition: AdjustRgbChannels.cpp:29
The core data processing pipeline of stromx.
Definition: Stream.h:45
Abstract operator.
Definition: Operator.h:60
A thread which visits input nodes.
Definition: Thread.h:53