Doxygen Book
gsttensor_decoder.h
Go to the documentation of this file.
1 
29 #ifndef __GST_TENSOR_DECODER_H__
30 #define __GST_TENSOR_DECODER_H__
31 
32 #include <gst/gst.h>
33 #include <gst/base/gstbasetransform.h>
34 
35 #include "tensor_common.h"
36 #include "nnstreamer_subplugin.h"
38 #include "tensor_decoder_custom.h"
39 
40 G_BEGIN_DECLS
41 
42 #define GST_TYPE_TENSOR_DECODER \
43  (gst_tensordec_get_type())
44 #define GST_TENSOR_DECODER(obj) \
45  (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_TENSOR_DECODER,GstTensorDecoder))
46 #define GST_TENSOR_DECODER_CLASS(klass) \
47  (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_TENSOR_DECODER,GstTensorDecoderClass))
48 #define GST_IS_TENSOR_DECODER(obj) \
49  (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_TENSOR_DECODER))
50 #define GST_IS_TENSOR_DECODER_CLASS(klass) \
51  (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_TENSOR_DECODER))
52 #define GST_TENSOR_DECODER_CAST(obj) ((GstTensorDecoder *)(obj))
53 
56 typedef struct
57 {
59  void * data;
61 
62 #define TensorDecMaxOpNum (9)
63 
68 {
69  GstBaseTransform element;
72  gboolean negotiated;
73  gboolean silent;
74  gchar *config_path;
78  gboolean configured;
82  gboolean is_custom;
84 
86  void *plugin_data;
87 };
88 
97 {
98  GstBaseTransformClass parent_class;
99 };
100 
104 GType gst_tensordec_get_type (void);
105 
106 G_END_DECLS
107 
108 #endif /* __GST_TENSOR_DECODER_H__ */
_GstTensorDecoderDef
Decoder definitions for different semantics of tensors This allows developers to create their own dec...
Definition: nnstreamer_plugin_api_decoder.h:38
_GstTensorDecoder::option
gchar * option[TensorDecMaxOpNum]
Definition: gsttensor_decoder.h:75
_GstTensorDecoder
Internal data structure for tensordec instances.
Definition: gsttensor_decoder.h:67
nnstreamer_subplugin.h
Subplugin Manager for NNStreamer.
decoder_custom_cb_s
Definition: gsttensor_decoder.h:56
_GstTensorDecoder::is_custom
gboolean is_custom
Definition: gsttensor_decoder.h:82
_GstTensorDecoderClass::parent_class
GstBaseTransformClass parent_class
Definition: gsttensor_decoder.h:98
_GstTensorDecoder::config_path
gchar * config_path
Definition: gsttensor_decoder.h:74
tensor_decoder_custom.h
NNStreamer APIs for tensor_decoder custom condition.
GstTensorsConfig
Internal data structure for configured tensors info (for other/tensors).
Definition: tensor_typedef.h:284
gst_tensordec_get_type
GType gst_tensordec_get_type(void)
Get Type function required for gst elements.
TensorDecMaxOpNum
#define TensorDecMaxOpNum
Definition: gsttensor_decoder.h:62
decoder_custom_cb_s::data
void * data
Definition: gsttensor_decoder.h:59
_GstTensorDecoder::silent
gboolean silent
Definition: gsttensor_decoder.h:73
tensor_common.h
Common header file for NNStreamer, the GStreamer plugin for neural networks.
_GstTensorDecoder::element
GstBaseTransform element
Definition: gsttensor_decoder.h:69
decoder_custom_cb_s::func
tensor_decoder_custom func
Definition: gsttensor_decoder.h:58
_GstTensorDecoder::tensor_config
GstTensorsConfig tensor_config
Definition: gsttensor_decoder.h:79
_GstTensorDecoder::custom
decoder_custom_cb_s custom
Definition: gsttensor_decoder.h:83
_GstTensorDecoder::negotiated
gboolean negotiated
Definition: gsttensor_decoder.h:72
_GstTensorDecoder::configured
gboolean configured
Definition: gsttensor_decoder.h:78
nnstreamer_plugin_api_decoder.h
Mandatory APIs for NNStreamer Decoder sub-plugins (Need Gst Devel)
_GstTensorDecoder::decoder
const GstTensorDecoderDef * decoder
Definition: gsttensor_decoder.h:85
_GstTensorDecoderClass
GstTensorDecoderClass inherits GstBaseTransformClass.
Definition: gsttensor_decoder.h:96
_GstTensorDecoder::plugin_data
void * plugin_data
Definition: gsttensor_decoder.h:86
tensor_decoder_custom
G_BEGIN_DECLS typedef int(* tensor_decoder_custom)(const GstTensorMemory *input, const GstTensorsConfig *config, void *data, GstBuffer *out_buf)
Decode from tensors to media as customized operation.
Definition: tensor_decoder_custom.h:32