return &feature_klass; \
} \
static TYPE_NAME* TYPE_NAME ## _alloc(void) { \
if (feature) { \
((
HT_Feature*)feature)->klass = TYPE_NAME ## _get_class(); \
} \
return feature; \
} \
} \
HT_ErrorCode TYPE_NAME ## _register(void) { \
}
typedefHT_DECLS_BEGIN struct _HT_Feature HT_Feature
Definition: feature.h:13
HT_DECLS_BEGIN HT_API HT_ErrorCode ht_registry_register_feature(HT_FeatureKlass *klass)
Registers new a new feature in the system.
#define HT_CREATE_TYPE(Type)
Allocates memory for a specific Type.
Definition: alloc.h:74
#define HT_INVALID_FEATURE_ID
Defines an invalid feature identifier.
Definition: base_types.h:45
typedefHT_DECLS_BEGIN struct _HT_Timeline HT_Timeline
Definition: timeline.h:23
HT_API HT_Feature * ht_timeline_get_feature(HT_Timeline *timeline, HT_FeatureKlass *feature_klass)
Gets the feature object of a specific class from the pipeline.
#define HT_INLINE
Defines an inline directive for inlining functions.
Definition: macros.h:59
The struct represents a feature class.
Definition: feature.h:28
Defines a set of methods that help defining timeline feature.