Open Model Railroad Network (OpenMRN)
Loading...
Searching...
No Matches
StateFlowWithQueue Class Referenceabstract

A state flow that has an incoming message queue, pends on that queue, and runs a flow for every message that comes in from that queue. More...

#include <StateFlow.hxx>

Inheritance diagram for StateFlowWithQueue:
StateFlowBase Atomic LinkedObject< StateFlowWithQueue > Executable Notifiable QMember Destructable UntypedStateFlow< QList< 1 > > UntypedStateFlow< QList< NUM_PRIO > > UntypedStateFlow< QList< 5 > > UntypedStateFlow< QList< 4 > > UntypedStateFlow< QueueType > TypedStateFlow< Buffer< RequestType >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< Data >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< Chunk >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< ProgrammingTrackRequest >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< dcc::Packet >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< AliasInfo >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< BootloaderRequest >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< BroadcastTimeServerDateRolloverFinishInput >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< BroadcastTimeServerSetInput >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< BroadcastTimeServerSyncInput >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< BroadcastTimeServerTimeInput >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< BulkAliasRequest >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< CanMessageData >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< DccAccyProducerInput >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< MemoryConfigClientRequest >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< NodeCanonicalizeRequest >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< SNIPClientRequest >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< StreamReceiveRequest >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< ByteBuffer, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< TractionThrottleInput >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< ThrottleCommand >, UntypedStateFlow< QList< 1 > > > TypedStateFlow< Buffer< typename HFlow::value_type >, UntypedStateFlow< QList< 1 > > > DispatchFlowBase< BASE_NUM_PRIO > DispatchFlowBase< NUM_PRIO > TypedStateFlow< Buffer< EventHandlerCall >, UntypedStateFlow< QList< 5 > > > TypedStateFlow< Buffer< CanHubData >, UntypedStateFlow< QList< 5 > > > TypedStateFlow< Buffer< GenMessage >, UntypedStateFlow< QList< 4 > > > TypedStateFlow< MessageType, UntypedStateFlow< QueueType > >

Public Member Functions

void notify () override
 Wakeup call arrived. Schedules *this on the executor.
 
bool is_waiting ()
 
- Public Member Functions inherited from StateFlowBase
void run () override
 Callback from the executor.
 
Serviceservice ()
 Return a pointer to the service I am bound to.
 
- Public Member Functions inherited from Executable
void test_deletion ()
 
- Public Member Functions inherited from QMember
void init ()
 Initiailize a QMember, in place of a public placement construction.
 
- Public Member Functions inherited from LinkedObject< StateFlowWithQueue >
StateFlowWithQueuelink_next ()
 

Protected Member Functions

 StateFlowWithQueue (Service *service)
 Constructor.
 
virtual Action entry ()=0
 Entry into the StateFlow activity.
 
virtual QMemberqueue_next (unsigned *priority)=0
 Takes the front entry in the queue.
 
virtual bool queue_empty ()=0
 
virtual void release ()=0
 Releases the current message buffer back to the pool it came from.
 
Action exit ()
 Terminates the processing of this flow.
 
Action release_and_exit ()
 Terminates the processing of the current message.
 
BufferBasemessage ()
 
BufferBasetransfer_message ()
 Releases ownership of the current message.
 
void reset_message (BufferBase *message, unsigned priority)
 Sets the current message being processed.
 
unsigned priority ()
 
void set_priority (unsigned priority)
 Overrides the current priority.
 
void start_flow_at_init (Callback c)
 Call this from the constructor of the child class to do some work before the main queue processing loop begins.
 
- Protected Member Functions inherited from StateFlowBase
 StateFlowBase (Service *service)
 Constructor.
 
 ~StateFlowBase ()
 Destructor.
 
void reset_flow (Callback c)
 Resets the flow to the specified state.
 
bool is_state (Callback c)
 
bool is_terminated ()
 
void start_flow (Callback c)
 Resets the flow to the specified state and starts it.
 
Action again ()
 Call the current state again via call_immediately.
 
