Adaptive Framework
0.9.0
|
Files | |
file | afw_adaptor_impl_declares.h |
Interface afw_interface implementation declares. | |
Macros | |
#define | __AFW_ADAPTOR_IMPL_DECLARES_H__ 1 |
#define | _AFW_IMPLEMENTATION_ID_ "unspecified" |
#define | _AFW_IMPLEMENTATION_SPECIFIC_ NULL |
#define | _AFW_IMPLEMENTATION_SOURCE_FILE_ __FILE__ |
Functions | |
impl_afw_adaptor_destroy (const afw_adaptor_t *instance, afw_xctx_t *xctx) | |
impl_afw_adaptor_create_adaptor_session (const afw_adaptor_t *instance, afw_xctx_t *xctx) | |
impl_afw_adaptor_get_additional_metrics (const afw_adaptor_t *instance, const afw_pool_t *p, afw_xctx_t *xctx) | |
This file should only be included in c source files that implement interface afw_adaptor.
You can find a skeleton for using this #include file in the corresponding source directory in file generated/interface_closet/skeleton_afw_adaptor.c.
Mutiple *_impl.declares.h can be included in each c source file, but only one for each interface name.
After the #include for afw_adaptor_impl_declares.h:
Before including, define the following symbols:
Example:
impl_afw_adaptor_create_adaptor_session | ( | const afw_adaptor_t * | instance, |
afw_xctx_t * | xctx | ||
) |
Definition at line 733 of file afw_adaptor_impl.c.
impl_afw_adaptor_destroy | ( | const afw_adaptor_t * | instance, |
afw_xctx_t * | xctx | ||
) |
Definition at line 713 of file afw_adaptor_impl.c.
impl_afw_adaptor_get_additional_metrics | ( | const afw_adaptor_t * | instance, |
const afw_pool_t * | p, | ||
afw_xctx_t * | xctx | ||
) |
You need to call this here with the name of an object type defined in afw_lmdb/object/_AdaptiveObjectType_/
afw_object_meta_set_object_type_id(metrics, &afw_lmdb_s_????, xctx);
This object type can have the object type for all of the embedded objects – version, statistics, and information. These should also be defined in afw_lmdb/object/_AdaptiveObjectType_/. You should also use afw_object_meta_set_object_type_id() to set the object type of these embedded objects.
Use afw_object_create_embedded() instead of afw_object_create_managed() for the embedded ones. This creates the object and sets the property in the embedding object. So the afw_object_set_property_as_object() for each at the end can be removed.
When this is done and you access /afw/_AdaptiveAdaptor_/... the "metrics.additional" property should have meta.
Definition at line 764 of file afw_adaptor_impl.c.