10#include "dawn/common/descriptor.hxx"
11#include "dawn/common/generic_handler.hxx"
12#include "dawn/common/handler.hxx"
13#include "dawn/io/handler.hxx"
14#include "dawn/porting/config.hxx"
15#include "dawn/prog/common.hxx"
16#include "dawn/prog/factory.hxx"
37 : userFactory(nullptr)
Descriptor wrapper for individual object configuration.
Binary device descriptor manager.
Template handler for object lifecycle management.
bool hasThread() const
Check if any thread is currently running.
int stopAll()
Stop all objects managed by this handler.
int deinitAll()
De-initialize all objects managed by this handler.
int startAll()
Start all objects managed by this handler.
Base implementation of IHandler interface.
Base class for all I/O objects.
Manages I/O object lifecycle and dispatch.
Base class for all Dawn objects (IOs, Programs, Protocols).
Base class for all PROG (processing) objects.
Built-in PROG factory implementation.
Manages Programs object lifecycle and dispatch.
CProgHandler()
Construct the Programs handler.
bool isObjectValid(SObjectId::UObjectId &obj) const
Validate object ID in handler collection.
const char * getObjectTypeName() const
Get object type name for logging.
int stopAll()
Stop all Programs objects.
int startAll()
Start all Programs objects.
CObject * getObject(const SObjectId::ObjectId id)
Get a Programs object by object ID.
int initAll()
Configure, bind, and initialize all Program objects.
bool hasThread() const
Check if any Programs are running.
int init(CDescriptor &desc, CIOHandler *io, IProgFactory *f)
Initialize the Programs handler.
~CProgHandler()=default
Destruct the Programs handler.
CProgCommon * getProg(SObjectId::UObjectId &id) const
Get a Programs object by object ID (type-safe).
int deinitAll()
Deinitialize all Programs objects.
Abstract factory interface for PROG object creation.
Out-of-tree user-extension hooks for Dawn.
uint32_t ObjectId
ObjectID type - single 32-bit value.
32-bit encoded object identifier (union with bit field).