Action exit ()
 Terminate current StateFlow activity.
 
Action delete_this ()
 Terminates the flow and deletes *this.
 
Action set_terminated ()
 Sets the flow to terminated state.
 
Action call_immediately (Callback c)
 Imediately call the next state upon return.
 
Action wait ()
 Wait for an asynchronous call.
 
Action wait_and_call (Callback c)
 Wait for resource to become available before proceeding to next state.
 
template<class T >
Action allocate_and_call (FlowInterface< Buffer< T > > *target_flow, Callback c, Pool *pool=nullptr)
 Allocates a buffer from a pool and proceed to the next state when allocation is successful.
 
Action allocate_and_call (Callback c, QAsync *queue)
 Allocates an entry from an asynchronous queue, and transitions to a state once the allocation is complete.
 
template<class T >
Buffer< T > * full_allocation_result (FlowInterface< Buffer< T > > *target_flow)
 Takes the result of the asynchronous allocation without resetting the object.
 
template<class T >
T * full_allocation_result (TypedQAsync< T > *queue)
 Takes the result of the asynchronous allocation without resetting the object.
 
template<class T >
void cast_allocation_result (T **member)
 Takes the result of the asynchronous allocation without resetting the object.
 
template<class T >
Buffer< T > * get_allocation_result (FlowInterface< Buffer< T > > *target_flow)
 Takes the result of the asynchronous allocation.
 
Action yield_and_call (Callback c)
 Place the current flow to the back of the executor, and transition to a new state after we get the CPU again.
 
Action yield ()
 Place the current flow to the back of the executor, and re-try the current state after we get the CPU again.
 
Action sleep_and_call (::Timer *timer, long long timeout_nsec, Callback c)
 Suspends execution of this control flow for a specified time.
 
template<class T , typename... Args>
Action invoke_subflow_and_wait (FlowInterface< Buffer< T > > *target_flow, Callback c, Args &&... args)
 Calls a helper flow to perform some actions.
 
Action read_repeated (StateFlowSelectHelper *helper, int fd, void *buf, size_t size, Callback c, unsigned priority=Selectable::MAX_PRIO)
 Blocks until size bytes are read and then invokes the next state.
 
Action read_single (StateFlowSelectHelper *helper, int fd, void *buf, size_t size, Callback c, unsigned priority=Selectable::MAX_PRIO)
 Attempts to read at most size_t bytes, and blocks the caller until at least one byte is read.
 
Action read_nonblocking (StateFlowSelectHelper *helper, int fd, void *buf, size_t size, Callback c, unsigned priority=Selectable::MAX_PRIO)
 Attempts to read at most size bytes, and then invokes the next state, even if only zero bytes are available right now.
 
Action read_repeated_with_timeout (StateFlowTimedSelectHelper *helper, long long timeout_nsec, int fd, void *buf, size_t size, Callback c, unsigned priority=Selectable::MAX_PRIO)
 Blocks until size bytes are read, or a timeout expires.
 
Action internal_try_read ()
 Implementation state that gets repeatedly called upon every wakeup and tries to make progress on reading.
 
Action write_repeated (StateFlowSelectHelper *helper, int fd, const void *buf, size_t size, Callback c, unsigned priority=Selectable::MAX_PRIO)
 Writes some data into a file descriptor, repeating the operation as necessary until all bytes are written.
 
Action internal_try_write ()
 Implementation state that gets repeatedly called upon every wakeup and tries to make progress on writing.
 
- Protected Member Functions inherited from QMember
 QMember ()
 Constructor.
 
 ~QMember ()
 Destructor.
 
- Protected Member Functions inherited from Atomic
void lock ()
 
void unlock ()
 
- Protected Member Functions inherited from LinkedObject< StateFlowWithQueue >
StateFlowWithQueuelink_this ()
 
 LinkedObject ()
 Constructor. Puts *this on the linked list.
 
 ~LinkedObject ()
 Constructor. Removes *this from the linked list.
 
StateFlowWithQueuelink_next ()
 

