16#include <peak/dll_interface/peak_dll_interface_util.hpp>
79 friend ClassCreator<CommandNode>;
102 , m_backendHandle(commandNodeHandle)
107 return QueryNumericFromCInterfaceFunction<PEAK_BOOL8>([&](
PEAK_BOOL8* isDone) {
118 CallAndCheckCInterfaceFunction(
Represents a timeout value in milliseconds.
Definition peak_timeout.hpp:31
Represents a GenAPI command node.
Definition peak_command_node.hpp:33
CommandNode & operator=(CommandNode &&other)=delete
void WaitUntilDone(Timeout waitTimeout_ms=500)
(Blocking) Wait for the executed command to be finished, i.e. until IsDone() is true.
Definition peak_command_node.hpp:116
CommandNode(const CommandNode &other)=delete
CommandNode(CommandNode &&other)=delete
~CommandNode() override=default
bool IsDone() const
Checks whether the command is done.
Definition peak_command_node.hpp:105
void Execute()
Executes the command associated with this node.
Definition peak_command_node.hpp:111
CommandNode & operator=(const CommandNode &other)=delete
Represents a GenAPI node.
Definition peak_node.hpp:122
The "peak" namespace directly contains convenience functionality like the DeviceManager as well as th...
Definition peak_dynamic_loader.h:33
PEAK_C_API PEAK_CommandNode_ToNode(PEAK_COMMAND_NODE_HANDLE commandNodeHandle, PEAK_NODE_HANDLE *nodeHandle)
Casts the given command node to a node.
struct PEAK_COMMAND_NODE * PEAK_COMMAND_NODE_HANDLE
Definition peak_backend.h:424
struct PEAK_NODE * PEAK_NODE_HANDLE
Definition peak_backend.h:412
PEAK_C_API PEAK_CommandNode_Execute(PEAK_COMMAND_NODE_HANDLE commandNodeHandle)
Tells the given command node to execute its associated command.
int8_t PEAK_BOOL8
Definition peak_backend.h:26
PEAK_C_API PEAK_CommandNode_WaitUntilDone(PEAK_COMMAND_NODE_HANDLE commandNodeHandle, uint64_t waitTimeout_ms)
Waits (blocking) until the previously executed command is finished, i.e. PEAK_CommandNode_GetIsDone()...
PEAK_C_API PEAK_CommandNode_GetIsDone(PEAK_COMMAND_NODE_HANDLE commandNodeHandle, PEAK_BOOL8 *isDone)
Asks the given command node whether its associated command is done.
#define PEAK_C_ABI_PREFIX
Definition peak_dll_defines.h:16