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/proto/common.hxx"
16#include "dawn/proto/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 protocol implementations.
Built-in protocol factory.
Manages PROTO object lifecycle and dispatch.
int startAll()
Start all protocol objects.
int init(CDescriptor &desc, CIOHandler *io, IProtoFactory *f)
Initialize protocol handler and instances.
~CProtoHandler()=default
Destructor.
CProtoHandler()
Constructor.
int initAll()
Configure, bind, and initialize all protocol objects.
bool isObjectValid(SObjectId::UObjectId &obj) const
Validate protocol object ID.
CProtoCommon * getProto(SObjectId::UObjectId &id) const
Get protocol object interface.
const char * getObjectTypeName() const
Get object type name for logging.
bool hasThread() const
Check if any protocol is running.
CObject * getObject(const SObjectId::ObjectId id)
Get protocol object by ID.
int stopAll()
Stop all protocol objects.
int deinitAll()
Deinitialize all protocol objects.
Abstract factory interface for protocol 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).