Private Member Functions

Action wait_for_message ()
 

Private Attributes

unsigned queueSize_
 For debugging: how many entries are currently waiting in the queue of this stateflow.
 
BufferBasecurrentMessage_
 Message we are currently processing.
 
unsigned currentPriority_: 31
 Priority of the current message we are processing.
 
unsigned isWaiting_: 1
 True if we are in the pending state, waiting for an entry to show up in the queue.
 

Static Private Attributes

static const unsigned MAX_PRIORITY_ = 0x7FFFFFFFU
 Largest acceptable priority value for a stateflow.
 

Friends

template<class Q >
class UntypedStateFlow
 
template<class M , class B >
class TypedStateFlow
 
class GlobalEventFlow
 

Additional Inherited Members

- Static Public Member Functions inherited from StateFlowBase
template<class T , typename... Args>
static void invoke_subflow_and_ignore_result (FlowInterface< Buffer< T > > *target_flow, Args &&... args)
 Calls a helper flow to perform some actions.
 
- Static Public Member Functions inherited from LinkedObject< StateFlowWithQueue >
static StateFlowWithQueuelink_head ()
 
static Atomichead_mu ()
 Locks the list for modification (at any entry!).
 
- Protected Types inherited from StateFlowBase
typedef Action(StateFlowBase::* Callback) ()
 State Flow callback prototype.
 
- Static Protected Member Functions inherited from LinkedObject< StateFlowWithQueue >
static StateFlowWithQueuelink_head ()
 
static Atomichead_mu ()
 Locks the list for modification (at any entry!).
 
- Protected Attributes inherited from QMember
QMembernext
 pointer to the next member in the queue
 
- Protected Attributes inherited from LinkedObject< StateFlowWithQueue >
StateFlowWithQueuelink_
 Linked list pointer.
 
- Static Protected Attributes inherited from LinkedObject< StateFlowWithQueue >
static StateFlowWithQueuehead_
 Beginning of the list.
 

Detailed Description

A state flow that has an incoming message queue, pends on that queue, and runs a flow for every message that comes in from that queue.

Definition at line 968 of file StateFlow.hxx.

Constructor & Destructor Documentation

◆ ~StateFlowWithQueue()

StateFlowWithQueue::~StateFlowWithQueue ( )

Definition at line 51 of file StateFlow.cxx.

◆ StateFlowWithQueue()

StateFlowWithQueue::StateFlowWithQueue ( Service service)
protected

Constructor.

Parameters
servicespecifies which thread to execute this state flow on.

Definition at line 41 of file StateFlow.cxx.

Member Function Documentation

◆ entry()

virtual Action StateFlowWithQueue::entry ( )
protectedpure virtual

Entry into the StateFlow activity.

Pure virtual which must be defined by derived class. Must eventually (through some number of states) call release_and_exit() to transition to getting next message.

Returns
function pointer to next state

