8#include "dawn/porting/config.hxx"
9#include "dawn/prog/common.hxx"
45 }
typedef SProgAdjustIOBind;
51 }
typedef SProgAdjustParams;
53 explicit CProgAdjust(CDescObject &desc)
62 , srcType(SObjectId::DTYPE_ANY)
63 , outputType(SObjectId::DTYPE_ANY)
67 ~CProgAdjust()
override;
69#ifdef CONFIG_DAWN_OBJECT_HAS_NAME
70 const char *getClassNameStr()
const override
106 SProgAdjustIOBind *cfg;
108 io_ddata_t *outputData;
114 static int ioNotifierCb(
void *priv, io_ddata_t *data);
116 int configureDesc(
const CDescObject &desc);
117 int allocObject(SProgAdjustIOBind *alloc);
119 bool isSupportedConvType(
int sourceType,
int targetType);
121 void handle(io_ddata_t *data);
Data scaling and offset transformation PROG.
int init()
One-time initialize object after bindings are resolved.
@ PROG_ADJUST_CFG_PARAMS
Adjustment parameters (scale, offset)
@ PROG_ADJUST_CFG_LAST
reserved
@ PROG_ADJUST_CFG_IOBIND
I/O binding configuration.
@ PROG_ADJUST_CFG_FIRST
reserved
int doStart()
Start implementation hook.
int configure()
Configure object from descriptor data.
int deinit()
De-initialize object.
Base class for all PROG (processing) objects.
@ PROG_CLASS_ADJUST
Scale/offset adjustment.
CProgCommon(CDescObject &desc)
Constructor.
static ObjectCfgId objectCfg(uint8_t type, uint16_t cls, uint8_t dtype, bool rw, uint16_t size, uint8_t id)
Construct 32-bit ConfigID from component fields.
uint32_t ObjectCfgId
ConfigID type - single 32-bit value.
Out-of-tree user-extension hooks for Dawn.
@ OBJTYPE_PROG
Program/algorithm object type.
@ DTYPE_ANY
Wildcard data type (matches any actual type).
uint32_t ObjectId
ObjectID type - single 32-bit value.
static ObjectId objectId(uint8_t type, uint16_t cls, uint8_t dtype, uint8_t flags, uint16_t priv)
Construct 32-bit ObjectID from component fields.
32-bit encoded object identifier (union with bit field).