|
FireSync API
|
Pipe block that accepts external input or emits external output.
kPxIoBlock can be used to interface external modules (e.g. cameras) to the pipe processing environment. To submit messages to the pipe, output ports can be defined and the thread-safe kPxBlock_Send function can be used to send messages. To receive messages from the pipe, input ports can be defined and the kPxIoBlock_SetReceiveHandler can be used to hook messages received on those ports.
This block type can also be used in unit testing to exchange messagse with a kPxPipe instance.

Public Member Functions | |
| kStatus | kPxIoBlock_EmitOutput (kPxIoBlock block, kPxPort port, kMsgInfo msgInfo) |
| Sends an output message from this block. More... | |
| kStatus | kPxIoBlock_SetReceiveHandler (kPxIoBlock block, kCallbackFx function, kPointer receiver) |
| Sets a callback to hook messages received by this block. More... | |
Public Member Functions inherited from kPxBlock | |
| kStatus | kPxBlock_AssignGroup (kPxBlock block, k32u groupId) |
| Assigns this block to a processing group. More... | |
| kStatus | kPxBlock_Construct (kPxBlock *block, kType type, const kChar *name, k32u nodeId, k32u blockId, kPxEnviron pipeEnviron, kAlloc allocator) |
| Factory constructor for block objects. More... | |
| kStatus | kPxBlock_DefineInput (kPxBlock block, const kChar *name, k32u id, kPxPort *port) |
| Defines an input port for a block. More... | |
| kStatus | kPxBlock_DefineOutput (kPxBlock block, const kChar *name, k32u id, kPxPort *port) |
| Defines an output port for a block. More... | |
| const kChar * | kPxBlock_Description (kType type) |
| Given a kPxBlock subclass type, gets a description of the class. More... | |
| kStatus | kPxBlock_EnableQueuedInputs (kPxBlock block, kBool enabled) |
| Enables the use of queued input ports. More... | |
| kStatus | kPxBlock_Engage (kPxBlock block) |
| Executes a block's OnEngage method. More... | |
| kStatus | kPxBlock_FindPort (kPxBlock block, k32u id, kPxPort *port) |
| Finds the port object corresponding to the given id. More... | |
| kStatus | kPxBlock_FindVariable (kPxBlock block, const kChar *name, kObject *object) |
| Gets a reference to a named object. More... | |
| k32u | kPxBlock_GroupId (kPxBlock block) |
| Gets the processing group id associated with this block. More... | |
| kBool | kPxBlock_HasAllInputs (kPxBlock block) |
| For blocks with queued inputs, reports whether each input has at least one message available. More... | |
| k32u | kPxBlock_Id (kPxBlock block) |
| Gets the unique numeric identifier for this block instance. More... | |
| kBool | kPxBlock_IsGrouped (kPxBlock block) |
| Reports whether this block is assigned to a processing group. More... | |
| const kChar * | kPxBlock_Name (kPxBlock block) |
| Gets a descriptive name for the block instance. More... | |
| kPxPort | kPxBlock_PortAt (kPxBlock block, kSize index) |
| Gets the port at the specified index. More... | |
| kSize | kPxBlock_PortCount (kPxBlock block) |
| Gets the number of ports belonging to the block. More... | |
| kStatus | kPxBlock_Process (kPxBlock block, kPxPort port, kMsgInfo msgInfo) |
| Executes a block's OnReceive method. More... | |
| kStatus | kPxBlock_Send (kPxBlock block, kPxPort port, kMsgSet msg) |
| Sends a message on a specific port. More... | |
| kStatus | kPxBlock_SetDropHandler (kPxBlock block, kCallbackFx function, kPointer receiver) |
| Sets a callback to provide notifications when this block drops a message. More... | |
| kStatus | kPxBlock_SetSendHandler (kPxBlock block, kCallbackFx function, kPointer receiver) |
| Sets a callback to receive messages sent by this block. More... | |
| kXml | kPxBlock_Settings (kPxBlock block) |
| Returns the block's internal settings. More... | |
| kStatus | kPxBlock_Setup (kPxBlock block) |
| Executes a block's OnSetup method. More... | |
| kStatus | kPxBlock_Start (kPxBlock block) |
| Executes a block's OnStart method. More... | |
| kStatus | kPxBlock_Stop (kPxBlock block) |
| Executes a block's OnStop method. More... | |
| kBitArray | kPxBlock_ThreadAffinity (kPxBlock block) |
| Reports the configured pipe thread affinity. More... | |
| kThreadPriorityClass | kPxBlock_ThreadPriorityClass (kPxBlock block) |
| Reports the configured pipe thread priority class. More... | |
| k32s | kPxBlock_ThreadPriorityOffset (kPxBlock block) |
| Reports the configured pipe thread priority offset. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from kPxBlock | |
| kStatus | kPxBlock_FilePath (kPxBlock block, const kChar *fileName, kChar *filePath, kSize capacity) |
| Gets the full path for a given file name used by this block. More... | |
| kHealth | kPxBlock_Health (kPxBlock block) |
| Gets a health service provider that can be used when constructing health or profiling probes. More... | |
| kAlloc | kPxBlock_MessageAlloc (kPxBlock block) |
| Gets an allocator that should be used to construct output messages. More... | |
| kStatus | kPxBlock_NotifyDrop (kPxBlock block) |
| Notifies the processing environment that this block has dropped data. More... | |
| kStatus | kPxBlock_OnEngage (kPxBlock block) |
| Virtual method that can be overridden to perform custom actions when a block is engaged. More... | |
| kStatus | kPxBlock_OnReceive (kPxBlock block, kPxPort port, kMsgSet msg) |
| Virtual method that can be overridden to perform custom actions when a messages is received. More... | |
| kStatus | kPxBlock_OnSetup (kPxBlock block) |
| Virtual method that can be overridden to perform custom block setup. More... | |
| kStatus | kPxBlock_OnStart (kPxBlock block) |
| Virtual method that can be overridden to perform custom actions when a block is started. More... | |
| kStatus | kPxBlock_OnStop (kPxBlock block) |
| Virtual method that can be overridden to perform custom actions when a block is stopped. More... | |
| kStatus | kPxBlock_Printf (kPxBlock block, const kChar *format,...) |
| Prints a diagnostic message. More... | |
| kMsgSource | kPxBlock_Sender (kPxBlock block) |
| Returns information about the source of the message currently being processed. More... | |
| k64u | kPxBlock_Timestamp (kPxBlock block) |
| Within an embedded node environment, this method can be used to access the current FireSync synchnronization time. More... | |