Implemented in MockSend, ProgrammingTrackBackend, openlcb::RailcomToOpenLCBDebugProxy, DispatchFlowBase< NUM_PRIO >, DispatchFlowBase< BASE_NUM_PRIO >, DispatchFlow< MessageType, NUM_PRIO >, openlcb::BootloaderClient::WriteResponseHandler, openlcb::BootloaderPort, openlcb::BroadcastTimeServerDateRolloverFinish, openlcb::BroadcastTimeServerTime, openlcb::BroadcastTimeServerSync, openlcb::BroadcastTimeServerSet, openlcb::BulkAliasAllocator, openlcb::DccAccyProducer, openlcb::MemoryConfigHandler, openlcb::MemoryConfigClient, openlcb::MemoryConfigClient::ResponseFlow, openlcb::MemoryConfigClientWithStream, openlcb::MemoryConfigStreamHandler, openlcb::InitializeFlow, openlcb::SimpleInfoFlow, openlcb::SNIPClient, openlcb::StreamReceiverCan, openlcb::TractionThrottle, traction_modem::TxFlow, BufferPort, HubToGcPort, ESPWifiClient, GCAdapter::BinaryToGCMember, GCAdapter::GCToBinaryMember, DisplayPort, FdHubWriteFlow< typename HFlow::value_type >, HubDeviceSelect< HFlow, ReadFlow >::WriteFlow, FdLoggingServer, TypedStateFlow< Buffer< AliasInfo >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BootloaderRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BroadcastTimeServerDateRolloverFinishInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BroadcastTimeServerSetInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BroadcastTimeServerSyncInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BroadcastTimeServerTimeInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BulkAliasRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< CanHubData >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< CanHubData >, UntypedStateFlow< QList< 5 > > >, TypedStateFlow< Buffer< CanMessageData >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< CanMessageData >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< Chunk >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< D >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< Data >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< dcc::Packet >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< DccAccyProducerInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< EventHandlerCall >, UntypedStateFlow< QList< 5 > > >, TypedStateFlow< Buffer< GenMessage >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< GenMessage >, UntypedStateFlow< QList< 4 > > >, TypedStateFlow< Buffer< HubData >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< MemoryConfigClientRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< NodeCanonicalizeRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< ProgrammingTrackRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< RequestType >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< SNIPClientRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< StreamReceiveRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< ThrottleCommand >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< ThrottleCommand >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< TractionThrottleInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< typename HFlow::value_type >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< ByteBuffer, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< MessageType, DispatchFlowBase< BASE_NUM_PRIO > >, and TypedStateFlow< MessageType, UntypedStateFlow< QueueType > >.

◆ exit()

Action StateFlowWithQueue::exit ( )
inlineprotected

Terminates the processing of this flow.

Takes the next message and start processing agian from entry().

Returns
appropriate action to return from the state flow state handler.

Definition at line 1020 of file StateFlow.hxx.

◆ is_waiting()

bool StateFlowWithQueue::is_waiting ( )
inline
Returns
true if the flow is waiting for work.

Definition at line 982 of file StateFlow.hxx.

◆ message()

BufferBase * StateFlowWithQueue::message ( )
inlineprotected
Returns
the current message we are processing.

Definition at line 1036 of file StateFlow.hxx.

◆ notify()

void StateFlowWithQueue::notify ( )
overridevirtual

Wakeup call arrived. Schedules *this on the executor.

Reimplemented from StateFlowBase.

Definition at line 109 of file StateFlow.cxx.

◆ priority()

unsigned StateFlowWithQueue::priority ( )
inlineprotected
Returns
the priority of the message currently being processed.

Definition at line 1062 of file StateFlow.hxx.

◆ queue_empty()

virtual bool StateFlowWithQueue::queue_empty ( )
protectedpure virtual

◆ queue_next()

virtual QMember * StateFlowWithQueue::queue_next ( unsigned *  priority)
protectedpure virtual

Takes the front entry in the queue.

Must be called with the lock held.

Returns
NULL if the queue is empty.
Parameters
prioritywill be set to the priority of the queue member removed fomr the queue.

Implemented in UntypedStateFlow< QueueType >, UntypedStateFlow< QList< 1 > >, UntypedStateFlow< QList< 4 > >, UntypedStateFlow< QList< 5 > >, and UntypedStateFlow< QList< NUM_PRIO > >.

◆ release()

virtual void StateFlowWithQueue::release ( )
protectedpure virtual

Releases the current message buffer back to the pool it came from.

The state flow will continue running (and not get another message) until it reaches the state exit().

