Doxygen Book
gsttensor_merge.h
Go to the documentation of this file.
1 
28 #ifndef __GST_TENSOR_MERGE_H__
29 #define __GST_TENSOR_MERGE_H__
30 
31 #include <gst/gst.h>
32 #include <tensor_common.h>
33 
34 G_BEGIN_DECLS
35 #define GST_TYPE_TENSOR_MERGE (gst_tensor_merge_get_type ())
36 #define GST_TENSOR_MERGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TENSOR_MERGE, GstTensorMerge))
37 #define GST_TENSOR_MERGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_TENSOR_MERGE, GstTensorMergeClass))
38 #define GST_TENSOR_MERGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_TENSOR_MERGE, GstTensorMergeClass))
39 #define GST_IS_TENSOR_MERGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_TENSOR_MERGE))
40 #define GST_IS_TENSOR_MERGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_TENSOR_MERGE))
41 #define GST_TENSOR_MERGE_CAST(obj)((GstTensorMerge*)(obj))
44 
45 typedef enum
46 {
47  GTT_LINEAR = 0, /* Dimension Change. "dimchg" */
50 
51 typedef enum
52 {
53  LINEAR_FIRST = 0, /* CHANNEL */
54  LINEAR_SECOND = 1, /* WIDTH */
55  LINEAR_THIRD = 2, /* HEIGHT */
56  LINEAR_FOURTH = 3, /* BATCH */
59 
60 
64 typedef struct _tensor_merge_linear {
67 
72 {
73  GstElement element;
74 
75  gboolean silent;
77  GstPad *srcpad;
78  gchar *option;
80  union{
82  };
83 
84  gboolean loaded;
85  GstCollectPads *collect;
86  gboolean negotiated;
87  gboolean need_segment;
90 
91  GstClockTime current_time;
92  gboolean need_set_time;
94 };
95 
100 {
101  GstElementClass parent_class;
102 };
103 
107 GType gst_tensor_merge_get_type (void);
108 
109 G_END_DECLS
110 #endif
_GstTensorMerge::data_linear
tensor_merge_linear data_linear
Definition: gsttensor_merge.h:81
LINEAR_FOURTH
@ LINEAR_FOURTH
Definition: gsttensor_merge.h:56
_GstTensorMergeClass::parent_class
GstElementClass parent_class
Definition: gsttensor_merge.h:101
_tensor_time_sync_data
Tensor Merge/Mux time sync data.
Definition: tensor_common.h:82
_GstTensorMerge::srcpad
GstPad * srcpad
Definition: gsttensor_merge.h:77
_GstTensorMerge::element
GstElement element
Definition: gsttensor_merge.h:73
gst_tensor_merge_get_type
GType gst_tensor_merge_get_type(void)
Get Type function required for gst elements.
LINEAR_FIRST
@ LINEAR_FIRST
Definition: gsttensor_merge.h:53
_GstTensorMerge::send_stream_start
gboolean send_stream_start
Definition: gsttensor_merge.h:89
tensor_merge_linear_mode
tensor_merge_linear_mode
Definition: gsttensor_merge.h:51
_GstTensorMerge::collect
GstCollectPads * collect
Definition: gsttensor_merge.h:85
_GstTensorMerge::sync
tensor_time_sync_data sync
Definition: gsttensor_merge.h:76
_GstTensorMerge::negotiated
gboolean negotiated
Definition: gsttensor_merge.h:86
_GstTensorMerge
Tensor Merge data structure.
Definition: gsttensor_merge.h:71
_GstTensorMerge::tensors_config
GstTensorsConfig tensors_config
Definition: gsttensor_merge.h:93
_tensor_merge_linear
Internal data structure for linear mode.
Definition: gsttensor_merge.h:64
_GstTensorMergeClass
GstTensorMergeClass inherits GstElementClass.
Definition: gsttensor_merge.h:99
_GstTensorMerge::mode
tensor_merge_mode mode
Definition: gsttensor_merge.h:79
LINEAR_END
@ LINEAR_END
Definition: gsttensor_merge.h:57
_GstTensorMerge::need_set_time
gboolean need_set_time
Definition: gsttensor_merge.h:92
_GstTensorMerge::loaded
gboolean loaded
Definition: gsttensor_merge.h:84
_GstTensorMerge::need_stream_start
gboolean need_stream_start
Definition: gsttensor_merge.h:88
_GstTensorMerge::option
gchar * option
Definition: gsttensor_merge.h:78
_GstTensorMerge::silent
gboolean silent
Definition: gsttensor_merge.h:75
GstTensorsConfig
Internal data structure for configured tensors info (for other/tensors).
Definition: tensor_typedef.h:284
tensor_merge_linear
struct _tensor_merge_linear tensor_merge_linear
Internal data structure for linear mode.
tensor_common.h
Common header file for NNStreamer, the GStreamer plugin for neural networks.
_GstTensorMerge::current_time
GstClockTime current_time
Definition: gsttensor_merge.h:91
_GstTensorMerge::need_segment
gboolean need_segment
Definition: gsttensor_merge.h:87
GTT_LINEAR
@ GTT_LINEAR
Definition: gsttensor_merge.h:47
_tensor_merge_linear::direction
tensor_merge_linear_mode direction
Definition: gsttensor_merge.h:65
tensor_merge_mode
tensor_merge_mode
Definition: gsttensor_merge.h:45
GTT_END
@ GTT_END
Definition: gsttensor_merge.h:48
LINEAR_SECOND
@ LINEAR_SECOND
Definition: gsttensor_merge.h:54
LINEAR_THIRD
@ LINEAR_THIRD
Definition: gsttensor_merge.h:55