Implemented in TypedStateFlow< Buffer< AliasInfo >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BootloaderRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BroadcastTimeServerDateRolloverFinishInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BroadcastTimeServerSetInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BroadcastTimeServerSyncInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BroadcastTimeServerTimeInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< BulkAliasRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< CanHubData >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< CanHubData >, UntypedStateFlow< QList< 5 > > >, TypedStateFlow< Buffer< CanMessageData >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< CanMessageData >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< Chunk >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< D >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< Data >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< dcc::Packet >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< DccAccyProducerInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< EventHandlerCall >, UntypedStateFlow< QList< 5 > > >, TypedStateFlow< Buffer< GenMessage >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< GenMessage >, UntypedStateFlow< QList< 4 > > >, TypedStateFlow< Buffer< HubData >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< MemoryConfigClientRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< NodeCanonicalizeRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< ProgrammingTrackRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< RequestType >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< SNIPClientRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< StreamReceiveRequest >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< ThrottleCommand >, DispatchFlowBase< BASE_NUM_PRIO > >, TypedStateFlow< Buffer< ThrottleCommand >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< TractionThrottleInput >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< Buffer< typename HFlow::value_type >, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< ByteBuffer, UntypedStateFlow< QList< 1 > > >, TypedStateFlow< MessageType, DispatchFlowBase< BASE_NUM_PRIO > >, and TypedStateFlow< MessageType, UntypedStateFlow< QueueType > >.

◆ release_and_exit()

Action StateFlowWithQueue::release_and_exit ( )
inlineprotected

Terminates the processing of the current message.

Flows should end with this action. Frees the current message.

Returns
the action for checking for new messages.

Definition at line 1029 of file StateFlow.hxx.

◆ reset_message()

void StateFlowWithQueue::reset_message ( BufferBase message,
unsigned  priority 
)
inlineprotected

Sets the current message being processed.

Parameters
messageis the buffer of the new message. This request transfers one reference of ownership.
prioritywhat prio to run the flow on.

Definition at line 1055 of file StateFlow.hxx.

◆ set_priority()

void StateFlowWithQueue::set_priority ( unsigned  priority)
inlineprotected

Overrides the current priority.

Definition at line 1068 of file StateFlow.hxx.

◆ start_flow_at_init()

void StateFlowWithQueue::start_flow_at_init ( Callback  c)
inlineprotected

Call this from the constructor of the child class to do some work before the main queue processing loop begins.

When the initialization states are done, call 'return exit()' to start the main loop.

Parameters
cis the state to call before the main loop.

Definition at line 1077 of file StateFlow.hxx.

◆ transfer_message()

BufferBase * StateFlowWithQueue::transfer_message ( )
inlineprotected

Releases ownership of the current message.

Returns
the current message. Ownership transferred to the caller.

Definition at line 1044 of file StateFlow.hxx.

◆ wait_for_message()

StateFlowBase::Action StateFlowWithQueue::wait_for_message ( )
private

Definition at line 74 of file StateFlow.cxx.

Friends And Related Symbol Documentation

◆ GlobalEventFlow

friend class GlobalEventFlow
friend

Definition at line 1103 of file StateFlow.hxx.

◆ TypedStateFlow

template<class M , class B >
friend class TypedStateFlow
friend

Definition at line 1102 of file StateFlow.hxx.

◆ UntypedStateFlow

template<class Q >
friend class UntypedStateFlow
friend

Definition at line 1101 of file StateFlow.hxx.

Member Data Documentation

◆ currentMessage_

BufferBase* StateFlowWithQueue::currentMessage_
private

Message we are currently processing.

Definition at line 1092 of file StateFlow.hxx.

◆ currentPriority_

unsigned StateFlowWithQueue::currentPriority_
private

Priority of the current message we are processing.

Definition at line 1095 of file StateFlow.hxx.

◆ isWaiting_

unsigned StateFlowWithQueue::isWaiting_
private

True if we are in the pending state, waiting for an entry to show up in the queue.

Protected by Atomic *this.

Definition at line 1099 of file StateFlow.hxx.

◆ MAX_PRIORITY_

const unsigned StateFlowWithQueue::MAX_PRIORITY_ = 0x7FFFFFFFU
staticprivate

Largest acceptable priority value for a stateflow.

Definition at line 1106 of file StateFlow.hxx.

◆ queueSize_

unsigned StateFlowWithQueue::queueSize_
private

For debugging: how many entries are currently waiting in the queue of this stateflow.

Definition at line 1089 of file StateFlow.hxx.


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