diff --git a/docs/DoxygenExtra.css b/docs/DoxygenExtra.css new file mode 100644 index 00000000..82d17767 --- /dev/null +++ b/docs/DoxygenExtra.css @@ -0,0 +1,3 @@ +a + h2.groupheader { + display:none; +} diff --git a/docs/annotated.html b/docs/annotated.html new file mode 100644 index 00000000..c0506456 --- /dev/null +++ b/docs/annotated.html @@ -0,0 +1,206 @@ + + + + + + +ED247 Library: Data Structures + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Data Structures
+
+
+
Here are the data structures with brief descriptions:
+
[detail level 1234]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 Ned247
 Nudp
 CComInterface
 CEmitter
 CReceiver
 Cframe_t
 CReceiverSet
 Csocket_address_equal_to
 Csocket_address_hash
 Csocket_address_t
 Csystem_socket_map_t
 CTransceiver
 Nxml
 CA429Stream
 CA664Stream
 CA825Stream
 CANASignal
 CANAStream
 CChannel
 CComInterface
 CComponent
 CDataTimestamp
 CDISSignal
 CDISStream
 CErrors
 CETHStream
 Cexception
 CHeader
 CNADSignal
 CNADStream
 CNode
 CSERIALStream
 CSignal
 CStream
 CStreamProtocoled
 CStreamSignals
 CUdpSocket
 CVNADSignal
 CVNADStream
 CChannel
 CChannelSet
 Cclient_list
 Cclient_list_container
 CClientStreamListWithData
 CContext
 Cexception
 CFixedStreamAssistant
 CFrameHeader
 Cis_pair
 Cis_pair< std::pair< T, U > >
 Clog
 CSample
 CSignal
 CSignalSet
 CStream
 CStreamAssistant
 CStreamSample
 CStreamSampleRingBuffer
 CStreamSet
 CStreamSignals
 CVNADStreamAssistant
 CCBaseList
 Ced247_internal_channel_list_t
 Ced247_internal_channel_t
 Ced247_internal_context_t
 Ced247_internal_signal_list_t
 Ced247_internal_signal_t
 Ced247_internal_stream_assistant_t
 Ced247_internal_stream_list_t
 Ced247_internal_stream_t
 Ced247_sample_details_sSample Details
 Ced247_timestamp_tTimestamp structure, seconds from EPOCH (January 1st 1970) and nanoseconds offset with reference to previous field
 Chex_stream
 Clibed247_runtime_metrics_t
 Csockaddr_in
 Cstrize
+
+
+
+ + + + diff --git a/docs/annotated_dup.js b/docs/annotated_dup.js new file mode 100644 index 00000000..1d4bad65 --- /dev/null +++ b/docs/annotated_dup.js @@ -0,0 +1,81 @@ +var annotated_dup = +[ + [ "ed247", null, [ + [ "udp", null, [ + [ "ComInterface", "classed247_1_1udp_1_1_com_interface.html", "classed247_1_1udp_1_1_com_interface" ], + [ "Emitter", "classed247_1_1udp_1_1_emitter.html", "classed247_1_1udp_1_1_emitter" ], + [ "Receiver", "classed247_1_1udp_1_1_receiver.html", "classed247_1_1udp_1_1_receiver" ], + [ "ReceiverSet", "classed247_1_1udp_1_1_receiver_set.html", "classed247_1_1udp_1_1_receiver_set" ], + [ "socket_address_equal_to", "structed247_1_1udp_1_1socket__address__equal__to.html", "structed247_1_1udp_1_1socket__address__equal__to" ], + [ "socket_address_hash", "structed247_1_1udp_1_1socket__address__hash.html", "structed247_1_1udp_1_1socket__address__hash" ], + [ "socket_address_t", "structed247_1_1udp_1_1socket__address__t.html", "structed247_1_1udp_1_1socket__address__t" ], + [ "system_socket_map_t", "structed247_1_1udp_1_1system__socket__map__t.html", "structed247_1_1udp_1_1system__socket__map__t" ], + [ "Transceiver", "classed247_1_1udp_1_1_transceiver.html", "classed247_1_1udp_1_1_transceiver" ] + ] ], + [ "xml", null, [ + [ "A429Stream", "structed247_1_1xml_1_1_a429_stream.html", "structed247_1_1xml_1_1_a429_stream" ], + [ "A664Stream", "structed247_1_1xml_1_1_a664_stream.html", "structed247_1_1xml_1_1_a664_stream" ], + [ "A825Stream", "structed247_1_1xml_1_1_a825_stream.html", "structed247_1_1xml_1_1_a825_stream" ], + [ "ANASignal", "structed247_1_1xml_1_1_a_n_a_signal.html", "structed247_1_1xml_1_1_a_n_a_signal" ], + [ "ANAStream", "structed247_1_1xml_1_1_a_n_a_stream.html", "structed247_1_1xml_1_1_a_n_a_stream" ], + [ "Channel", "structed247_1_1xml_1_1_channel.html", "structed247_1_1xml_1_1_channel" ], + [ "ComInterface", "structed247_1_1xml_1_1_com_interface.html", "structed247_1_1xml_1_1_com_interface" ], + [ "Component", "structed247_1_1xml_1_1_component.html", "structed247_1_1xml_1_1_component" ], + [ "DataTimestamp", "structed247_1_1xml_1_1_data_timestamp.html", "structed247_1_1xml_1_1_data_timestamp" ], + [ "DISSignal", "structed247_1_1xml_1_1_d_i_s_signal.html", "structed247_1_1xml_1_1_d_i_s_signal" ], + [ "DISStream", "structed247_1_1xml_1_1_d_i_s_stream.html", "structed247_1_1xml_1_1_d_i_s_stream" ], + [ "Errors", "structed247_1_1xml_1_1_errors.html", "structed247_1_1xml_1_1_errors" ], + [ "ETHStream", "structed247_1_1xml_1_1_e_t_h_stream.html", "structed247_1_1xml_1_1_e_t_h_stream" ], + [ "exception", "classed247_1_1xml_1_1exception.html", "classed247_1_1xml_1_1exception" ], + [ "Header", "structed247_1_1xml_1_1_header.html", "structed247_1_1xml_1_1_header" ], + [ "NADSignal", "structed247_1_1xml_1_1_n_a_d_signal.html", "structed247_1_1xml_1_1_n_a_d_signal" ], + [ "NADStream", "structed247_1_1xml_1_1_n_a_d_stream.html", "structed247_1_1xml_1_1_n_a_d_stream" ], + [ "Node", "structed247_1_1xml_1_1_node.html", "structed247_1_1xml_1_1_node" ], + [ "SERIALStream", "structed247_1_1xml_1_1_s_e_r_i_a_l_stream.html", "structed247_1_1xml_1_1_s_e_r_i_a_l_stream" ], + [ "Signal", "structed247_1_1xml_1_1_signal.html", "structed247_1_1xml_1_1_signal" ], + [ "Stream", "structed247_1_1xml_1_1_stream.html", "structed247_1_1xml_1_1_stream" ], + [ "StreamProtocoled", "structed247_1_1xml_1_1_stream_protocoled.html", "structed247_1_1xml_1_1_stream_protocoled" ], + [ "StreamSignals", "structed247_1_1xml_1_1_stream_signals.html", "structed247_1_1xml_1_1_stream_signals" ], + [ "UdpSocket", "structed247_1_1xml_1_1_udp_socket.html", "structed247_1_1xml_1_1_udp_socket" ], + [ "VNADSignal", "structed247_1_1xml_1_1_v_n_a_d_signal.html", "structed247_1_1xml_1_1_v_n_a_d_signal" ], + [ "VNADStream", "structed247_1_1xml_1_1_v_n_a_d_stream.html", "structed247_1_1xml_1_1_v_n_a_d_stream" ] + ] ], + [ "Channel", "classed247_1_1_channel.html", "classed247_1_1_channel" ], + [ "ChannelSet", "classed247_1_1_channel_set.html", "classed247_1_1_channel_set" ], + [ "client_list", "structed247_1_1client__list.html", "structed247_1_1client__list" ], + [ "client_list_container", "structed247_1_1client__list__container.html", "structed247_1_1client__list__container" ], + [ "ClientStreamListWithData", "structed247_1_1_client_stream_list_with_data.html", "structed247_1_1_client_stream_list_with_data" ], + [ "Context", "classed247_1_1_context.html", "classed247_1_1_context" ], + [ "exception", "classed247_1_1exception.html", "classed247_1_1exception" ], + [ "FixedStreamAssistant", "classed247_1_1_fixed_stream_assistant.html", "classed247_1_1_fixed_stream_assistant" ], + [ "FrameHeader", "classed247_1_1_frame_header.html", "classed247_1_1_frame_header" ], + [ "is_pair", "structed247_1_1is__pair.html", null ], + [ "is_pair< std::pair< T, U > >", "structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4.html", null ], + [ "log", "structed247_1_1log.html", "structed247_1_1log" ], + [ "Sample", "classed247_1_1_sample.html", "classed247_1_1_sample" ], + [ "Signal", "classed247_1_1_signal.html", "classed247_1_1_signal" ], + [ "SignalSet", "classed247_1_1_signal_set.html", "classed247_1_1_signal_set" ], + [ "Stream", "classed247_1_1_stream.html", "classed247_1_1_stream" ], + [ "StreamAssistant", "classed247_1_1_stream_assistant.html", "classed247_1_1_stream_assistant" ], + [ "StreamSample", "classed247_1_1_stream_sample.html", "classed247_1_1_stream_sample" ], + [ "StreamSampleRingBuffer", "classed247_1_1_stream_sample_ring_buffer.html", "classed247_1_1_stream_sample_ring_buffer" ], + [ "StreamSet", "classed247_1_1_stream_set.html", "classed247_1_1_stream_set" ], + [ "StreamSignals", "structed247_1_1_stream_signals.html", "structed247_1_1_stream_signals" ], + [ "VNADStreamAssistant", "classed247_1_1_v_n_a_d_stream_assistant.html", "classed247_1_1_v_n_a_d_stream_assistant" ] + ] ], + [ "CBaseList", "class_c_base_list.html", null ], + [ "ed247_internal_channel_list_t", "structed247__internal__channel__list__t.html", "structed247__internal__channel__list__t" ], + [ "ed247_internal_channel_t", "structed247__internal__channel__t.html", null ], + [ "ed247_internal_context_t", "structed247__internal__context__t.html", null ], + [ "ed247_internal_signal_list_t", "structed247__internal__signal__list__t.html", "structed247__internal__signal__list__t" ], + [ "ed247_internal_signal_t", "structed247__internal__signal__t.html", null ], + [ "ed247_internal_stream_assistant_t", "structed247__internal__stream__assistant__t.html", "structed247__internal__stream__assistant__t" ], + [ "ed247_internal_stream_list_t", "structed247__internal__stream__list__t.html", "structed247__internal__stream__list__t" ], + [ "ed247_internal_stream_t", "structed247__internal__stream__t.html", null ], + [ "ed247_sample_details_s", "structed247__sample__details__s.html", "structed247__sample__details__s" ], + [ "ed247_timestamp_t", "structed247__timestamp__t.html", "structed247__timestamp__t" ], + [ "hex_stream", "classhex__stream.html", "classhex__stream" ], + [ "libed247_runtime_metrics_t", "structlibed247__runtime__metrics__t.html", "structlibed247__runtime__metrics__t" ], + [ "sockaddr_in", "classsockaddr__in.html", null ], + [ "strize", "structstrize.html", "structstrize" ] +]; \ No newline at end of file diff --git a/docs/arrowdown.png b/docs/arrowdown.png new file mode 100644 index 00000000..0b63f6d3 Binary files /dev/null and b/docs/arrowdown.png differ diff --git a/docs/arrowright.png b/docs/arrowright.png new file mode 100644 index 00000000..c6ee22f9 Binary files /dev/null and b/docs/arrowright.png differ diff --git a/docs/bc_s.png b/docs/bc_s.png new file mode 100644 index 00000000..224b29aa Binary files /dev/null and b/docs/bc_s.png differ diff --git a/docs/bdwn.png b/docs/bdwn.png new file mode 100644 index 00000000..940a0b95 Binary files /dev/null and b/docs/bdwn.png differ diff --git a/docs/class_c_base_list.html b/docs/class_c_base_list.html new file mode 100644 index 00000000..df1daa5f --- /dev/null +++ b/docs/class_c_base_list.html @@ -0,0 +1,145 @@ + + + + + + +ED247 Library: CBaseList Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
CBaseList Class Reference
+
+
+
+Inheritance diagram for CBaseList:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for CBaseList:
+
+
Collaboration graph
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/class_c_base_list__coll__graph.map b/docs/class_c_base_list__coll__graph.map new file mode 100644 index 00000000..0d993f79 --- /dev/null +++ b/docs/class_c_base_list__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/class_c_base_list__coll__graph.md5 b/docs/class_c_base_list__coll__graph.md5 new file mode 100644 index 00000000..ec9e5a8b --- /dev/null +++ b/docs/class_c_base_list__coll__graph.md5 @@ -0,0 +1 @@ +11d14d80f3dc438369118cca59942c95 \ No newline at end of file diff --git a/docs/class_c_base_list__coll__graph.png b/docs/class_c_base_list__coll__graph.png new file mode 100644 index 00000000..b7044ea4 Binary files /dev/null and b/docs/class_c_base_list__coll__graph.png differ diff --git a/docs/class_c_base_list__inherit__graph.map b/docs/class_c_base_list__inherit__graph.map new file mode 100644 index 00000000..4b33c4a1 --- /dev/null +++ b/docs/class_c_base_list__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/class_c_base_list__inherit__graph.md5 b/docs/class_c_base_list__inherit__graph.md5 new file mode 100644 index 00000000..4d2f2e4d --- /dev/null +++ b/docs/class_c_base_list__inherit__graph.md5 @@ -0,0 +1 @@ +83128319b2f67cde5c55385f24c9fc9c \ No newline at end of file diff --git a/docs/class_c_base_list__inherit__graph.png b/docs/class_c_base_list__inherit__graph.png new file mode 100644 index 00000000..7fd68b22 Binary files /dev/null and b/docs/class_c_base_list__inherit__graph.png differ diff --git a/docs/classed247_1_1_channel.html b/docs/classed247_1_1_channel.html new file mode 100644 index 00000000..29968995 --- /dev/null +++ b/docs/classed247_1_1_channel.html @@ -0,0 +1,199 @@ + + + + + + +ED247 Library: ed247::Channel Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::Channel Class Reference
+
+
+
+Inheritance diagram for ed247::Channel:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::Channel:
+
+
Collaboration graph
+ + + +
+ + + + +

+Public Types

+using map_uid_stream_t = std::unordered_map< ed247_uid_t, stream_ptr_t >
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

Channel (Context *context, const xml::Channel *configuration)
 
+Channeloperator= (const Channel &)=delete
 
+Channeloperator= (Channel &&)=delete
 
+const std::string & get_name () const
 
+const std::string & get_comment () const
 
+ed247_standard_t get_frame_standard_revision () const
 
+void set_user_data (void *user_data)
 
+void get_user_data (void **user_data)
 
+stream_list_t find_streams (std::string strregex)
 
+stream_ptr_t get_stream (std::string str_name)
 
+ed247_internal_stream_list_tget_client_streams ()
 
+void encode_and_send ()
 
+bool decode (const char *frame, uint32_t frame_size)
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_channel.js b/docs/classed247_1_1_channel.js new file mode 100644 index 00000000..703d1205 --- /dev/null +++ b/docs/classed247_1_1_channel.js @@ -0,0 +1,18 @@ +var classed247_1_1_channel = +[ + [ "map_uid_stream_t", "classed247_1_1_channel.html#acb6f6475ccd183b2f2d883e9c9e97c09", null ], + [ "Channel", "classed247_1_1_channel.html#ab745a10a74f349ecb189072fd304978d", null ], + [ "~Channel", "classed247_1_1_channel.html#ae24e48c50e93aefdeadcbae8b0983a90", null ], + [ "operator=", "classed247_1_1_channel.html#a62f5920e265c71ffb6b98c38649d902c", null ], + [ "operator=", "classed247_1_1_channel.html#a759ebd84fc081defa46ff54e24468805", null ], + [ "get_name", "classed247_1_1_channel.html#aaac5461438c1e3d94d0df3ee26494b79", null ], + [ "get_comment", "classed247_1_1_channel.html#a8028ae1e838fb3dc0c09975d8efc565a", null ], + [ "get_frame_standard_revision", "classed247_1_1_channel.html#a3e311cf3ec45e15ea1588fa43faca708", null ], + [ "set_user_data", "classed247_1_1_channel.html#a9fd2f76cefe25d4b423fa6aa4e65fdf3", null ], + [ "get_user_data", "classed247_1_1_channel.html#a30ad0ccb1a4214e3475f894fa5d773e5", null ], + [ "find_streams", "classed247_1_1_channel.html#ad6cf8909acfe51ce8e9572591f134ddb", null ], + [ "get_stream", "classed247_1_1_channel.html#ad98613478732ad30c1ef9fc692d0bb87", null ], + [ "get_client_streams", "classed247_1_1_channel.html#a0c2924e047551befb07ca1732acc68ca", null ], + [ "encode_and_send", "classed247_1_1_channel.html#a4afc7bbe3015c4744af2b6e553423a24", null ], + [ "decode", "classed247_1_1_channel.html#a1239e1f9bd3787ce7b245cd1676eeb00", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_channel__coll__graph.map b/docs/classed247_1_1_channel__coll__graph.map new file mode 100644 index 00000000..64feac10 --- /dev/null +++ b/docs/classed247_1_1_channel__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1_channel__coll__graph.md5 b/docs/classed247_1_1_channel__coll__graph.md5 new file mode 100644 index 00000000..34b159f4 --- /dev/null +++ b/docs/classed247_1_1_channel__coll__graph.md5 @@ -0,0 +1 @@ +c134afcc6c8e97bf10bdc55dc6f9584a \ No newline at end of file diff --git a/docs/classed247_1_1_channel__coll__graph.png b/docs/classed247_1_1_channel__coll__graph.png new file mode 100644 index 00000000..e1fb6353 Binary files /dev/null and b/docs/classed247_1_1_channel__coll__graph.png differ diff --git a/docs/classed247_1_1_channel__inherit__graph.map b/docs/classed247_1_1_channel__inherit__graph.map new file mode 100644 index 00000000..64feac10 --- /dev/null +++ b/docs/classed247_1_1_channel__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1_channel__inherit__graph.md5 b/docs/classed247_1_1_channel__inherit__graph.md5 new file mode 100644 index 00000000..34b159f4 --- /dev/null +++ b/docs/classed247_1_1_channel__inherit__graph.md5 @@ -0,0 +1 @@ +c134afcc6c8e97bf10bdc55dc6f9584a \ No newline at end of file diff --git a/docs/classed247_1_1_channel__inherit__graph.png b/docs/classed247_1_1_channel__inherit__graph.png new file mode 100644 index 00000000..e1fb6353 Binary files /dev/null and b/docs/classed247_1_1_channel__inherit__graph.png differ diff --git a/docs/classed247_1_1_channel_set.html b/docs/classed247_1_1_channel_set.html new file mode 100644 index 00000000..63df33e2 --- /dev/null +++ b/docs/classed247_1_1_channel_set.html @@ -0,0 +1,166 @@ + + + + + + +ED247 Library: ed247::ChannelSet Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::ChannelSet Class Reference
+
+
+
+Collaboration diagram for ed247::ChannelSet:
+
+
Collaboration graph
+
+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

ChannelSet (Context *context)
 
+ChannelSetoperator= (const ChannelSet &)=delete
 
+ChannelSetoperator= (ChannelSet &&)=delete
 
+channel_ptr_t create (const xml::Channel *configuration)
 
+channel_ptr_t get (std::string str_name)
 
+channel_list_t find (std::string str_regex)
 
+channel_map_t & channels ()
 
+uint32_t size () const
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_channel_set.js b/docs/classed247_1_1_channel_set.js new file mode 100644 index 00000000..8e6f5788 --- /dev/null +++ b/docs/classed247_1_1_channel_set.js @@ -0,0 +1,12 @@ +var classed247_1_1_channel_set = +[ + [ "ChannelSet", "classed247_1_1_channel_set.html#ac067c027cc9628767867ce5d0f809091", null ], + [ "~ChannelSet", "classed247_1_1_channel_set.html#a29a1b1e29b4e8254752c6ef83c6a3708", null ], + [ "operator=", "classed247_1_1_channel_set.html#ab9e0fe0c327f977f1992aafae60f7c97", null ], + [ "operator=", "classed247_1_1_channel_set.html#aa34201b06b05514d8d6fb66260690fbf", null ], + [ "create", "classed247_1_1_channel_set.html#aa91e4e60c5189cb67917fe67870fd60b", null ], + [ "get", "classed247_1_1_channel_set.html#af2c262f7d069047fa0738491bbc4efc1", null ], + [ "find", "classed247_1_1_channel_set.html#aacb5654aba740c7337637890fdd5ed8b", null ], + [ "channels", "classed247_1_1_channel_set.html#a6483f9573bbe18cdaf64c55aa121ac9a", null ], + [ "size", "classed247_1_1_channel_set.html#ae5e63a08d4d09bae9e07f621f2debf73", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_channel_set__coll__graph.map b/docs/classed247_1_1_channel_set__coll__graph.map new file mode 100644 index 00000000..aef53f6e --- /dev/null +++ b/docs/classed247_1_1_channel_set__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classed247_1_1_channel_set__coll__graph.md5 b/docs/classed247_1_1_channel_set__coll__graph.md5 new file mode 100644 index 00000000..179b5c9d --- /dev/null +++ b/docs/classed247_1_1_channel_set__coll__graph.md5 @@ -0,0 +1 @@ +18ac9ae40b0f24d55a2f1ba3a17ce9aa \ No newline at end of file diff --git a/docs/classed247_1_1_channel_set__coll__graph.png b/docs/classed247_1_1_channel_set__coll__graph.png new file mode 100644 index 00000000..35b55300 Binary files /dev/null and b/docs/classed247_1_1_channel_set__coll__graph.png differ diff --git a/docs/classed247_1_1_context.html b/docs/classed247_1_1_context.html new file mode 100644 index 00000000..a942a4ca --- /dev/null +++ b/docs/classed247_1_1_context.html @@ -0,0 +1,241 @@ + + + + + + +ED247 Library: ed247::Context Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::Context Class Reference
+
+
+
+Inheritance diagram for ed247::Context:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::Context:
+
+
Collaboration graph
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

Context (const Context &)=delete
 
Context (Context &&)=delete
 
+Contextoperator= (const Context &)=delete
 
+Contextoperator= (Context &&)=delete
 
+const std::string & get_file_producer_identifier ()
 
+const std::string & get_file_producer_comment ()
 
+const std::string & get_version ()
 
+ed247_component_type_t get_component_type ()
 
+const std::string & get_name ()
 
+const std::string & get_comment ()
 
+ed247_uid_t get_identifier ()
 
+ed247_standard_t get_standard_revision ()
 
+void set_user_data (void *user_data)
 
+void get_user_data (void **user_data)
 
+udp::ReceiverSetget_receiver_set ()
 
+SignalSetget_signal_set ()
 
+StreamSetget_stream_set ()
 
+ChannelSetget_channel_set ()
 
+ed247_internal_stream_list_tget_client_streams ()
 
+ed247_internal_stream_list_tget_client_streams_with_data ()
 
+ed247_internal_channel_list_tget_client_channels ()
 
+bool stream_assistants_written_push_samples (const ed247_timestamp_t *data_timestamp)
 
+bool stream_assistants_pop_samples ()
 
+void send_pushed_samples ()
 
+ed247_status_t wait_frame (int32_t timeout_us)
 
+ed247_status_t wait_during (int32_t duration_us)
 
+ + + + + +

+Static Public Member Functions

+static Contextcreate_from_filepath (std::string ecic_filepath)
 
+static Contextcreate_from_content (std::string ecic_content)
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_context.js b/docs/classed247_1_1_context.js new file mode 100644 index 00000000..4aa436fa --- /dev/null +++ b/docs/classed247_1_1_context.js @@ -0,0 +1,29 @@ +var classed247_1_1_context = +[ + [ "Context", "classed247_1_1_context.html#a0afea954fdaec345e97fe855af715abd", null ], + [ "Context", "classed247_1_1_context.html#a58f6b0b8bdc872ba79d573d0bd4e7878", null ], + [ "operator=", "classed247_1_1_context.html#a94582fbb1419bee9077fd6641c8465bb", null ], + [ "operator=", "classed247_1_1_context.html#ac2f05b1c0ac67f108078d73340bc6066", null ], + [ "get_file_producer_identifier", "classed247_1_1_context.html#a36ae7646108afd44b91f698c1fbb1d04", null ], + [ "get_file_producer_comment", "classed247_1_1_context.html#aedb9956e26f991db4e75e1212e5f03ce", null ], + [ "get_version", "classed247_1_1_context.html#aac88cfcefa66d6f31c534f54d53f5420", null ], + [ "get_component_type", "classed247_1_1_context.html#aa5f216bab2e616f0e9d778fa8c186039", null ], + [ "get_name", "classed247_1_1_context.html#a14d3e2d19212710bc4d9839c9d729e67", null ], + [ "get_comment", "classed247_1_1_context.html#a3124f1866106adf1be82858c72cbdea4", null ], + [ "get_identifier", "classed247_1_1_context.html#a463bc6d5dae048c8ca06b0aaa856ce55", null ], + [ "get_standard_revision", "classed247_1_1_context.html#a00d331e1156863e6fa593e6c4729f9f1", null ], + [ "set_user_data", "classed247_1_1_context.html#a92e554b3e7c0b9c841325a36a717d86a", null ], + [ "get_user_data", "classed247_1_1_context.html#a171f60e1cfaeefd7e89852ffbcbff5f4", null ], + [ "get_receiver_set", "classed247_1_1_context.html#af4e82bdd95a8b3aabff19533c160cca3", null ], + [ "get_signal_set", "classed247_1_1_context.html#a6228de4b40cbcf45466f781c0c95f13e", null ], + [ "get_stream_set", "classed247_1_1_context.html#aaeef7dc15132a2e7df9b0ed793e95718", null ], + [ "get_channel_set", "classed247_1_1_context.html#a53d0088392d479b84d1f4ff6744aa0ef", null ], + [ "get_client_streams", "classed247_1_1_context.html#ac726432fe4461c38816b53d124deda4f", null ], + [ "get_client_streams_with_data", "classed247_1_1_context.html#ad78f638fa76906db9e21a28d09b4fbe2", null ], + [ "get_client_channels", "classed247_1_1_context.html#a10d3fd8bca3ffd476dfcebc325783144", null ], + [ "stream_assistants_written_push_samples", "classed247_1_1_context.html#a1488dcaf8a5b19ff9d3fb2a26ae54567", null ], + [ "stream_assistants_pop_samples", "classed247_1_1_context.html#a525f911ce1132242342cc809576cf977", null ], + [ "send_pushed_samples", "classed247_1_1_context.html#abf6d4e0e4d0e0389009e7abe90494295", null ], + [ "wait_frame", "classed247_1_1_context.html#a60f47d2702f33ecafcc04463a728655d", null ], + [ "wait_during", "classed247_1_1_context.html#a9a40270ea576ef33e8364cc8438716a7", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_context__coll__graph.map b/docs/classed247_1_1_context__coll__graph.map new file mode 100644 index 00000000..eaf0218e --- /dev/null +++ b/docs/classed247_1_1_context__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1_context__coll__graph.md5 b/docs/classed247_1_1_context__coll__graph.md5 new file mode 100644 index 00000000..4db7bb42 --- /dev/null +++ b/docs/classed247_1_1_context__coll__graph.md5 @@ -0,0 +1 @@ +5979263cf0b5a405611eff2ba260a78c \ No newline at end of file diff --git a/docs/classed247_1_1_context__coll__graph.png b/docs/classed247_1_1_context__coll__graph.png new file mode 100644 index 00000000..ce9272d7 Binary files /dev/null and b/docs/classed247_1_1_context__coll__graph.png differ diff --git a/docs/classed247_1_1_context__inherit__graph.map b/docs/classed247_1_1_context__inherit__graph.map new file mode 100644 index 00000000..eaf0218e --- /dev/null +++ b/docs/classed247_1_1_context__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1_context__inherit__graph.md5 b/docs/classed247_1_1_context__inherit__graph.md5 new file mode 100644 index 00000000..4db7bb42 --- /dev/null +++ b/docs/classed247_1_1_context__inherit__graph.md5 @@ -0,0 +1 @@ +5979263cf0b5a405611eff2ba260a78c \ No newline at end of file diff --git a/docs/classed247_1_1_context__inherit__graph.png b/docs/classed247_1_1_context__inherit__graph.png new file mode 100644 index 00000000..ce9272d7 Binary files /dev/null and b/docs/classed247_1_1_context__inherit__graph.png differ diff --git a/docs/classed247_1_1_fixed_stream_assistant.html b/docs/classed247_1_1_fixed_stream_assistant.html new file mode 100644 index 00000000..860286a8 --- /dev/null +++ b/docs/classed247_1_1_fixed_stream_assistant.html @@ -0,0 +1,209 @@ + + + + + + +ED247 Library: ed247::FixedStreamAssistant Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::FixedStreamAssistant Class Reference
+
+
+
+Inheritance diagram for ed247::FixedStreamAssistant:
+
+
Inheritance graph
+ + + + +
+
+Collaboration diagram for ed247::FixedStreamAssistant:
+
+
Collaboration graph
+ + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

FixedStreamAssistant (Stream *stream)
 
+virtual bool write (const Signal &signal, const void *data, uint32_t size) override
 
+virtual bool read (const Signal &signal, const void **data, uint32_t *size) override
 
+virtual bool push (const ed247_timestamp_t *data_timestamp, bool *full) override
 
+virtual ed247_status_t pop (const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **frame_details, bool *empty) override
 
- Public Member Functions inherited from ed247::StreamAssistant
StreamAssistant (Stream *stream)
 
+Streamget_api_stream ()
 
+bool was_written ()
 
+bool push_if_was_written (const ed247_timestamp_t *data_timestamp, bool *full)
 
+ + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from ed247::StreamAssistant
ED247_FRIEND_TEST ()
 
- Protected Attributes inherited from ed247::StreamAssistant
+Stream_stream
 
+Sample _buffer
 
+bool _was_written
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_fixed_stream_assistant.js b/docs/classed247_1_1_fixed_stream_assistant.js new file mode 100644 index 00000000..aa0a33af --- /dev/null +++ b/docs/classed247_1_1_fixed_stream_assistant.js @@ -0,0 +1,8 @@ +var classed247_1_1_fixed_stream_assistant = +[ + [ "FixedStreamAssistant", "classed247_1_1_fixed_stream_assistant.html#a89cfdb8c2ad64fe526f86e5de9fa550b", null ], + [ "write", "classed247_1_1_fixed_stream_assistant.html#a5040d848ec248285a7cb52397de303ea", null ], + [ "read", "classed247_1_1_fixed_stream_assistant.html#a5cdccc7830145e724ef496b73389b82a", null ], + [ "push", "classed247_1_1_fixed_stream_assistant.html#a893eb98e048fc03b9babec912d111f64", null ], + [ "pop", "classed247_1_1_fixed_stream_assistant.html#aa85c7eb5bdf6f93aa1b532303077aacf", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_fixed_stream_assistant__coll__graph.map b/docs/classed247_1_1_fixed_stream_assistant__coll__graph.map new file mode 100644 index 00000000..f9b34926 --- /dev/null +++ b/docs/classed247_1_1_fixed_stream_assistant__coll__graph.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/classed247_1_1_fixed_stream_assistant__coll__graph.md5 b/docs/classed247_1_1_fixed_stream_assistant__coll__graph.md5 new file mode 100644 index 00000000..85546161 --- /dev/null +++ b/docs/classed247_1_1_fixed_stream_assistant__coll__graph.md5 @@ -0,0 +1 @@ +bc8c0809fa7f63c12931ef757b6f8dd7 \ No newline at end of file diff --git a/docs/classed247_1_1_fixed_stream_assistant__coll__graph.png b/docs/classed247_1_1_fixed_stream_assistant__coll__graph.png new file mode 100644 index 00000000..6db09bce Binary files /dev/null and b/docs/classed247_1_1_fixed_stream_assistant__coll__graph.png differ diff --git a/docs/classed247_1_1_fixed_stream_assistant__inherit__graph.map b/docs/classed247_1_1_fixed_stream_assistant__inherit__graph.map new file mode 100644 index 00000000..aee71c75 --- /dev/null +++ b/docs/classed247_1_1_fixed_stream_assistant__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/classed247_1_1_fixed_stream_assistant__inherit__graph.md5 b/docs/classed247_1_1_fixed_stream_assistant__inherit__graph.md5 new file mode 100644 index 00000000..ffd7163d --- /dev/null +++ b/docs/classed247_1_1_fixed_stream_assistant__inherit__graph.md5 @@ -0,0 +1 @@ +8186a84c9e942aa11a61c074469c8542 \ No newline at end of file diff --git a/docs/classed247_1_1_fixed_stream_assistant__inherit__graph.png b/docs/classed247_1_1_fixed_stream_assistant__inherit__graph.png new file mode 100644 index 00000000..e94b31f4 Binary files /dev/null and b/docs/classed247_1_1_fixed_stream_assistant__inherit__graph.png differ diff --git a/docs/classed247_1_1_frame_header.html b/docs/classed247_1_1_frame_header.html new file mode 100644 index 00000000..d6919829 --- /dev/null +++ b/docs/classed247_1_1_frame_header.html @@ -0,0 +1,160 @@ + + + + + + +ED247 Library: ed247::FrameHeader Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::FrameHeader Class Reference
+
+
+
+Collaboration diagram for ed247::FrameHeader:
+
+
Collaboration graph
+
+ + + + + + + + + + + + + + +

+Public Member Functions

FrameHeader (const xml::Header &configuration, ed247_uid_t ec_id, const std::string &channel_name)
 
+void encode (char *frame, uint32_t frame_size, uint32_t &frame_index)
 
+bool decode (const char *frame, uint32_t frame_size, uint32_t &frame_index)
 
+uint32_t get_size () const
 
+const ed247_sample_details_tget_recv_frame_details () const
 
+uint16_t get_next_serial_number () const
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_frame_header.js b/docs/classed247_1_1_frame_header.js new file mode 100644 index 00000000..0b413aed --- /dev/null +++ b/docs/classed247_1_1_frame_header.js @@ -0,0 +1,9 @@ +var classed247_1_1_frame_header = +[ + [ "FrameHeader", "classed247_1_1_frame_header.html#ad94135e0c0b3ffc5bd1ac8539446be94", null ], + [ "encode", "classed247_1_1_frame_header.html#ab6761ec5d61bffad14273812c18cd655", null ], + [ "decode", "classed247_1_1_frame_header.html#a9b7e1d1b21a30ff76b4083470450238c", null ], + [ "get_size", "classed247_1_1_frame_header.html#a56e7b1ad44be8401ecfc7cf0e5ac1fc4", null ], + [ "get_recv_frame_details", "classed247_1_1_frame_header.html#a527e729756b118f4ba03cbdf7fb38443", null ], + [ "get_next_serial_number", "classed247_1_1_frame_header.html#aa97e1befbd7b205bc3603b7ea07448cd", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_frame_header__coll__graph.map b/docs/classed247_1_1_frame_header__coll__graph.map new file mode 100644 index 00000000..d3889594 --- /dev/null +++ b/docs/classed247_1_1_frame_header__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classed247_1_1_frame_header__coll__graph.md5 b/docs/classed247_1_1_frame_header__coll__graph.md5 new file mode 100644 index 00000000..eafc7c08 --- /dev/null +++ b/docs/classed247_1_1_frame_header__coll__graph.md5 @@ -0,0 +1 @@ +a476208492a3f1007446b80268b380c3 \ No newline at end of file diff --git a/docs/classed247_1_1_frame_header__coll__graph.png b/docs/classed247_1_1_frame_header__coll__graph.png new file mode 100644 index 00000000..cdafa1b4 Binary files /dev/null and b/docs/classed247_1_1_frame_header__coll__graph.png differ diff --git a/docs/classed247_1_1_sample.html b/docs/classed247_1_1_sample.html new file mode 100644 index 00000000..36d5e6ff --- /dev/null +++ b/docs/classed247_1_1_sample.html @@ -0,0 +1,192 @@ + + + + + + +ED247 Library: ed247::Sample Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::Sample Class Reference
+
+
+
+Inheritance diagram for ed247::Sample:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::Sample:
+
+
Collaboration graph
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

Sample (uint32_t capacity)
 
Sample (const Sample &other)=delete
 
+Sampleoperator= (const Sample &other)=delete
 
Sample (Sample &&other)
 
+void allocate (uint32_t capacity)
 
+const uint32_t & size () const
 
+const uint32_t & capacity () const
 
+const char * data () const
 
+bool empty () const
 
+bool copy (const char *data, const uint32_t &size)
 
+bool copy (const void *data, const uint32_t &size)
 
+char * data_rw ()
 
+void set_size (const uint32_t &size)
 
+void reset ()
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_sample.js b/docs/classed247_1_1_sample.js new file mode 100644 index 00000000..d6ef9423 --- /dev/null +++ b/docs/classed247_1_1_sample.js @@ -0,0 +1,19 @@ +var classed247_1_1_sample = +[ + [ "Sample", "classed247_1_1_sample.html#ac453df21c20c420d184354a4e642bc13", null ], + [ "~Sample", "classed247_1_1_sample.html#ad051ead45d810241269ebf9d0d99fb8a", null ], + [ "Sample", "classed247_1_1_sample.html#a1cbd96bf3aab8b927bc1423e00b16abe", null ], + [ "Sample", "classed247_1_1_sample.html#ac4d050d0b718b04749735846dddbf118", null ], + [ "Sample", "classed247_1_1_sample.html#ae7a5b55c40b2e6084ee876e3794fa305", null ], + [ "operator=", "classed247_1_1_sample.html#a8fe923114ed77e81b653e8dd33b0e54b", null ], + [ "allocate", "classed247_1_1_sample.html#aac0c12561e2cb329f2698272d55ca2ae", null ], + [ "size", "classed247_1_1_sample.html#a7591776c8cd3cc8d5ec6194621789eb1", null ], + [ "capacity", "classed247_1_1_sample.html#a8e1f99f8ea4a501013fced557aa54746", null ], + [ "data", "classed247_1_1_sample.html#a27c89c237fb09140004e052db2762069", null ], + [ "empty", "classed247_1_1_sample.html#a0902650ff1825e76c37d7b2d009df4dc", null ], + [ "copy", "classed247_1_1_sample.html#a41a27722b2babd1a95923cb71d937620", null ], + [ "copy", "classed247_1_1_sample.html#a51eae4911d3d0e6b3243dda5a1f3b48e", null ], + [ "data_rw", "classed247_1_1_sample.html#a29a13635ade0775af0f022d74e60c35f", null ], + [ "set_size", "classed247_1_1_sample.html#a2862c261eda2c77934129fbeafa1d7e1", null ], + [ "reset", "classed247_1_1_sample.html#a4b065762cf9649d13b342276fd2b12df", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_sample__coll__graph.map b/docs/classed247_1_1_sample__coll__graph.map new file mode 100644 index 00000000..ea632ad5 --- /dev/null +++ b/docs/classed247_1_1_sample__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classed247_1_1_sample__coll__graph.md5 b/docs/classed247_1_1_sample__coll__graph.md5 new file mode 100644 index 00000000..754c1365 --- /dev/null +++ b/docs/classed247_1_1_sample__coll__graph.md5 @@ -0,0 +1 @@ +44016108762315185f23b84eded09305 \ No newline at end of file diff --git a/docs/classed247_1_1_sample__coll__graph.png b/docs/classed247_1_1_sample__coll__graph.png new file mode 100644 index 00000000..1c70973d Binary files /dev/null and b/docs/classed247_1_1_sample__coll__graph.png differ diff --git a/docs/classed247_1_1_sample__inherit__graph.map b/docs/classed247_1_1_sample__inherit__graph.map new file mode 100644 index 00000000..053fb0a1 --- /dev/null +++ b/docs/classed247_1_1_sample__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1_sample__inherit__graph.md5 b/docs/classed247_1_1_sample__inherit__graph.md5 new file mode 100644 index 00000000..573dfe94 --- /dev/null +++ b/docs/classed247_1_1_sample__inherit__graph.md5 @@ -0,0 +1 @@ +5b92d1d04ef1599de0466c9c5a53f1bd \ No newline at end of file diff --git a/docs/classed247_1_1_sample__inherit__graph.png b/docs/classed247_1_1_sample__inherit__graph.png new file mode 100644 index 00000000..74fc0d2a Binary files /dev/null and b/docs/classed247_1_1_sample__inherit__graph.png differ diff --git a/docs/classed247_1_1_signal.html b/docs/classed247_1_1_signal.html new file mode 100644 index 00000000..6527d06e --- /dev/null +++ b/docs/classed247_1_1_signal.html @@ -0,0 +1,210 @@ + + + + + + +ED247 Library: ed247::Signal Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::Signal Class Reference
+
+
+
+Inheritance diagram for ed247::Signal:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::Signal:
+
+
Collaboration graph
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

Signal (const xml::Signal *configuration, ed247_internal_stream_t *ed247_api_stream)
 
Signal (const Signal &other)=delete
 
+Signaloperator= (const Signal &other)=delete
 
+const std::string & get_name () const
 
+const std::string & get_comment () const
 
+const std::string & get_icd () const
 
+ed247_signal_type_t get_type () const
 
+uint32_t get_byte_offset () const
 
+const std::string & get_analogue_electrical_unit () const
 
+ed247_nad_type_t get_nad_type () const
 
+uint32_t get_nad_type_size () const
 
+const std::string & get_nad_unit () const
 
+const std::vector< uint32_t > get_nad_dimensions ()
 
+uint32_t get_vnad_position () const
 
+uint32_t get_vnad_max_number () const
 
+uint32_t get_sample_max_size_bytes () const
 
+ed247_internal_stream_tget_api_stream ()
 
+void set_user_data (void *user_data)
 
+void get_user_data (void **user_data)
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_signal.js b/docs/classed247_1_1_signal.js new file mode 100644 index 00000000..15629095 --- /dev/null +++ b/docs/classed247_1_1_signal.js @@ -0,0 +1,23 @@ +var classed247_1_1_signal = +[ + [ "Signal", "classed247_1_1_signal.html#a1633d9a08b69ad6e733347b355f214ca", null ], + [ "~Signal", "classed247_1_1_signal.html#a55112be18e1def40ed2519e6d31b6359", null ], + [ "Signal", "classed247_1_1_signal.html#a6f466521758996ccba8c8fc032a8834f", null ], + [ "operator=", "classed247_1_1_signal.html#a53bc8a7b94e101c8edfa33fc00bd1983", null ], + [ "get_name", "classed247_1_1_signal.html#a3b925a040afbf570df3a4bbd8b80bc5a", null ], + [ "get_comment", "classed247_1_1_signal.html#a87cab4b6907a9774c0cf8b80543966a4", null ], + [ "get_icd", "classed247_1_1_signal.html#a04b9cc42ffdf3d910aa85a2b5a0b92ed", null ], + [ "get_type", "classed247_1_1_signal.html#a69d0ffd73181a8865c2a9f5f0f989537", null ], + [ "get_byte_offset", "classed247_1_1_signal.html#ac98cfdbb9602c11d54068ea0f965742a", null ], + [ "get_analogue_electrical_unit", "classed247_1_1_signal.html#a1214c35b9fe9188f8b8ad4e0e5aec7c9", null ], + [ "get_nad_type", "classed247_1_1_signal.html#a86098b478f398b14541b004ec618d428", null ], + [ "get_nad_type_size", "classed247_1_1_signal.html#abdc8ccc07a075be51db8b489017e8209", null ], + [ "get_nad_unit", "classed247_1_1_signal.html#aaab58cadbee7895de818671d4497d27e", null ], + [ "get_nad_dimensions", "classed247_1_1_signal.html#a91e7fcdb450e45625e593495ce41f2bf", null ], + [ "get_vnad_position", "classed247_1_1_signal.html#a617665ccdba41bd2924fc33d9429302c", null ], + [ "get_vnad_max_number", "classed247_1_1_signal.html#a53a7a06ffab6681cde1f10544a0ca1cb", null ], + [ "get_sample_max_size_bytes", "classed247_1_1_signal.html#abf88fddf8e35a5a0a830a28b17059049", null ], + [ "get_api_stream", "classed247_1_1_signal.html#a882f6ca4e18cff56188afa638cedc761", null ], + [ "set_user_data", "classed247_1_1_signal.html#affa0cf6b6a4320863d1cf532556882f5", null ], + [ "get_user_data", "classed247_1_1_signal.html#aaf24ad69fcb4099d7492ad0c4210385d", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_signal__coll__graph.map b/docs/classed247_1_1_signal__coll__graph.map new file mode 100644 index 00000000..0cbfbb66 --- /dev/null +++ b/docs/classed247_1_1_signal__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1_signal__coll__graph.md5 b/docs/classed247_1_1_signal__coll__graph.md5 new file mode 100644 index 00000000..49ff241e --- /dev/null +++ b/docs/classed247_1_1_signal__coll__graph.md5 @@ -0,0 +1 @@ +5b1155a1e8dd48fb8be561a44e9ccd7e \ No newline at end of file diff --git a/docs/classed247_1_1_signal__coll__graph.png b/docs/classed247_1_1_signal__coll__graph.png new file mode 100644 index 00000000..1e164096 Binary files /dev/null and b/docs/classed247_1_1_signal__coll__graph.png differ diff --git a/docs/classed247_1_1_signal__inherit__graph.map b/docs/classed247_1_1_signal__inherit__graph.map new file mode 100644 index 00000000..0cbfbb66 --- /dev/null +++ b/docs/classed247_1_1_signal__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1_signal__inherit__graph.md5 b/docs/classed247_1_1_signal__inherit__graph.md5 new file mode 100644 index 00000000..49ff241e --- /dev/null +++ b/docs/classed247_1_1_signal__inherit__graph.md5 @@ -0,0 +1 @@ +5b1155a1e8dd48fb8be561a44e9ccd7e \ No newline at end of file diff --git a/docs/classed247_1_1_signal__inherit__graph.png b/docs/classed247_1_1_signal__inherit__graph.png new file mode 100644 index 00000000..1e164096 Binary files /dev/null and b/docs/classed247_1_1_signal__inherit__graph.png differ diff --git a/docs/classed247_1_1_signal_set.html b/docs/classed247_1_1_signal_set.html new file mode 100644 index 00000000..bad87cc6 --- /dev/null +++ b/docs/classed247_1_1_signal_set.html @@ -0,0 +1,171 @@ + + + + + + +ED247 Library: ed247::SignalSet Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::SignalSet Class Reference
+
+
+
+Collaboration diagram for ed247::SignalSet:
+
+
Collaboration graph
+
+ + + + + + + + + + + + +

+Public Member Functions

+signal_ptr_t create (const xml::Signal *configuration, ed247_internal_stream_t *ed247_api_stream)
 
+signal_ptr_t get (const std::string &name)
 
+signal_list_t find (const std::string &regex)
 
+SignalSetoperator= (const SignalSet &)=delete
 
+SignalSetoperator= (SignalSet &&)=delete
 
+ + + +

+Protected Member Functions

ED247_FRIEND_TEST ()
 
+ + + +

+Protected Attributes

+std::unordered_map< std::string, signal_ptr_t > _signals
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_signal_set.js b/docs/classed247_1_1_signal_set.js new file mode 100644 index 00000000..5dfdf427 --- /dev/null +++ b/docs/classed247_1_1_signal_set.js @@ -0,0 +1,12 @@ +var classed247_1_1_signal_set = +[ + [ "SignalSet", "classed247_1_1_signal_set.html#a90c0e4fba384c2d727120ffa908e2dca", null ], + [ "~SignalSet", "classed247_1_1_signal_set.html#aa001801471a724ec2ec93fda99e85334", null ], + [ "create", "classed247_1_1_signal_set.html#a237742677c8575dd413aeacd1247ff66", null ], + [ "get", "classed247_1_1_signal_set.html#aefb4e69817ce5c3800d985e74c17e643", null ], + [ "find", "classed247_1_1_signal_set.html#ac2d7d573cee21d9e231127584adbfa7a", null ], + [ "operator=", "classed247_1_1_signal_set.html#a434dcfa59fe3d47483a75f3d4806508a", null ], + [ "operator=", "classed247_1_1_signal_set.html#aa9f407e4c13e485d20bc69225ee433e4", null ], + [ "ED247_FRIEND_TEST", "classed247_1_1_signal_set.html#a151e1ff47eb174d3ffe1c2ee6eee1cb4", null ], + [ "_signals", "classed247_1_1_signal_set.html#adb3387f78c08a74d111101615b88392c", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_signal_set__coll__graph.map b/docs/classed247_1_1_signal_set__coll__graph.map new file mode 100644 index 00000000..8df1ad83 --- /dev/null +++ b/docs/classed247_1_1_signal_set__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classed247_1_1_signal_set__coll__graph.md5 b/docs/classed247_1_1_signal_set__coll__graph.md5 new file mode 100644 index 00000000..ccb68cdb --- /dev/null +++ b/docs/classed247_1_1_signal_set__coll__graph.md5 @@ -0,0 +1 @@ +172f911b3497f2c4dd87d4f2bdcfa4e1 \ No newline at end of file diff --git a/docs/classed247_1_1_signal_set__coll__graph.png b/docs/classed247_1_1_signal_set__coll__graph.png new file mode 100644 index 00000000..a4a54711 Binary files /dev/null and b/docs/classed247_1_1_signal_set__coll__graph.png differ diff --git a/docs/classed247_1_1_stream.html b/docs/classed247_1_1_stream.html new file mode 100644 index 00000000..c5876661 --- /dev/null +++ b/docs/classed247_1_1_stream.html @@ -0,0 +1,291 @@ + + + + + + +ED247 Library: ed247::Stream Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::Stream Class Reference
+
+
+
+Inheritance diagram for ed247::Stream:
+
+
Inheritance graph
+ + + + +
+
+Collaboration diagram for ed247::Stream:
+
+
Collaboration graph
+ + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

Stream (Context *context, const xml::Stream *configuration, ed247_internal_channel_t *ed247_api_channel, uint32_t sample_size_size)
 
Stream (const Stream &other)=delete
 
+Streamoperator= (const Stream &other)=delete
 
+const std::string & get_name () const
 
+const std::string & get_icd () const
 
+const std::string & get_comment () const
 
+ed247_uid_t get_uid () const
 
+ed247_stream_type_t get_type () const
 
+ed247_direction_t get_direction () const
 
+uint32_t get_sample_max_size_bytes () const
 
+uint32_t get_sample_max_number () const
 
+uint32_t get_max_size () const
 
+ed247_internal_channel_tget_api_channel ()
 
+void set_user_data (void *user_data)
 
+void get_user_data (void **user_data)
 
+bool is_signal_based () const
 
+virtual uint32_t get_sampling_period_us ()
 
+StreamAssistantget_assistant ()
 
+signal_list_t & get_signals ()
 
+ed247_internal_signal_list_tget_client_signals ()
 
+signal_list_t find_signals (std::string str_regex)
 
+signal_ptr_t get_signal (std::string str_name)
 
+uint32_t get_incoming_sample_number ()
 
+uint32_t get_outgoing_sample_number ()
 
+bool push_sample (const void *sample_data, uint32_t sample_size, const ed247_timestamp_t *data_timestamp, bool *full)
 
+StreamSamplepop_sample (bool *empty)
 
+uint32_t encode (char *frame, uint32_t frame_size)
 
+bool decode (const char *frame, uint32_t frame_size, const ed247_sample_details_t &frame_details)
 
+ed247_status_t register_callback (ed247_context_t context, ed247_stream_recv_callback_t callback)
 
+ed247_status_t unregister_callback (ed247_context_t context, ed247_stream_recv_callback_t callback)
 
+bool run_callbacks ()
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

+Context_context
 
+const xml::Stream_configuration
 
+uint32_t _sample_size_size
 
+uint32_t _sample_first_header_size
 
+uint32_t _sample_next_header_size
 
+uint32_t _max_size
 
+signal_list_t _signals
 
+std::unique_ptr< ed247_internal_signal_list_t_client_signals
 
+std::unique_ptr< StreamAssistant_assistant
 
+StreamSampleRingBuffer _recv_stack
 
+StreamSampleRingBuffer _send_stack
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_stream.js b/docs/classed247_1_1_stream.js new file mode 100644 index 00000000..2e6c0b61 --- /dev/null +++ b/docs/classed247_1_1_stream.js @@ -0,0 +1,46 @@ +var classed247_1_1_stream = +[ + [ "Stream", "classed247_1_1_stream.html#a611a7a0db3c6f90608187279343b3add", null ], + [ "~Stream", "classed247_1_1_stream.html#a402d7011a44b80135c416075cf58c078", null ], + [ "Stream", "classed247_1_1_stream.html#ae261ba10bf82fbcc8805efd203153574", null ], + [ "operator=", "classed247_1_1_stream.html#afc8a9a5a342bbca90001aa466f923b49", null ], + [ "get_name", "classed247_1_1_stream.html#ad0917d0845bf7528bc884f97a7c72bb2", null ], + [ "get_icd", "classed247_1_1_stream.html#ab3f600e2f78f3bb749091ad61e6f653d", null ], + [ "get_comment", "classed247_1_1_stream.html#a349f64bcce529121835ae3fa1f72568c", null ], + [ "get_uid", "classed247_1_1_stream.html#ac3bb20c689808799f85d415e1ca7485a", null ], + [ "get_type", "classed247_1_1_stream.html#a1fdc25940aedd2e3767e633c3671300c", null ], + [ "get_direction", "classed247_1_1_stream.html#af4f13ac1b913330a226799c6c2f52e53", null ], + [ "get_sample_max_size_bytes", "classed247_1_1_stream.html#acbb950bc7d4dfff374803be38b51898c", null ], + [ "get_sample_max_number", "classed247_1_1_stream.html#a77c3160076ad9b6f949c707b1db8d430", null ], + [ "get_max_size", "classed247_1_1_stream.html#ae756978d0f253b2d3319c1e38b39ed91", null ], + [ "get_api_channel", "classed247_1_1_stream.html#a794984c99a99b5ee0307dd52709d1fe4", null ], + [ "set_user_data", "classed247_1_1_stream.html#a6ef6adca2030af1e1b0f92257e6b4e39", null ], + [ "get_user_data", "classed247_1_1_stream.html#ae8faca216662f796fc9d767cd4ffc7e2", null ], + [ "is_signal_based", "classed247_1_1_stream.html#aceada38299dc49b2a6e2604cdd87a842", null ], + [ "get_sampling_period_us", "classed247_1_1_stream.html#a5a7929e1dcaeb1b7c560a85a316c5e02", null ], + [ "get_assistant", "classed247_1_1_stream.html#aa549051b2d41551e8e461331741a5292", null ], + [ "get_signals", "classed247_1_1_stream.html#ade4b10eeca5c37ad0b238f3f3c875a8c", null ], + [ "get_client_signals", "classed247_1_1_stream.html#a5e5719d7b058309268fcdcb3d5621536", null ], + [ "find_signals", "classed247_1_1_stream.html#a213bf3f6d04b6520a17e0b89da66300b", null ], + [ "get_signal", "classed247_1_1_stream.html#ab32fe358846b5f1a35d6482cdb28e436", null ], + [ "get_incoming_sample_number", "classed247_1_1_stream.html#a2c5db45e3f466083d5980a61cd99b5b5", null ], + [ "get_outgoing_sample_number", "classed247_1_1_stream.html#a781bb2e26902650d77145fb50cd6bea9", null ], + [ "push_sample", "classed247_1_1_stream.html#a9deb2a9d226fc6281d4ad4cac6b1f0b8", null ], + [ "pop_sample", "classed247_1_1_stream.html#a68f814e02e01e8c4eb52472bf800856c", null ], + [ "encode", "classed247_1_1_stream.html#a66149507097bc335d39dcc472b17b015", null ], + [ "decode", "classed247_1_1_stream.html#a4316fedd6d16928c5053a46eec11fa03", null ], + [ "register_callback", "classed247_1_1_stream.html#a3f02185242607b8f06e0d11ae4becc3c", null ], + [ "unregister_callback", "classed247_1_1_stream.html#a1fdbd150c3049ef1282ea28bddaaf4fb", null ], + [ "run_callbacks", "classed247_1_1_stream.html#a3d6fa0f4e8937d3c88e0720c7fcfe6fb", null ], + [ "_context", "classed247_1_1_stream.html#a361feb4f45e9db5053fb535a3a886530", null ], + [ "_configuration", "classed247_1_1_stream.html#a45f886f7daf0541157ba6f0190705c40", null ], + [ "_sample_size_size", "classed247_1_1_stream.html#a947c2667003feec927fb627a8b431066", null ], + [ "_sample_first_header_size", "classed247_1_1_stream.html#ae17393a235db991ee11f20942c649ac2", null ], + [ "_sample_next_header_size", "classed247_1_1_stream.html#a3359d1d7c1b6bd6058c74d1455fa0b7c", null ], + [ "_max_size", "classed247_1_1_stream.html#a06038e2fc482f98ed4754e39658994d9", null ], + [ "_signals", "classed247_1_1_stream.html#a0d13a533df873e2ef60b600f7467e867", null ], + [ "_client_signals", "classed247_1_1_stream.html#aab9fec44bad26b8673ec56841459901d", null ], + [ "_assistant", "classed247_1_1_stream.html#a669b00f4bf91393c90e175ad3ad56e3b", null ], + [ "_recv_stack", "classed247_1_1_stream.html#a2c7faf9f345afadb623935712a386fc0", null ], + [ "_send_stack", "classed247_1_1_stream.html#ad3346c72437c22b2a096a6ad63f6a8c5", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_stream__coll__graph.map b/docs/classed247_1_1_stream__coll__graph.map new file mode 100644 index 00000000..b66327f4 --- /dev/null +++ b/docs/classed247_1_1_stream__coll__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/classed247_1_1_stream__coll__graph.md5 b/docs/classed247_1_1_stream__coll__graph.md5 new file mode 100644 index 00000000..091865eb --- /dev/null +++ b/docs/classed247_1_1_stream__coll__graph.md5 @@ -0,0 +1 @@ +c7ed07af439646bec13d22f78ff096c3 \ No newline at end of file diff --git a/docs/classed247_1_1_stream__coll__graph.png b/docs/classed247_1_1_stream__coll__graph.png new file mode 100644 index 00000000..c5ef935a Binary files /dev/null and b/docs/classed247_1_1_stream__coll__graph.png differ diff --git a/docs/classed247_1_1_stream__inherit__graph.map b/docs/classed247_1_1_stream__inherit__graph.map new file mode 100644 index 00000000..fb0a8849 --- /dev/null +++ b/docs/classed247_1_1_stream__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/classed247_1_1_stream__inherit__graph.md5 b/docs/classed247_1_1_stream__inherit__graph.md5 new file mode 100644 index 00000000..fe0f2e87 --- /dev/null +++ b/docs/classed247_1_1_stream__inherit__graph.md5 @@ -0,0 +1 @@ +fbe1d4808468991f4feb066b9b0890a8 \ No newline at end of file diff --git a/docs/classed247_1_1_stream__inherit__graph.png b/docs/classed247_1_1_stream__inherit__graph.png new file mode 100644 index 00000000..6ca3b345 Binary files /dev/null and b/docs/classed247_1_1_stream__inherit__graph.png differ diff --git a/docs/classed247_1_1_stream_assistant.html b/docs/classed247_1_1_stream_assistant.html new file mode 100644 index 00000000..6f0d81ec --- /dev/null +++ b/docs/classed247_1_1_stream_assistant.html @@ -0,0 +1,208 @@ + + + + + + +ED247 Library: ed247::StreamAssistant Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::StreamAssistant Class Referenceabstract
+
+
+
+Inheritance diagram for ed247::StreamAssistant:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::StreamAssistant:
+
+
Collaboration graph
+ + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

StreamAssistant (Stream *stream)
 
+Streamget_api_stream ()
 
+virtual bool write (const Signal &signal, const void *data, uint32_t size)=0
 
+virtual bool read (const Signal &signal, const void **data, uint32_t *size)=0
 
+virtual bool push (const ed247_timestamp_t *data_timestamp, bool *full)=0
 
+virtual ed247_status_t pop (const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **frame_details, bool *empty)=0
 
+bool was_written ()
 
+bool push_if_was_written (const ed247_timestamp_t *data_timestamp, bool *full)
 
+ + + +

+Protected Member Functions

ED247_FRIEND_TEST ()
 
+ + + + + + + +

+Protected Attributes

+Stream_stream
 
+Sample _buffer
 
+bool _was_written
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_stream_assistant.js b/docs/classed247_1_1_stream_assistant.js new file mode 100644 index 00000000..27348b18 --- /dev/null +++ b/docs/classed247_1_1_stream_assistant.js @@ -0,0 +1,16 @@ +var classed247_1_1_stream_assistant = +[ + [ "StreamAssistant", "classed247_1_1_stream_assistant.html#a4ae95e67ab07048dc44ade1740723d44", null ], + [ "~StreamAssistant", "classed247_1_1_stream_assistant.html#a531f1cddd0506610f90c7dbc6a4b442e", null ], + [ "get_api_stream", "classed247_1_1_stream_assistant.html#aadde76c44a3e802c97032ef8907aa8a7", null ], + [ "write", "classed247_1_1_stream_assistant.html#ae4f0d797727f1ab7fe44cb1dcc05417c", null ], + [ "read", "classed247_1_1_stream_assistant.html#a1192e25f837ffe275d8e9dd0616dbedb", null ], + [ "push", "classed247_1_1_stream_assistant.html#aff25c37201530cd0d505878d836a5ff9", null ], + [ "pop", "classed247_1_1_stream_assistant.html#abb9980040b77e04ae11b3f0a754fea0a", null ], + [ "was_written", "classed247_1_1_stream_assistant.html#a64f7050008ed97c2296da5a96e6a7f08", null ], + [ "push_if_was_written", "classed247_1_1_stream_assistant.html#a4011bef8409ef37bfb0786b7ca41feb3", null ], + [ "ED247_FRIEND_TEST", "classed247_1_1_stream_assistant.html#a870bdfddfaf6d14ec452553ea09a4aab", null ], + [ "_stream", "classed247_1_1_stream_assistant.html#a5a4ef10e3acfc758404ccae77c3b4f6d", null ], + [ "_buffer", "classed247_1_1_stream_assistant.html#aeff993ecf2327e95ce9b1fbf53770e3e", null ], + [ "_was_written", "classed247_1_1_stream_assistant.html#afc42b6474cb0aae00562914150b2ab94", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_stream_assistant__coll__graph.map b/docs/classed247_1_1_stream_assistant__coll__graph.map new file mode 100644 index 00000000..e31fd563 --- /dev/null +++ b/docs/classed247_1_1_stream_assistant__coll__graph.map @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/docs/classed247_1_1_stream_assistant__coll__graph.md5 b/docs/classed247_1_1_stream_assistant__coll__graph.md5 new file mode 100644 index 00000000..e0e932f7 --- /dev/null +++ b/docs/classed247_1_1_stream_assistant__coll__graph.md5 @@ -0,0 +1 @@ +06b3cf0e833f272df1100f51521b2e3d \ No newline at end of file diff --git a/docs/classed247_1_1_stream_assistant__coll__graph.png b/docs/classed247_1_1_stream_assistant__coll__graph.png new file mode 100644 index 00000000..124418dd Binary files /dev/null and b/docs/classed247_1_1_stream_assistant__coll__graph.png differ diff --git a/docs/classed247_1_1_stream_assistant__inherit__graph.map b/docs/classed247_1_1_stream_assistant__inherit__graph.map new file mode 100644 index 00000000..37ffda69 --- /dev/null +++ b/docs/classed247_1_1_stream_assistant__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/classed247_1_1_stream_assistant__inherit__graph.md5 b/docs/classed247_1_1_stream_assistant__inherit__graph.md5 new file mode 100644 index 00000000..c2dc2256 --- /dev/null +++ b/docs/classed247_1_1_stream_assistant__inherit__graph.md5 @@ -0,0 +1 @@ +08c3a8d639348c309a6baf6dfb49650a \ No newline at end of file diff --git a/docs/classed247_1_1_stream_assistant__inherit__graph.png b/docs/classed247_1_1_stream_assistant__inherit__graph.png new file mode 100644 index 00000000..34a87538 Binary files /dev/null and b/docs/classed247_1_1_stream_assistant__inherit__graph.png differ diff --git a/docs/classed247_1_1_stream_sample.html b/docs/classed247_1_1_stream_sample.html new file mode 100644 index 00000000..3a304615 --- /dev/null +++ b/docs/classed247_1_1_stream_sample.html @@ -0,0 +1,247 @@ + + + + + + +ED247 Library: ed247::StreamSample Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::StreamSample Class Reference
+
+
+
+Inheritance diagram for ed247::StreamSample:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::StreamSample:
+
+
Collaboration graph
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

StreamSample (uint32_t capacity)
 
StreamSample (const StreamSample &other)=delete
 
+StreamSampleoperator= (const StreamSample &other)=delete
 
StreamSample (StreamSample &&other)
 
+bool copy (const StreamSample &sample)
 
+void set_data_timestamp (const ed247_timestamp_t &data_timestamp)
 
+void set_recv_timestamp (const ed247_timestamp_t &recv_timestamp)
 
+void set_frame_details (const ed247_sample_details_t &frame_details)
 
+const ed247_timestamp_tdata_timestamp () const
 
+const ed247_timestamp_trecv_timestamp () const
 
+const ed247_sample_details_tframe_details () const
 
+void update_recv_timestamp ()
 
- Public Member Functions inherited from ed247::Sample
Sample (uint32_t capacity)
 
Sample (const Sample &other)=delete
 
+Sampleoperator= (const Sample &other)=delete
 
Sample (Sample &&other)
 
+void allocate (uint32_t capacity)
 
+const uint32_t & size () const
 
+const uint32_t & capacity () const
 
+const char * data () const
 
+bool empty () const
 
+bool copy (const char *data, const uint32_t &size)
 
+bool copy (const void *data, const uint32_t &size)
 
+char * data_rw ()
 
+void set_size (const uint32_t &size)
 
+void reset ()
 
+ + + + + + + +

+Protected Attributes

+ed247_timestamp_t _data_timestamp
 
+ed247_timestamp_t _recv_timestamp
 
+ed247_sample_details_t _frame_details
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_stream_sample.js b/docs/classed247_1_1_stream_sample.js new file mode 100644 index 00000000..b3468213 --- /dev/null +++ b/docs/classed247_1_1_stream_sample.js @@ -0,0 +1,18 @@ +var classed247_1_1_stream_sample = +[ + [ "StreamSample", "classed247_1_1_stream_sample.html#a6f40f347fe234c983dbcef1e1b399fee", null ], + [ "StreamSample", "classed247_1_1_stream_sample.html#ade8827f6a60b8558be9424b8e91f7de4", null ], + [ "StreamSample", "classed247_1_1_stream_sample.html#a3fbc7bfa1385f056d72eee2021a28d22", null ], + [ "operator=", "classed247_1_1_stream_sample.html#a49774cfd65881923b0237173a793de53", null ], + [ "copy", "classed247_1_1_stream_sample.html#a8545fd96c28b5737e8686c0d78667475", null ], + [ "set_data_timestamp", "classed247_1_1_stream_sample.html#a67fa0bccf10b36759fc58bfba63d2912", null ], + [ "set_recv_timestamp", "classed247_1_1_stream_sample.html#a9eef6a98fdfdc7fe81a992d4ab6e464a", null ], + [ "set_frame_details", "classed247_1_1_stream_sample.html#a52939898b747c79caaf4fe7bb3b57b2f", null ], + [ "data_timestamp", "classed247_1_1_stream_sample.html#af596eaf86ddd2f9a1a985fcd8776073a", null ], + [ "recv_timestamp", "classed247_1_1_stream_sample.html#a1c4fff54cc321cad79d5bbe8bbf1dce0", null ], + [ "frame_details", "classed247_1_1_stream_sample.html#a2297c158e78c239be049c86aaa78065a", null ], + [ "update_recv_timestamp", "classed247_1_1_stream_sample.html#a7770ccdbff3a8be3d193e4c9dadba939", null ], + [ "_data_timestamp", "classed247_1_1_stream_sample.html#a3812ac61e1c8a522f0f14acc8303ea34", null ], + [ "_recv_timestamp", "classed247_1_1_stream_sample.html#a9d2b7768d45400a0c8b5413a903f6e30", null ], + [ "_frame_details", "classed247_1_1_stream_sample.html#a8fe69fdddffe25d3776c09703fe85884", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_stream_sample__coll__graph.map b/docs/classed247_1_1_stream_sample__coll__graph.map new file mode 100644 index 00000000..7769e982 --- /dev/null +++ b/docs/classed247_1_1_stream_sample__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/classed247_1_1_stream_sample__coll__graph.md5 b/docs/classed247_1_1_stream_sample__coll__graph.md5 new file mode 100644 index 00000000..afca9ad4 --- /dev/null +++ b/docs/classed247_1_1_stream_sample__coll__graph.md5 @@ -0,0 +1 @@ +1d0dfbdace0021cc4a9853c6486762d2 \ No newline at end of file diff --git a/docs/classed247_1_1_stream_sample__coll__graph.png b/docs/classed247_1_1_stream_sample__coll__graph.png new file mode 100644 index 00000000..117111a9 Binary files /dev/null and b/docs/classed247_1_1_stream_sample__coll__graph.png differ diff --git a/docs/classed247_1_1_stream_sample__inherit__graph.map b/docs/classed247_1_1_stream_sample__inherit__graph.map new file mode 100644 index 00000000..f895d768 --- /dev/null +++ b/docs/classed247_1_1_stream_sample__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1_stream_sample__inherit__graph.md5 b/docs/classed247_1_1_stream_sample__inherit__graph.md5 new file mode 100644 index 00000000..72de7a59 --- /dev/null +++ b/docs/classed247_1_1_stream_sample__inherit__graph.md5 @@ -0,0 +1 @@ +6c40d8e3787f85fe608c6c93a7c4a2ca \ No newline at end of file diff --git a/docs/classed247_1_1_stream_sample__inherit__graph.png b/docs/classed247_1_1_stream_sample__inherit__graph.png new file mode 100644 index 00000000..9fece1d5 Binary files /dev/null and b/docs/classed247_1_1_stream_sample__inherit__graph.png differ diff --git a/docs/classed247_1_1_stream_sample_ring_buffer.html b/docs/classed247_1_1_stream_sample_ring_buffer.html new file mode 100644 index 00000000..a988af25 --- /dev/null +++ b/docs/classed247_1_1_stream_sample_ring_buffer.html @@ -0,0 +1,175 @@ + + + + + + +ED247 Library: ed247::StreamSampleRingBuffer Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::StreamSampleRingBuffer Class Reference
+
+
+
+Collaboration diagram for ed247::StreamSampleRingBuffer:
+
+
Collaboration graph
+
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

StreamSampleRingBuffer (uint32_t capacity, uint32_t samples_capacity)
 
+uint32_t capacity () const
 
+uint32_t samples_capacity () const
 
+uint32_t size () const
 
+bool empty () const
 
+bool full () const
 
+StreamSamplepush_back ()
 
+StreamSamplepop_front ()
 
+StreamSamplefront ()
 
+StreamSampleback ()
 
+StreamSampleat (uint32_t index)
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_stream_sample_ring_buffer.js b/docs/classed247_1_1_stream_sample_ring_buffer.js new file mode 100644 index 00000000..e9fe72f6 --- /dev/null +++ b/docs/classed247_1_1_stream_sample_ring_buffer.js @@ -0,0 +1,15 @@ +var classed247_1_1_stream_sample_ring_buffer = +[ + [ "StreamSampleRingBuffer", "classed247_1_1_stream_sample_ring_buffer.html#a38178302edac9e59f89615c3c815134f", null ], + [ "~StreamSampleRingBuffer", "classed247_1_1_stream_sample_ring_buffer.html#a0d35034d8dc7540f234236b12a83f4b2", null ], + [ "capacity", "classed247_1_1_stream_sample_ring_buffer.html#ae70dd829cc8ead8286c9397c4a1083fc", null ], + [ "samples_capacity", "classed247_1_1_stream_sample_ring_buffer.html#ae154ad2cd6f4c799e7fa10935feedf79", null ], + [ "size", "classed247_1_1_stream_sample_ring_buffer.html#ad18a1ec2d6efde94310aaca5aa279fc8", null ], + [ "empty", "classed247_1_1_stream_sample_ring_buffer.html#a7fa473f31ac75bdca0efd5043b07bada", null ], + [ "full", "classed247_1_1_stream_sample_ring_buffer.html#ac3090b1f32449f7de663aaaff19803f8", null ], + [ "push_back", "classed247_1_1_stream_sample_ring_buffer.html#a0c131be9e220dea01c5e3f1451261096", null ], + [ "pop_front", "classed247_1_1_stream_sample_ring_buffer.html#a29a63374b31c328bf364c2e3419e97a9", null ], + [ "front", "classed247_1_1_stream_sample_ring_buffer.html#af0ce459d14e7a8c1ffd04c622ac1134a", null ], + [ "back", "classed247_1_1_stream_sample_ring_buffer.html#a292c700709b8c9f752cc029908a1075d", null ], + [ "at", "classed247_1_1_stream_sample_ring_buffer.html#a346d48ee52db34d1a0a6fd7d7ccaa19d", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_stream_sample_ring_buffer__coll__graph.map b/docs/classed247_1_1_stream_sample_ring_buffer__coll__graph.map new file mode 100644 index 00000000..0827d069 --- /dev/null +++ b/docs/classed247_1_1_stream_sample_ring_buffer__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classed247_1_1_stream_sample_ring_buffer__coll__graph.md5 b/docs/classed247_1_1_stream_sample_ring_buffer__coll__graph.md5 new file mode 100644 index 00000000..b91aa613 --- /dev/null +++ b/docs/classed247_1_1_stream_sample_ring_buffer__coll__graph.md5 @@ -0,0 +1 @@ +e28a6353729913b2700e90f61baa7f38 \ No newline at end of file diff --git a/docs/classed247_1_1_stream_sample_ring_buffer__coll__graph.png b/docs/classed247_1_1_stream_sample_ring_buffer__coll__graph.png new file mode 100644 index 00000000..b4b0501c Binary files /dev/null and b/docs/classed247_1_1_stream_sample_ring_buffer__coll__graph.png differ diff --git a/docs/classed247_1_1_stream_set.html b/docs/classed247_1_1_stream_set.html new file mode 100644 index 00000000..d1b6e219 --- /dev/null +++ b/docs/classed247_1_1_stream_set.html @@ -0,0 +1,172 @@ + + + + + + +ED247 Library: ed247::StreamSet Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::StreamSet Class Reference
+
+
+
+Collaboration diagram for ed247::StreamSet:
+
+
Collaboration graph
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

StreamSet (Context *context)
 
+StreamSetoperator= (const StreamSet &)=delete
 
+StreamSetoperator= (StreamSet &&)=delete
 
+stream_ptr_t create (const xml::Stream *configuration, ed247_internal_channel_t *ed247_api_channel)
 
+stream_ptr_t get (std::string name)
 
+stream_list_t find (std::string regex)
 
+stream_map_t & streams ()
 
+uint32_t size () const
 
+stream_list_t & get_streams_signals_output ()
 
+stream_list_t & get_streams_signals_input ()
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_stream_set.js b/docs/classed247_1_1_stream_set.js new file mode 100644 index 00000000..2e605e9a --- /dev/null +++ b/docs/classed247_1_1_stream_set.js @@ -0,0 +1,14 @@ +var classed247_1_1_stream_set = +[ + [ "StreamSet", "classed247_1_1_stream_set.html#a2f765d6c303a2d8c5fb4a84d0764d4e2", null ], + [ "~StreamSet", "classed247_1_1_stream_set.html#aecdaad06f46b7fc0bfbd66d3de09c78b", null ], + [ "operator=", "classed247_1_1_stream_set.html#a4e1c38f7852e63cf37ea85f4d62e7b3f", null ], + [ "operator=", "classed247_1_1_stream_set.html#a41f222ab8090a57c43bc2e8191eaba32", null ], + [ "create", "classed247_1_1_stream_set.html#ada99e86be1c9f624dc666af9c2635efd", null ], + [ "get", "classed247_1_1_stream_set.html#ae77e97c60e7f7ad0f3acd77c1c35090c", null ], + [ "find", "classed247_1_1_stream_set.html#ab60f5a2e0adc4dd300099f09b65c920c", null ], + [ "streams", "classed247_1_1_stream_set.html#a43436ef707d88156e9e2cea6a89e84d5", null ], + [ "size", "classed247_1_1_stream_set.html#a0335fd21c7b841ffdf9df2e779b0dce2", null ], + [ "get_streams_signals_output", "classed247_1_1_stream_set.html#a3fa783921978f9f2202f15e15a112eb1", null ], + [ "get_streams_signals_input", "classed247_1_1_stream_set.html#ac965e33f10c1b214fac523489cb7f13f", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_stream_set__coll__graph.map b/docs/classed247_1_1_stream_set__coll__graph.map new file mode 100644 index 00000000..31613626 --- /dev/null +++ b/docs/classed247_1_1_stream_set__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classed247_1_1_stream_set__coll__graph.md5 b/docs/classed247_1_1_stream_set__coll__graph.md5 new file mode 100644 index 00000000..5a2d070d --- /dev/null +++ b/docs/classed247_1_1_stream_set__coll__graph.md5 @@ -0,0 +1 @@ +8f38f4c8c6632e07109c4bf375ab64d8 \ No newline at end of file diff --git a/docs/classed247_1_1_stream_set__coll__graph.png b/docs/classed247_1_1_stream_set__coll__graph.png new file mode 100644 index 00000000..d65ce654 Binary files /dev/null and b/docs/classed247_1_1_stream_set__coll__graph.png differ diff --git a/docs/classed247_1_1_v_n_a_d_stream_assistant.html b/docs/classed247_1_1_v_n_a_d_stream_assistant.html new file mode 100644 index 00000000..13c6bd56 --- /dev/null +++ b/docs/classed247_1_1_v_n_a_d_stream_assistant.html @@ -0,0 +1,209 @@ + + + + + + +ED247 Library: ed247::VNADStreamAssistant Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::VNADStreamAssistant Class Reference
+
+
+
+Inheritance diagram for ed247::VNADStreamAssistant:
+
+
Inheritance graph
+ + + + +
+
+Collaboration diagram for ed247::VNADStreamAssistant:
+
+
Collaboration graph
+ + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

VNADStreamAssistant (Stream *stream)
 
+virtual bool write (const Signal &signal, const void *data, uint32_t size) override
 
+virtual bool read (const Signal &signal, const void **data, uint32_t *size) override
 
+virtual bool push (const ed247_timestamp_t *data_timestamp, bool *full) override
 
+virtual ed247_status_t pop (const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **frame_details, bool *empty) override
 
- Public Member Functions inherited from ed247::StreamAssistant
StreamAssistant (Stream *stream)
 
+Streamget_api_stream ()
 
+bool was_written ()
 
+bool push_if_was_written (const ed247_timestamp_t *data_timestamp, bool *full)
 
+ + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from ed247::StreamAssistant
ED247_FRIEND_TEST ()
 
- Protected Attributes inherited from ed247::StreamAssistant
+Stream_stream
 
+Sample _buffer
 
+bool _was_written
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1_v_n_a_d_stream_assistant.js b/docs/classed247_1_1_v_n_a_d_stream_assistant.js new file mode 100644 index 00000000..e1647160 --- /dev/null +++ b/docs/classed247_1_1_v_n_a_d_stream_assistant.js @@ -0,0 +1,8 @@ +var classed247_1_1_v_n_a_d_stream_assistant = +[ + [ "VNADStreamAssistant", "classed247_1_1_v_n_a_d_stream_assistant.html#aae314f76a32cee4cd8534915a57acacd", null ], + [ "write", "classed247_1_1_v_n_a_d_stream_assistant.html#a95e5a00c85e28a640cf415cdf986819d", null ], + [ "read", "classed247_1_1_v_n_a_d_stream_assistant.html#a33982f9a8da4856346d6c7194a4f526f", null ], + [ "push", "classed247_1_1_v_n_a_d_stream_assistant.html#acc854bdf359de9c5b6040948f1298b5f", null ], + [ "pop", "classed247_1_1_v_n_a_d_stream_assistant.html#a5a9db92e9b350665f3036e41cbf7b150", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1_v_n_a_d_stream_assistant__coll__graph.map b/docs/classed247_1_1_v_n_a_d_stream_assistant__coll__graph.map new file mode 100644 index 00000000..fe79f015 --- /dev/null +++ b/docs/classed247_1_1_v_n_a_d_stream_assistant__coll__graph.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/classed247_1_1_v_n_a_d_stream_assistant__coll__graph.md5 b/docs/classed247_1_1_v_n_a_d_stream_assistant__coll__graph.md5 new file mode 100644 index 00000000..c2920c47 --- /dev/null +++ b/docs/classed247_1_1_v_n_a_d_stream_assistant__coll__graph.md5 @@ -0,0 +1 @@ +d4f25f8543bf5e1bb4f9e98f5825a452 \ No newline at end of file diff --git a/docs/classed247_1_1_v_n_a_d_stream_assistant__coll__graph.png b/docs/classed247_1_1_v_n_a_d_stream_assistant__coll__graph.png new file mode 100644 index 00000000..2218b53c Binary files /dev/null and b/docs/classed247_1_1_v_n_a_d_stream_assistant__coll__graph.png differ diff --git a/docs/classed247_1_1_v_n_a_d_stream_assistant__inherit__graph.map b/docs/classed247_1_1_v_n_a_d_stream_assistant__inherit__graph.map new file mode 100644 index 00000000..05b6e664 --- /dev/null +++ b/docs/classed247_1_1_v_n_a_d_stream_assistant__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/classed247_1_1_v_n_a_d_stream_assistant__inherit__graph.md5 b/docs/classed247_1_1_v_n_a_d_stream_assistant__inherit__graph.md5 new file mode 100644 index 00000000..608b134a --- /dev/null +++ b/docs/classed247_1_1_v_n_a_d_stream_assistant__inherit__graph.md5 @@ -0,0 +1 @@ +4a29d02e3f086abd803685984efa3fc8 \ No newline at end of file diff --git a/docs/classed247_1_1_v_n_a_d_stream_assistant__inherit__graph.png b/docs/classed247_1_1_v_n_a_d_stream_assistant__inherit__graph.png new file mode 100644 index 00000000..2bfc566a Binary files /dev/null and b/docs/classed247_1_1_v_n_a_d_stream_assistant__inherit__graph.png differ diff --git a/docs/classed247_1_1exception.html b/docs/classed247_1_1exception.html new file mode 100644 index 00000000..60e4f4cc --- /dev/null +++ b/docs/classed247_1_1exception.html @@ -0,0 +1,155 @@ + + + + + + +ED247 Library: ed247::exception Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::exception Class Reference
+
+
+
+Inheritance diagram for ed247::exception:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::exception:
+
+
Collaboration graph
+
+ + + + + + +

+Public Member Functions

exception (std::string message)
 
+const char * what () const noexcept override
 
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/classed247_1_1exception.js b/docs/classed247_1_1exception.js new file mode 100644 index 00000000..c6253978 --- /dev/null +++ b/docs/classed247_1_1exception.js @@ -0,0 +1,6 @@ +var classed247_1_1exception = +[ + [ "exception", "classed247_1_1exception.html#a9c6f19147db038971391ca902071c795", null ], + [ "~exception", "classed247_1_1exception.html#a9a1048ae6bcb199b22a01b69b4b6ba5b", null ], + [ "what", "classed247_1_1exception.html#ab9c3218bedb9f1c95e704ba75eb924ff", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1exception__coll__graph.map b/docs/classed247_1_1exception__coll__graph.map new file mode 100644 index 00000000..0f2d7268 --- /dev/null +++ b/docs/classed247_1_1exception__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classed247_1_1exception__coll__graph.md5 b/docs/classed247_1_1exception__coll__graph.md5 new file mode 100644 index 00000000..b62144ac --- /dev/null +++ b/docs/classed247_1_1exception__coll__graph.md5 @@ -0,0 +1 @@ +e24dd020fcc41af2f5a02ecf6d5b844d \ No newline at end of file diff --git a/docs/classed247_1_1exception__coll__graph.png b/docs/classed247_1_1exception__coll__graph.png new file mode 100644 index 00000000..5d46bd95 Binary files /dev/null and b/docs/classed247_1_1exception__coll__graph.png differ diff --git a/docs/classed247_1_1exception__inherit__graph.map b/docs/classed247_1_1exception__inherit__graph.map new file mode 100644 index 00000000..942d3e2c --- /dev/null +++ b/docs/classed247_1_1exception__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1exception__inherit__graph.md5 b/docs/classed247_1_1exception__inherit__graph.md5 new file mode 100644 index 00000000..8a96ba1d --- /dev/null +++ b/docs/classed247_1_1exception__inherit__graph.md5 @@ -0,0 +1 @@ +ab7bb4908a6ef64d3b701c734d6efa70 \ No newline at end of file diff --git a/docs/classed247_1_1exception__inherit__graph.png b/docs/classed247_1_1exception__inherit__graph.png new file mode 100644 index 00000000..c8523db3 Binary files /dev/null and b/docs/classed247_1_1exception__inherit__graph.png differ diff --git a/docs/classed247_1_1udp_1_1_com_interface.html b/docs/classed247_1_1udp_1_1_com_interface.html new file mode 100644 index 00000000..119525fe --- /dev/null +++ b/docs/classed247_1_1udp_1_1_com_interface.html @@ -0,0 +1,151 @@ + + + + + + +ED247 Library: ed247::udp::ComInterface Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::udp::ComInterface Class Reference
+
+
+
+Collaboration diagram for ed247::udp::ComInterface:
+
+
Collaboration graph
+
+ + + + + + + + +

+Public Member Functions

+void load (const xml::ComInterface &configuration, Receiver::receive_callback_t receive_callback)
 
+void send_frame (const void *payload, const uint32_t payload_size)
 
ComInterface (Context *context)
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1udp_1_1_com_interface.js b/docs/classed247_1_1udp_1_1_com_interface.js new file mode 100644 index 00000000..c2b27938 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_com_interface.js @@ -0,0 +1,7 @@ +var classed247_1_1udp_1_1_com_interface = +[ + [ "ComInterface", "classed247_1_1udp_1_1_com_interface.html#a397f9cba7fa0734c4fa6c2669df6077c", null ], + [ "~ComInterface", "classed247_1_1udp_1_1_com_interface.html#a7f54b02b88323128b1216e4104027461", null ], + [ "load", "classed247_1_1udp_1_1_com_interface.html#a96971e61263ddd271b53245b6e4a22d0", null ], + [ "send_frame", "classed247_1_1udp_1_1_com_interface.html#a3651dcb4c7313f104b5577ec730f0b76", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_com_interface__coll__graph.map b/docs/classed247_1_1udp_1_1_com_interface__coll__graph.map new file mode 100644 index 00000000..98c437f9 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_com_interface__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classed247_1_1udp_1_1_com_interface__coll__graph.md5 b/docs/classed247_1_1udp_1_1_com_interface__coll__graph.md5 new file mode 100644 index 00000000..7168e412 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_com_interface__coll__graph.md5 @@ -0,0 +1 @@ +488ec43d8726933b09f10f25e065f983 \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_com_interface__coll__graph.png b/docs/classed247_1_1udp_1_1_com_interface__coll__graph.png new file mode 100644 index 00000000..a6e70588 Binary files /dev/null and b/docs/classed247_1_1udp_1_1_com_interface__coll__graph.png differ diff --git a/docs/classed247_1_1udp_1_1_emitter.html b/docs/classed247_1_1udp_1_1_emitter.html new file mode 100644 index 00000000..f196e26e --- /dev/null +++ b/docs/classed247_1_1udp_1_1_emitter.html @@ -0,0 +1,189 @@ + + + + + + +ED247 Library: ed247::udp::Emitter Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::udp::Emitter Class Reference
+
+
+
+Inheritance diagram for ed247::udp::Emitter:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::udp::Emitter:
+
+
Collaboration graph
+ + + + + + + +
+ + + + + + + + + + + + + + + +

+Public Member Functions

Emitter (Context *context, socket_address_t from_address, socket_address_t destination_address, uint16_t multicast_ttl=1)
 
+void send_frame (const void *payload, const uint32_t payload_size)
 
- Public Member Functions inherited from ed247::udp::Transceiver
Transceiver (Context *context, const socket_address_t &socket_address)
 
Transceiver (const Transceiver &)=delete
 
+Transceiveroperator= (const Transceiver &)=delete
 
+const ed247_socket_t & get_socket () const
 
+ + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from ed247::udp::Transceiver
+Context_context
 
+socket_address_t _socket_address
 
+ed247_socket_t _socket {INVALID_SOCKET}
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1udp_1_1_emitter.js b/docs/classed247_1_1udp_1_1_emitter.js new file mode 100644 index 00000000..0b246f61 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_emitter.js @@ -0,0 +1,5 @@ +var classed247_1_1udp_1_1_emitter = +[ + [ "Emitter", "classed247_1_1udp_1_1_emitter.html#abd81441dcd2e57328c547fa1249c6b2d", null ], + [ "send_frame", "classed247_1_1udp_1_1_emitter.html#ad90d0a19b1adbde45265071e5fa5edd5", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_emitter__coll__graph.map b/docs/classed247_1_1udp_1_1_emitter__coll__graph.map new file mode 100644 index 00000000..93831d0e --- /dev/null +++ b/docs/classed247_1_1udp_1_1_emitter__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/classed247_1_1udp_1_1_emitter__coll__graph.md5 b/docs/classed247_1_1udp_1_1_emitter__coll__graph.md5 new file mode 100644 index 00000000..d26893b0 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_emitter__coll__graph.md5 @@ -0,0 +1 @@ +0093670662d2caf6887fdeb2aaceba72 \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_emitter__coll__graph.png b/docs/classed247_1_1udp_1_1_emitter__coll__graph.png new file mode 100644 index 00000000..cda8ee0f Binary files /dev/null and b/docs/classed247_1_1udp_1_1_emitter__coll__graph.png differ diff --git a/docs/classed247_1_1udp_1_1_emitter__inherit__graph.map b/docs/classed247_1_1udp_1_1_emitter__inherit__graph.map new file mode 100644 index 00000000..b9c0ec4f --- /dev/null +++ b/docs/classed247_1_1udp_1_1_emitter__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1udp_1_1_emitter__inherit__graph.md5 b/docs/classed247_1_1udp_1_1_emitter__inherit__graph.md5 new file mode 100644 index 00000000..c79fea9d --- /dev/null +++ b/docs/classed247_1_1udp_1_1_emitter__inherit__graph.md5 @@ -0,0 +1 @@ +f5232884cffe21b5f45ccecc6bc05506 \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_emitter__inherit__graph.png b/docs/classed247_1_1udp_1_1_emitter__inherit__graph.png new file mode 100644 index 00000000..4d395f54 Binary files /dev/null and b/docs/classed247_1_1udp_1_1_emitter__inherit__graph.png differ diff --git a/docs/classed247_1_1udp_1_1_receiver.html b/docs/classed247_1_1udp_1_1_receiver.html new file mode 100644 index 00000000..7c7520ff --- /dev/null +++ b/docs/classed247_1_1udp_1_1_receiver.html @@ -0,0 +1,209 @@ + + + + + + +ED247 Library: ed247::udp::Receiver Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::udp::Receiver Class Reference
+
+
+
+Inheritance diagram for ed247::udp::Receiver:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::udp::Receiver:
+
+
Collaboration graph
+ + + + + + + +
+ + + + +

+Data Structures

struct  frame_t
 
+ + + +

+Public Types

+using receive_callback_t = std::function< void(const char *payload, uint32_t size)>
 
+ + + + + + + + + + + + + + +

+Public Member Functions

Receiver (Context *context, socket_address_t from_address, socket_address_t multicast_interface, receive_callback_t callback)
 
+void receive ()
 
- Public Member Functions inherited from ed247::udp::Transceiver
Transceiver (Context *context, const socket_address_t &socket_address)
 
Transceiver (const Transceiver &)=delete
 
+Transceiveroperator= (const Transceiver &)=delete
 
+const ed247_socket_t & get_socket () const
 
+ + + +

+Static Public Attributes

+static const uint32_t MAX_FRAME_SIZE {65508}
 
+ + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from ed247::udp::Transceiver
+Context_context
 
+socket_address_t _socket_address
 
+ed247_socket_t _socket {INVALID_SOCKET}
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1udp_1_1_receiver.js b/docs/classed247_1_1udp_1_1_receiver.js new file mode 100644 index 00000000..8b678383 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_receiver.js @@ -0,0 +1,7 @@ +var classed247_1_1udp_1_1_receiver = +[ + [ "frame_t", "structed247_1_1udp_1_1_receiver_1_1frame__t.html", "structed247_1_1udp_1_1_receiver_1_1frame__t" ], + [ "receive_callback_t", "classed247_1_1udp_1_1_receiver.html#a7e3d55912044cb71178dd102376741b6", null ], + [ "Receiver", "classed247_1_1udp_1_1_receiver.html#a278621794ccc8d1d1117532cd2fbd099", null ], + [ "receive", "classed247_1_1udp_1_1_receiver.html#a13346d973db49fd915f3860a8d9fd1a7", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_receiver__coll__graph.map b/docs/classed247_1_1udp_1_1_receiver__coll__graph.map new file mode 100644 index 00000000..f5ff697f --- /dev/null +++ b/docs/classed247_1_1udp_1_1_receiver__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/classed247_1_1udp_1_1_receiver__coll__graph.md5 b/docs/classed247_1_1udp_1_1_receiver__coll__graph.md5 new file mode 100644 index 00000000..492e5f66 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_receiver__coll__graph.md5 @@ -0,0 +1 @@ +335d28980b5b5cba3b7f196557539bdf \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_receiver__coll__graph.png b/docs/classed247_1_1udp_1_1_receiver__coll__graph.png new file mode 100644 index 00000000..b32e72a5 Binary files /dev/null and b/docs/classed247_1_1udp_1_1_receiver__coll__graph.png differ diff --git a/docs/classed247_1_1udp_1_1_receiver__inherit__graph.map b/docs/classed247_1_1udp_1_1_receiver__inherit__graph.map new file mode 100644 index 00000000..6307c546 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_receiver__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1udp_1_1_receiver__inherit__graph.md5 b/docs/classed247_1_1udp_1_1_receiver__inherit__graph.md5 new file mode 100644 index 00000000..d2e8abeb --- /dev/null +++ b/docs/classed247_1_1udp_1_1_receiver__inherit__graph.md5 @@ -0,0 +1 @@ +ccbb0955d6584760d23e9dc6272cbc29 \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_receiver__inherit__graph.png b/docs/classed247_1_1udp_1_1_receiver__inherit__graph.png new file mode 100644 index 00000000..365a3e5f Binary files /dev/null and b/docs/classed247_1_1udp_1_1_receiver__inherit__graph.png differ diff --git a/docs/classed247_1_1udp_1_1_receiver_set.html b/docs/classed247_1_1udp_1_1_receiver_set.html new file mode 100644 index 00000000..0a7eed0b --- /dev/null +++ b/docs/classed247_1_1udp_1_1_receiver_set.html @@ -0,0 +1,161 @@ + + + + + + +ED247 Library: ed247::udp::ReceiverSet Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::udp::ReceiverSet Class Reference
+
+
+
+Collaboration diagram for ed247::udp::ReceiverSet:
+
+
Collaboration graph
+
+ + + + + + + + + + + + + + +

+Public Member Functions

+ReceiverSetoperator= (const ReceiverSet &)=delete
 
+ReceiverSetoperator= (ReceiverSet &&)=delete
 
+void emplace (Receiver *receiver)
 
+ed247_status_t wait_frame (int32_t timeout_us)
 
+ed247_status_t wait_during (int32_t duration_us)
 
+Receiver::frame_tget_receive_frame ()
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1udp_1_1_receiver_set.js b/docs/classed247_1_1udp_1_1_receiver_set.js new file mode 100644 index 00000000..ddc3718a --- /dev/null +++ b/docs/classed247_1_1udp_1_1_receiver_set.js @@ -0,0 +1,11 @@ +var classed247_1_1udp_1_1_receiver_set = +[ + [ "ReceiverSet", "classed247_1_1udp_1_1_receiver_set.html#a77af4ca25ecc79173a34446e6692a4fb", null ], + [ "~ReceiverSet", "classed247_1_1udp_1_1_receiver_set.html#ae98448b2d51481200d58086fabc242db", null ], + [ "operator=", "classed247_1_1udp_1_1_receiver_set.html#a34299c51317b0c596a6992926a6a5111", null ], + [ "operator=", "classed247_1_1udp_1_1_receiver_set.html#a9602dbb33c14744ebd91297f873e9680", null ], + [ "emplace", "classed247_1_1udp_1_1_receiver_set.html#af49a2d32e41ff2a61e7ba69918b8dcfd", null ], + [ "wait_frame", "classed247_1_1udp_1_1_receiver_set.html#a7db3a2fad8f1950af451ccaec35afaae", null ], + [ "wait_during", "classed247_1_1udp_1_1_receiver_set.html#a46eda069be264386ee6a6ab5f8c0abfc", null ], + [ "get_receive_frame", "classed247_1_1udp_1_1_receiver_set.html#abdcecef421f058b3d207f817a681ec42", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_receiver_set__coll__graph.map b/docs/classed247_1_1udp_1_1_receiver_set__coll__graph.map new file mode 100644 index 00000000..520ce075 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_receiver_set__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classed247_1_1udp_1_1_receiver_set__coll__graph.md5 b/docs/classed247_1_1udp_1_1_receiver_set__coll__graph.md5 new file mode 100644 index 00000000..fe20d285 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_receiver_set__coll__graph.md5 @@ -0,0 +1 @@ +b4d84d96a516d66c37004b0ee6692f9c \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_receiver_set__coll__graph.png b/docs/classed247_1_1udp_1_1_receiver_set__coll__graph.png new file mode 100644 index 00000000..4fe0d8e3 Binary files /dev/null and b/docs/classed247_1_1udp_1_1_receiver_set__coll__graph.png differ diff --git a/docs/classed247_1_1udp_1_1_transceiver.html b/docs/classed247_1_1udp_1_1_transceiver.html new file mode 100644 index 00000000..3f8069fe --- /dev/null +++ b/docs/classed247_1_1udp_1_1_transceiver.html @@ -0,0 +1,182 @@ + + + + + + +ED247 Library: ed247::udp::Transceiver Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::udp::Transceiver Class Reference
+
+
+
+Inheritance diagram for ed247::udp::Transceiver:
+
+
Inheritance graph
+ + + + +
+
+Collaboration diagram for ed247::udp::Transceiver:
+
+
Collaboration graph
+ + + + + + +
+ + + + + + + + + + +

+Public Member Functions

Transceiver (Context *context, const socket_address_t &socket_address)
 
Transceiver (const Transceiver &)=delete
 
+Transceiveroperator= (const Transceiver &)=delete
 
+const ed247_socket_t & get_socket () const
 
+ + + + + + + +

+Protected Attributes

+Context_context
 
+socket_address_t _socket_address
 
+ed247_socket_t _socket {INVALID_SOCKET}
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/classed247_1_1udp_1_1_transceiver.js b/docs/classed247_1_1udp_1_1_transceiver.js new file mode 100644 index 00000000..1f6ec137 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_transceiver.js @@ -0,0 +1,11 @@ +var classed247_1_1udp_1_1_transceiver = +[ + [ "Transceiver", "classed247_1_1udp_1_1_transceiver.html#a81e1f68a98d426afac599b21b194c5c5", null ], + [ "~Transceiver", "classed247_1_1udp_1_1_transceiver.html#a6ed5c3406b2f3e5183e262d0617e08ff", null ], + [ "Transceiver", "classed247_1_1udp_1_1_transceiver.html#aabfb022a05dd635043f37b48b830adf5", null ], + [ "operator=", "classed247_1_1udp_1_1_transceiver.html#a68c75a11b51a061529c2ab9a88e9876f", null ], + [ "get_socket", "classed247_1_1udp_1_1_transceiver.html#a6749b396a1ae5dca11f9a121e98ac45c", null ], + [ "_context", "classed247_1_1udp_1_1_transceiver.html#a98dce97bc1f110ea12917dc4bc9deae6", null ], + [ "_socket_address", "classed247_1_1udp_1_1_transceiver.html#a52524b8c2845e78a0bcbff9bb7fac281", null ], + [ "_socket", "classed247_1_1udp_1_1_transceiver.html#a9b27c71bcfcd6790a31fd768b9960715", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_transceiver__coll__graph.map b/docs/classed247_1_1udp_1_1_transceiver__coll__graph.map new file mode 100644 index 00000000..0691cfdd --- /dev/null +++ b/docs/classed247_1_1udp_1_1_transceiver__coll__graph.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/classed247_1_1udp_1_1_transceiver__coll__graph.md5 b/docs/classed247_1_1udp_1_1_transceiver__coll__graph.md5 new file mode 100644 index 00000000..4377eb2f --- /dev/null +++ b/docs/classed247_1_1udp_1_1_transceiver__coll__graph.md5 @@ -0,0 +1 @@ +5c99b330bbe1ed04a2827b05dca01f19 \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_transceiver__coll__graph.png b/docs/classed247_1_1udp_1_1_transceiver__coll__graph.png new file mode 100644 index 00000000..a7b8df8d Binary files /dev/null and b/docs/classed247_1_1udp_1_1_transceiver__coll__graph.png differ diff --git a/docs/classed247_1_1udp_1_1_transceiver__inherit__graph.map b/docs/classed247_1_1udp_1_1_transceiver__inherit__graph.map new file mode 100644 index 00000000..8ad98a16 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_transceiver__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/classed247_1_1udp_1_1_transceiver__inherit__graph.md5 b/docs/classed247_1_1udp_1_1_transceiver__inherit__graph.md5 new file mode 100644 index 00000000..029c23e7 --- /dev/null +++ b/docs/classed247_1_1udp_1_1_transceiver__inherit__graph.md5 @@ -0,0 +1 @@ +ad1e4c4bddccb59bfee66e7a84476201 \ No newline at end of file diff --git a/docs/classed247_1_1udp_1_1_transceiver__inherit__graph.png b/docs/classed247_1_1udp_1_1_transceiver__inherit__graph.png new file mode 100644 index 00000000..8c21e3c9 Binary files /dev/null and b/docs/classed247_1_1udp_1_1_transceiver__inherit__graph.png differ diff --git a/docs/classed247_1_1xml_1_1exception.html b/docs/classed247_1_1xml_1_1exception.html new file mode 100644 index 00000000..8381ee57 --- /dev/null +++ b/docs/classed247_1_1xml_1_1exception.html @@ -0,0 +1,162 @@ + + + + + + +ED247 Library: ed247::xml::exception Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::exception Class Reference
+
+
+
+Inheritance diagram for ed247::xml::exception:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::xml::exception:
+
+
Collaboration graph
+ + + +
+ + + + + + + + + +

+Public Member Functions

exception (std::string message)
 
- Public Member Functions inherited from ed247::exception
exception (std::string message)
 
+const char * what () const noexcept override
 
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/classed247_1_1xml_1_1exception.js b/docs/classed247_1_1xml_1_1exception.js new file mode 100644 index 00000000..08d14172 --- /dev/null +++ b/docs/classed247_1_1xml_1_1exception.js @@ -0,0 +1,5 @@ +var classed247_1_1xml_1_1exception = +[ + [ "exception", "classed247_1_1xml_1_1exception.html#ad1fb9aa596341492ee76a1718f65a299", null ], + [ "~exception", "classed247_1_1xml_1_1exception.html#a9fea057b7109d99ed315f6d7348591ab", null ] +]; \ No newline at end of file diff --git a/docs/classed247_1_1xml_1_1exception__coll__graph.map b/docs/classed247_1_1xml_1_1exception__coll__graph.map new file mode 100644 index 00000000..bbfeff44 --- /dev/null +++ b/docs/classed247_1_1xml_1_1exception__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1xml_1_1exception__coll__graph.md5 b/docs/classed247_1_1xml_1_1exception__coll__graph.md5 new file mode 100644 index 00000000..17208156 --- /dev/null +++ b/docs/classed247_1_1xml_1_1exception__coll__graph.md5 @@ -0,0 +1 @@ +2018f1a39bd54ad1b813f15baf468123 \ No newline at end of file diff --git a/docs/classed247_1_1xml_1_1exception__coll__graph.png b/docs/classed247_1_1xml_1_1exception__coll__graph.png new file mode 100644 index 00000000..75d99adb Binary files /dev/null and b/docs/classed247_1_1xml_1_1exception__coll__graph.png differ diff --git a/docs/classed247_1_1xml_1_1exception__inherit__graph.map b/docs/classed247_1_1xml_1_1exception__inherit__graph.map new file mode 100644 index 00000000..bbfeff44 --- /dev/null +++ b/docs/classed247_1_1xml_1_1exception__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classed247_1_1xml_1_1exception__inherit__graph.md5 b/docs/classed247_1_1xml_1_1exception__inherit__graph.md5 new file mode 100644 index 00000000..17208156 --- /dev/null +++ b/docs/classed247_1_1xml_1_1exception__inherit__graph.md5 @@ -0,0 +1 @@ +2018f1a39bd54ad1b813f15baf468123 \ No newline at end of file diff --git a/docs/classed247_1_1xml_1_1exception__inherit__graph.png b/docs/classed247_1_1xml_1_1exception__inherit__graph.png new file mode 100644 index 00000000..75d99adb Binary files /dev/null and b/docs/classed247_1_1xml_1_1exception__inherit__graph.png differ diff --git a/docs/classes.html b/docs/classes.html new file mode 100644 index 00000000..2ec1881e --- /dev/null +++ b/docs/classes.html @@ -0,0 +1,173 @@ + + + + + + +ED247 Library: Data Structure Index + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Data Structure Index
+
+
+
A | C | D | E | F | H | I | L | N | R | S | T | U | V
+ + + + + + + + + + + + + + + + + + + + + + + + + +
  A  
+
DISSignal (ed247::xml)   ReceiverSet (ed247::udp)   
  V  
+
exception (ed247::xml)   
DISStream (ed247::xml)   
  S  
+
exception (ed247)   
A429Stream (ed247::xml)   
  E  
+
VNADSignal (ed247::xml)   
  f  
+
A664Stream (ed247::xml)   Sample (ed247)   VNADStream (ed247::xml)   
A825Stream (ed247::xml)   Emitter (ed247::udp)   SERIALStream (ed247::xml)   VNADStreamAssistant (ed247)   Receiver::frame_t (ed247::udp)   
ANASignal (ed247::xml)   Errors (ed247::xml)   Signal (ed247)   
  c  
+
  h  
+
ANAStream (ed247::xml)   ETHStream (ed247::xml)   Signal (ed247::xml)   
  C  
+
  F  
+
SignalSet (ed247)   client_list (ed247)   hex_stream   
Stream (ed247)   client_list_container (ed247)   
  i  
+
CBaseList   FixedStreamAssistant (ed247)   Stream (ed247::xml)   
  e  
+
Channel (ed247)   FrameHeader (ed247)   StreamAssistant (ed247)   is_pair (ed247)   
Channel (ed247::xml)   
  H  
+
StreamProtocoled (ed247::xml)   ed247_internal_channel_list_t   is_pair< std::pair< T, U > > (ed247)   
ChannelSet (ed247)   StreamSample (ed247)   ed247_internal_channel_t   
  l  
+
ClientStreamListWithData (ed247)   Header (ed247::xml)   StreamSampleRingBuffer (ed247)   ed247_internal_context_t   
ComInterface (ed247::udp)   
  N  
+
StreamSet (ed247)   ed247_internal_signal_list_t   libed247_runtime_metrics_t   
ComInterface (ed247::xml)   StreamSignals (ed247::xml)   ed247_internal_signal_t   log (ed247)   
Component (ed247::xml)   NADSignal (ed247::xml)   StreamSignals (ed247)   ed247_internal_stream_assistant_t   
  s  
+
Context (ed247)   NADStream (ed247::xml)   
  T  
+
ed247_internal_stream_list_t   
  D  
+
Node (ed247::xml)   ed247_internal_stream_t   sockaddr_in   
  R  
+
Transceiver (ed247::udp)   ed247_sample_details_s   socket_address_equal_to (ed247::udp)   
DataTimestamp (ed247::xml)   
  U  
+
ed247_timestamp_t   socket_address_hash (ed247::udp)   
Receiver (ed247::udp)   
UdpSocket (ed247::xml)   
+
A | C | D | E | F | H | I | L | N | R | S | T | U | V
+
+
+ + + + diff --git a/docs/classhex__stream.html b/docs/classhex__stream.html new file mode 100644 index 00000000..8beb0ec6 --- /dev/null +++ b/docs/classhex__stream.html @@ -0,0 +1,151 @@ + + + + + + +ED247 Library: hex_stream Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
hex_stream Class Reference
+
+
+
+Collaboration diagram for hex_stream:
+
+
Collaboration graph
+
+ + + + +

+Public Member Functions

hex_stream (const void *payload, int len)
 
+ + + +

+Friends

+LIBED247_EXPORT friend std::ostream & operator<< (std::ostream &stream, const hex_stream &)
 
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/classhex__stream.js b/docs/classhex__stream.js new file mode 100644 index 00000000..3c28a6e3 --- /dev/null +++ b/docs/classhex__stream.js @@ -0,0 +1,5 @@ +var classhex__stream = +[ + [ "hex_stream", "classhex__stream.html#a7b480034a327d16faaf7ee6e28f30f35", null ], + [ "operator<<", "classhex__stream.html#a31ec3e93532608273337daa9675f43a1", null ] +]; \ No newline at end of file diff --git a/docs/classhex__stream__coll__graph.map b/docs/classhex__stream__coll__graph.map new file mode 100644 index 00000000..c1c82706 --- /dev/null +++ b/docs/classhex__stream__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classhex__stream__coll__graph.md5 b/docs/classhex__stream__coll__graph.md5 new file mode 100644 index 00000000..13c4386c --- /dev/null +++ b/docs/classhex__stream__coll__graph.md5 @@ -0,0 +1 @@ +9d25dac54b7b100a343ade7dc4f593c4 \ No newline at end of file diff --git a/docs/classhex__stream__coll__graph.png b/docs/classhex__stream__coll__graph.png new file mode 100644 index 00000000..165ca50e Binary files /dev/null and b/docs/classhex__stream__coll__graph.png differ diff --git a/docs/classsockaddr__in.html b/docs/classsockaddr__in.html new file mode 100644 index 00000000..6432aa77 --- /dev/null +++ b/docs/classsockaddr__in.html @@ -0,0 +1,143 @@ + + + + + + +ED247 Library: sockaddr_in Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
sockaddr_in Class Reference
+
+
+
+Inheritance diagram for sockaddr_in:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for sockaddr_in:
+
+
Collaboration graph
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/classsockaddr__in__coll__graph.map b/docs/classsockaddr__in__coll__graph.map new file mode 100644 index 00000000..b0f320a9 --- /dev/null +++ b/docs/classsockaddr__in__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classsockaddr__in__coll__graph.md5 b/docs/classsockaddr__in__coll__graph.md5 new file mode 100644 index 00000000..fbc355da --- /dev/null +++ b/docs/classsockaddr__in__coll__graph.md5 @@ -0,0 +1 @@ +9f5aa919815b9ed798e433bd800b7dba \ No newline at end of file diff --git a/docs/classsockaddr__in__coll__graph.png b/docs/classsockaddr__in__coll__graph.png new file mode 100644 index 00000000..c971aa3a Binary files /dev/null and b/docs/classsockaddr__in__coll__graph.png differ diff --git a/docs/classsockaddr__in__inherit__graph.map b/docs/classsockaddr__in__inherit__graph.map new file mode 100644 index 00000000..72aa771d --- /dev/null +++ b/docs/classsockaddr__in__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/classsockaddr__in__inherit__graph.md5 b/docs/classsockaddr__in__inherit__graph.md5 new file mode 100644 index 00000000..ee40ab68 --- /dev/null +++ b/docs/classsockaddr__in__inherit__graph.md5 @@ -0,0 +1 @@ +56b210805b419d1d2863a88c065c03df \ No newline at end of file diff --git a/docs/classsockaddr__in__inherit__graph.png b/docs/classsockaddr__in__inherit__graph.png new file mode 100644 index 00000000..91637bb3 Binary files /dev/null and b/docs/classsockaddr__in__inherit__graph.png differ diff --git a/docs/closed.png b/docs/closed.png new file mode 100644 index 00000000..98cc2c90 Binary files /dev/null and b/docs/closed.png differ diff --git a/docs/dir_5e6624f49ce11ca4f617d74589146106.html b/docs/dir_5e6624f49ce11ca4f617d74589146106.html new file mode 100644 index 00000000..36603090 --- /dev/null +++ b/docs/dir_5e6624f49ce11ca4f617d74589146106.html @@ -0,0 +1,129 @@ + + + + + + +ED247 Library: src/ed247 Directory Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247 Directory Reference
+
+
+ + +

+Files

+
+
+ + + + diff --git a/docs/dir_5e6624f49ce11ca4f617d74589146106.js b/docs/dir_5e6624f49ce11ca4f617d74589146106.js new file mode 100644 index 00000000..2a66c3a4 --- /dev/null +++ b/docs/dir_5e6624f49ce11ca4f617d74589146106.js @@ -0,0 +1,18 @@ +var dir_5e6624f49ce11ca4f617d74589146106 = +[ + [ "ed247.h", "ed247_8h_source.html", null ], + [ "ed247_bswap.h", "ed247__bswap_8h_source.html", null ], + [ "ed247_channel.h", "ed247__channel_8h_source.html", null ], + [ "ed247_client_list.h", "ed247__client__list_8h_source.html", null ], + [ "ed247_cominterface.h", "ed247__cominterface_8h_source.html", null ], + [ "ed247_context.h", "ed247__context_8h_source.html", null ], + [ "ed247_frame_header.h", "ed247__frame__header_8h_source.html", null ], + [ "ed247_friend_test.h", "ed247__friend__test_8h_source.html", null ], + [ "ed247_logs.h", "ed247__logs_8h_source.html", null ], + [ "ed247_sample.h", "ed247__sample_8h_source.html", null ], + [ "ed247_signal.h", "ed247__signal_8h_source.html", null ], + [ "ed247_stream.h", "ed247__stream_8h_source.html", null ], + [ "ed247_stream_assistant.h", "ed247__stream__assistant_8h_source.html", null ], + [ "ed247_time.h", "ed247__time_8h_source.html", null ], + [ "ed247_xml.h", "ed247__xml_8h_source.html", null ] +]; \ No newline at end of file diff --git a/docs/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/docs/dir_68267d1309a1af8e8297ef4c3efbcdba.html new file mode 100644 index 00000000..7552556f --- /dev/null +++ b/docs/dir_68267d1309a1af8e8297ef4c3efbcdba.html @@ -0,0 +1,129 @@ + + + + + + +ED247 Library: src Directory Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
src Directory Reference
+
+
+ + +

+Directories

+
+
+ + + + diff --git a/docs/dir_68267d1309a1af8e8297ef4c3efbcdba.js b/docs/dir_68267d1309a1af8e8297ef4c3efbcdba.js new file mode 100644 index 00000000..8efa9072 --- /dev/null +++ b/docs/dir_68267d1309a1af8e8297ef4c3efbcdba.js @@ -0,0 +1,4 @@ +var dir_68267d1309a1af8e8297ef4c3efbcdba = +[ + [ "ed247", "dir_5e6624f49ce11ca4f617d74589146106.html", "dir_5e6624f49ce11ca4f617d74589146106" ] +]; \ No newline at end of file diff --git a/docs/doc.png b/docs/doc.png new file mode 100644 index 00000000..17edabff Binary files /dev/null and b/docs/doc.png differ diff --git a/docs/doxygen.css b/docs/doxygen.css new file mode 100644 index 00000000..1425ec53 --- /dev/null +++ b/docs/doxygen.css @@ -0,0 +1,1475 @@ +/* The standard CSS for doxygen 1.8.11 */ + +body, table, div, p, dl { + font: 400 14px/22px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font: 400 14px/28px Roboto,sans-serif; + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd { + margin-top: 2px; +} + +p.starttd { + margin-top: 0px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited, a.line, a.line:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px 6px; + margin: 4px 8px 4px 2px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line:after { + content:"\000A"; + white-space: pre; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah, span.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); +} + +div.classindex ul { + list-style: none; + padding-left: 0; +} + +div.classindex span.ai { + display: inline-block; +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view inside a (index) page */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #9CAFD4; + border-bottom: 1px solid #9CAFD4; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; + padding-top: 3px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +.arrow { + color: #9CAFD4; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; + font-size: 80%; + display: inline-block; + width: 16px; + height: 22px; +} + +.icon { + font-family: Arial, Helvetica; + font-weight: bold; + font-size: 12px; + height: 14px; + width: 16px; + display: inline-block; + background-color: #728DC1; + color: white; + text-align: center; + border-radius: 4px; + margin-left: 2px; + margin-right: 2px; +} + +.icona { + width: 24px; + height: 22px; + display: inline-block; +} + +.iconfopen { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderopen.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.iconfclosed { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderclosed.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.icondoc { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('doc.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +table.directory { + font: 400 14px Roboto,sans-serif; +} + +/* @end */ + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable caption { + caption-side: top; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + /*width: 100%;*/ + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 3px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + /*width: 100%;*/ +} + +.fieldtable td.fielddoc p:first-child { + margin-top: 0px; +} + +.fieldtable td.fielddoc p:last-child { + margin-bottom: 2px; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +table.classindex +{ + margin: 10px; + white-space: nowrap; + margin-left: 3%; + margin-right: 3%; + width: 94%; + border: 0; + border-spacing: 0; + padding: 0; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectalign +{ + vertical-align: middle; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.diagraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 8px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +/* tooltip related style info */ + +.ttc { + position: absolute; + display: none; +} + +#powerTip { + cursor: default; + white-space: nowrap; + background-color: white; + border: 1px solid gray; + border-radius: 4px 4px 4px 4px; + box-shadow: 1px 1px 7px gray; + display: none; + font-size: smaller; + max-width: 80%; + opacity: 0.9; + padding: 1ex 1em 1em; + position: absolute; + z-index: 2147483647; +} + +#powerTip div.ttdoc { + color: grey; + font-style: italic; +} + +#powerTip div.ttname a { + font-weight: bold; +} + +#powerTip div.ttname { + font-weight: bold; +} + +#powerTip div.ttdeci { + color: #006318; +} + +#powerTip div { + margin: 0px; + padding: 0px; + font: 12px/16px Roboto,sans-serif; +} + +#powerTip:before, #powerTip:after { + content: ""; + position: absolute; + margin: 0px; +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.s:after, #powerTip.s:before, +#powerTip.w:after, #powerTip.w:before, +#powerTip.e:after, #powerTip.e:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.nw:after, #powerTip.nw:before, +#powerTip.sw:after, #powerTip.sw:before { + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; +} + +#powerTip.n:after, #powerTip.s:after, +#powerTip.w:after, #powerTip.e:after, +#powerTip.nw:after, #powerTip.ne:after, +#powerTip.sw:after, #powerTip.se:after { + border-color: rgba(255, 255, 255, 0); +} + +#powerTip.n:before, #powerTip.s:before, +#powerTip.w:before, #powerTip.e:before, +#powerTip.nw:before, #powerTip.ne:before, +#powerTip.sw:before, #powerTip.se:before { + border-color: rgba(128, 128, 128, 0); +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.nw:after, #powerTip.nw:before { + top: 100%; +} + +#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { + border-top-color: #ffffff; + border-width: 10px; + margin: 0px -10px; +} +#powerTip.n:before { + border-top-color: #808080; + border-width: 11px; + margin: 0px -11px; +} +#powerTip.n:after, #powerTip.n:before { + left: 50%; +} + +#powerTip.nw:after, #powerTip.nw:before { + right: 14px; +} + +#powerTip.ne:after, #powerTip.ne:before { + left: 14px; +} + +#powerTip.s:after, #powerTip.s:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.sw:after, #powerTip.sw:before { + bottom: 100%; +} + +#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { + border-bottom-color: #ffffff; + border-width: 10px; + margin: 0px -10px; +} + +#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { + border-bottom-color: #808080; + border-width: 11px; + margin: 0px -11px; +} + +#powerTip.s:after, #powerTip.s:before { + left: 50%; +} + +#powerTip.sw:after, #powerTip.sw:before { + right: 14px; +} + +#powerTip.se:after, #powerTip.se:before { + left: 14px; +} + +#powerTip.e:after, #powerTip.e:before { + left: 100%; +} +#powerTip.e:after { + border-left-color: #ffffff; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.e:before { + border-left-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +#powerTip.w:after, #powerTip.w:before { + right: 100%; +} +#powerTip.w:after { + border-right-color: #ffffff; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.w:before { + border-right-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/docs/doxygen.png b/docs/doxygen.png new file mode 100644 index 00000000..3ff17d80 Binary files /dev/null and b/docs/doxygen.png differ diff --git a/docs/dynsections.js b/docs/dynsections.js new file mode 100644 index 00000000..85e18369 --- /dev/null +++ b/docs/dynsections.js @@ -0,0 +1,97 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} + +function toggleLevel(level) +{ + $('table.directory tr').each(function() { + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + + +ED247 Library: src/ed247/ed247.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247.h
+
+
+
1 /* -*- mode: c; c-basic-offset: 4 -*- */
2 /******************************************************************************
3  *
4  * The MIT Licence
5  *
6  * Copyright (c) 2021 Airbus Operations S.A.S
7  *
8  * Permission is hereby granted, free of charge, to any person obtaining a
9  * copy of this software and associated documentation files (the "Software"),
10  * to deal in the Software without restriction, including without limitation
11  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
12  * and/or sell copies of the Software, and to permit persons to whom the
13  * Software is furnished to do so, subject to the following conditions:
14  *
15  * The above copyright notice and this permission notice shall be included
16  * in all copies or substantial portions of the Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
21  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
22  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
23  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
24  * OTHER DEALINGS IN THE SOFTWARE.
25  *****************************************************************************/
26 #ifndef _LIBED247_H_
27 #define _LIBED247_H_
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32 
33 #include <stdint.h>
34 #include <stdbool.h>
35 
36 #ifdef __unix__
37 # define LIBED247_EXPORT __attribute__ ((visibility ("default")))
38 #elif _WIN32
39 # ifdef LIBED247_EXPORTS
40  // We are building the DLL
41 # define LIBED247_EXPORT __declspec(dllexport)
42 # else
43 # ifdef LIBED247_STATIC
44  // We use a static version of the library
45 # define LIBED247_EXPORT
46 # else
47  // Default: we are importing DLL symbols
48 # define LIBED247_EXPORT __declspec(dllimport)
49 # endif
50 # endif
51 #endif
52 
53 /* =========================================================================
54  * Global
55  * ========================================================================= */
60 /* =========================================================================
61  * Global constants
62  * ========================================================================= */
67 typedef enum {
68  ED247_STATUS_SUCCESS = 0,
69  ED247_STATUS_FAILURE,
70  ED247_STATUS_TIMEOUT,
71  ED247_STATUS_NODATA
73 
78 typedef enum {
79  ED247_LOG_LEVEL_MIN = 0,
80  ED247_LOG_LEVEL_ERROR = ED247_LOG_LEVEL_MIN,
81  ED247_LOG_LEVEL_WARNING = 1,
82  ED247_LOG_LEVEL_DEFAULT = ED247_LOG_LEVEL_WARNING,
83  ED247_LOG_LEVEL_INFO = 2,
84  ED247_LOG_LEVEL_DEBUG = 3,
85  ED247_LOG_LEVEL_CRAZY = 99, // Will log each payload
86  ED247_LOG_LEVEL_MAX = ED247_LOG_LEVEL_CRAZY,
87  ED247_LOG_LEVEL_UNSET = 100
89 
94 typedef enum {
95  ED247_YESNO_NO = 0,
96  ED247_YESNO_YES,
97  ED247_YESNO__INVALID
99 
104 typedef enum {
105  ED247_STANDARD__INVALID,
106  ED247_STANDARD_ED247,
107  ED247_STANDARD_ED247A,
108  ED247_STANDARD__COUNT
110 
115 typedef uint16_t ed247_uid_t;
116 
121 typedef enum {
122  ED247_COMPONENT_TYPE__INVALID,
123  ED247_COMPONENT_TYPE_VIRTUAL,
124  ED247_COMPONENT_TYPE_BRIDGE,
125  ED247_COMPONENT_TYPE__COUNT
127 
132 typedef enum {
133  ED247_STREAM_TYPE__INVALID,
134  ED247_STREAM_TYPE_A664,
135  ED247_STREAM_TYPE_A429,
136  ED247_STREAM_TYPE_A825,
137  ED247_STREAM_TYPE_M1553,
138  ED247_STREAM_TYPE_SERIAL,
139  ED247_STREAM_TYPE_AUDIO,
140  ED247_STREAM_TYPE_VIDEO,
141  ED247_STREAM_TYPE_ETHERNET,
142  ED247_STREAM_TYPE_ANALOG,
143  ED247_STREAM_TYPE_DISCRETE,
144  ED247_STREAM_TYPE_NAD,
145  ED247_STREAM_TYPE_VNAD,
146  ED247_STREAM_TYPE__COUNT
148 
153 typedef enum {
154  ED247_DIRECTION__INVALID = 0,
155  ED247_DIRECTION_IN = 0b01,
156  ED247_DIRECTION_OUT = 0b10,
157  ED247_DIRECTION_INOUT = ED247_DIRECTION_IN | ED247_DIRECTION_OUT
159 
164 typedef enum {
165  ED247_SIGNAL_TYPE__INVALID,
166  ED247_SIGNAL_TYPE_ANALOG = ED247_STREAM_TYPE_ANALOG,
167  ED247_SIGNAL_TYPE_DISCRETE = ED247_STREAM_TYPE_DISCRETE,
168  ED247_SIGNAL_TYPE_NAD = ED247_STREAM_TYPE_NAD,
169  ED247_SIGNAL_TYPE_VNAD = ED247_STREAM_TYPE_VNAD
171 
176 typedef enum {
177  ED247_NAD_TYPE__INVALID,
178  ED247_NAD_TYPE_INT8,
179  ED247_NAD_TYPE_INT16,
180  ED247_NAD_TYPE_INT32,
181  ED247_NAD_TYPE_INT64,
182  ED247_NAD_TYPE_UINT8,
183  ED247_NAD_TYPE_UINT16,
184  ED247_NAD_TYPE_UINT32,
185  ED247_NAD_TYPE_UINT64,
186  ED247_NAD_TYPE_FLOAT32,
187  ED247_NAD_TYPE_FLOAT64,
188  ED247_NAD_TYPE__COUNT
190 
195 typedef enum {
196  ED247_DISCRETE_FALSE = 0x00,
197  ED247_DISCRETE_TRUE = 0xFF
199 
200 
201 
202 /* =========================================================================
203  * Global Types
204  * ========================================================================= */
209 typedef struct {
210  uint32_t epoch_s;
211  uint32_t offset_ns;
213 #define LIBED247_TIMESTAMP_DEFAULT ed247_timestamp_t{0, 0}
214 
220 
226 
232 
238 
244 
250 
256 
262 
263 
264 /* =========================================================================
265  * Global Methods
266  * ========================================================================= */
272 extern LIBED247_EXPORT const char * ed247_get_implementation_name();
273 
279 extern LIBED247_EXPORT const char * ed247_get_implementation_version();
280 
289 extern LIBED247_EXPORT ed247_status_t ed247_set_log(
290  ed247_log_level_t log_level,
291  const char * log_filepath);
292 
300 extern LIBED247_EXPORT ed247_status_t ed247_set_log_level(
301  ed247_log_level_t log_level);
302 
309 extern LIBED247_EXPORT ed247_status_t ed247_get_log_level(
310  ed247_log_level_t * log_level);
311 
312 
313 /* =========================================================================
314  * ED247 Context
315  * ========================================================================= */
321 /* =========================================================================
322  * ED247 Context - Init
323  * ========================================================================= */
337 extern LIBED247_EXPORT ed247_status_t ed247_load_file(
338  const char * ecic_file_path,
339  ed247_context_t * context);
340 
349 extern LIBED247_EXPORT ed247_status_t ed247_load_content(
350  const char * ecic_file_content,
351  ed247_context_t * context);
352 
360 extern LIBED247_EXPORT ed247_status_t ed247_unload(
361  ed247_context_t context);
362 
372 extern LIBED247_EXPORT ed247_status_t ed247_component_set_user_data(
373  ed247_context_t context,
374  void *user_data);
375 
384 extern LIBED247_EXPORT ed247_status_t ed247_component_get_user_data(
385  ed247_context_t context,
386  void **user_data);
387 
388 /* =========================================================================
389  * ED247 Context - Global information
390  * ========================================================================= */
396 extern LIBED247_EXPORT const char* ed247_component_get_version(ed247_context_t context);
397 extern LIBED247_EXPORT ed247_component_type_t ed247_component_get_type(ed247_context_t context);
398 extern LIBED247_EXPORT const char* ed247_component_get_name(ed247_context_t context);
399 extern LIBED247_EXPORT const char* ed247_component_get_comment(ed247_context_t context);
400 extern LIBED247_EXPORT ed247_uid_t ed247_component_get_identifier(ed247_context_t context);
401 extern LIBED247_EXPORT ed247_standard_t ed247_component_get_standard_revision(ed247_context_t context);
402 
403 extern LIBED247_EXPORT const char* ed247_file_producer_get_identifier(ed247_context_t context);
404 extern LIBED247_EXPORT const char* ed247_file_producer_get_comment(ed247_context_t context);
407 /* =========================================================================
408  * ED247 Context - Get Configuration
409  * ========================================================================= */
424 extern LIBED247_EXPORT ed247_status_t ed247_get_channel_list(
425  ed247_context_t context,
426  ed247_channel_list_t * channels);
427 
442 extern LIBED247_EXPORT ed247_status_t ed247_find_channels(
443  ed247_context_t context,
444  const char * regex_name,
445  ed247_channel_list_t * channels);
446 
456 extern LIBED247_EXPORT ed247_status_t ed247_get_channel(
457  ed247_context_t context,
458  const char * name,
459  ed247_channel_t * channel);
460 
470 extern LIBED247_EXPORT ed247_status_t ed247_get_stream_list(
471  ed247_context_t context,
472  ed247_stream_list_t * streams);
473 
488 extern LIBED247_EXPORT ed247_status_t ed247_find_streams(
489  ed247_context_t context,
490  const char * regex_name,
491  ed247_stream_list_t * streams);
492 
493 
503 extern LIBED247_EXPORT ed247_status_t ed247_get_stream(
504  ed247_context_t context,
505  const char * name,
506  ed247_stream_t * stream);
507 
521 extern LIBED247_EXPORT ed247_status_t ed247_find_signals(
522  ed247_context_t context,
523  const char * regex_name,
524  ed247_signal_list_t * signals);
525 
535 extern LIBED247_EXPORT ed247_status_t ed247_get_signal(
536  ed247_context_t context,
537  const char * name,
538  ed247_signal_t * signal);
539 
540 
541 /* =========================================================================
542  * ED247 Context - Receive and send
543  * ========================================================================= */
563 extern LIBED247_EXPORT ed247_status_t ed247_wait_frame(
564  ed247_context_t context,
565  ed247_stream_list_t * streams,
566  int32_t timeout_us);
567 
579 extern LIBED247_EXPORT ed247_status_t ed247_wait_during(
580  ed247_context_t context,
581  ed247_stream_list_t * streams,
582  int32_t duration_us);
583 
597 extern LIBED247_EXPORT ed247_status_t ed247_send_pushed_samples(
598  ed247_context_t context);
599 
600 
601 /* =========================================================================
602  * ED247 Context - Callbacks
603  * Using this API is not recomended and might be removed in future version
604  * ========================================================================= */
615 typedef ed247_status_t (*ed247_stream_recv_callback_t)(ed247_context_t context, ed247_stream_t stream);
616 
626 extern LIBED247_EXPORT ed247_status_t ed247_stream_register_recv_callback(
627  ed247_context_t context,
628  ed247_stream_t stream,
630 
640 extern LIBED247_EXPORT ed247_status_t ed247_stream_unregister_recv_callback(
641  ed247_context_t context,
642  ed247_stream_t stream,
644 
654 extern LIBED247_EXPORT ed247_status_t ed247_streams_register_recv_callback(
655  ed247_context_t context,
656  ed247_stream_list_t streams,
658 
668 extern LIBED247_EXPORT ed247_status_t ed247_streams_unregister_recv_callback(
669  ed247_context_t context,
670  ed247_stream_list_t streams,
672 
681 extern LIBED247_EXPORT ed247_status_t ed247_register_recv_callback(
682  ed247_context_t context,
684 
693 extern LIBED247_EXPORT ed247_status_t ed247_unregister_recv_callback(
694  ed247_context_t context,
696 
697 
698 /* =========================================================================
699  * Time handing
700  * ========================================================================= */
710 typedef void (*ed247_get_time_t)(ed247_timestamp_t* timestamp);
711 
723 extern LIBED247_EXPORT void ed247_get_time(ed247_timestamp_t* timestamp);
724 
734 extern LIBED247_EXPORT void ed247_set_transport_timestamp_callback(ed247_get_time_t callback);
735 
744 extern LIBED247_EXPORT void ed247_set_receive_timestamp_callback(ed247_get_time_t callback);
745 
752 extern LIBED247_EXPORT void ed247_get_transport_timestamp(ed247_timestamp_t* timestamp);
753 
760 extern LIBED247_EXPORT void ed247_get_receive_timestamp(ed247_timestamp_t* timestamp);
761 
762 
763 /* =========================================================================
764  * Channel
765  * ========================================================================= */
774 extern LIBED247_EXPORT const char* ed247_channel_get_name(ed247_channel_t channel);
775 extern LIBED247_EXPORT const char* ed247_channel_get_comment(ed247_channel_t channel);
776 extern LIBED247_EXPORT ed247_standard_t ed247_channel_get_frame_standard_revision(ed247_channel_t channel);
789 extern LIBED247_EXPORT ed247_status_t ed247_channel_get_stream_list(
790  ed247_channel_t channel,
791  ed247_stream_list_t * streams);
792 
807 extern LIBED247_EXPORT ed247_status_t ed247_channel_find_streams(
808  ed247_channel_t channel,
809  const char * regex_name,
810  ed247_stream_list_t * streams);
811 
821 extern LIBED247_EXPORT ed247_status_t ed247_channel_get_stream(
822  ed247_channel_t channel,
823  const char * name,
824  ed247_stream_t * stream);
825 
835 extern LIBED247_EXPORT ed247_status_t ed247_channel_set_user_data(
836  ed247_channel_t channel,
837  void * user_data);
838 
847 extern LIBED247_EXPORT ed247_status_t ed247_channel_get_user_data(
848  ed247_channel_t channel,
849  void ** user_data);
850 
851 
852 /* =========================================================================
853  * Channel - List
854  * ========================================================================= */
868 extern LIBED247_EXPORT ed247_status_t ed247_channel_list_size(
869  ed247_channel_list_t channels,
870  uint32_t * size);
871 
882 extern LIBED247_EXPORT ed247_status_t ed247_channel_list_next(
883  ed247_channel_list_t channels,
884  ed247_channel_t * channel);
885 
893 extern LIBED247_EXPORT ed247_status_t ed247_channel_list_free(
894  ed247_channel_list_t channels);
895 
896 
897 
898 /* =========================================================================
899  * Stream
900  * ========================================================================= */
909 typedef struct ed247_sample_details_s {
910  ed247_uid_t component_identifier;
911  uint16_t sequence_number;
912  ed247_timestamp_t transport_timestamp;
914 #define LIBED247_SAMPLE_DETAILS_DEFAULT ed247_sample_details_t{0, 0, LIBED247_TIMESTAMP_DEFAULT}
915 
920 extern LIBED247_EXPORT const char* ed247_stream_get_name(ed247_stream_t stream);
921 extern LIBED247_EXPORT ed247_direction_t ed247_stream_get_direction(ed247_stream_t stream);
922 extern LIBED247_EXPORT ed247_stream_type_t ed247_stream_get_type(ed247_stream_t stream);
923 extern LIBED247_EXPORT const char* ed247_stream_get_comment(ed247_stream_t stream);
924 extern LIBED247_EXPORT const char* ed247_stream_get_icd(ed247_stream_t stream);
925 extern LIBED247_EXPORT ed247_uid_t ed247_stream_get_uid(ed247_stream_t stream);
926 extern LIBED247_EXPORT uint32_t ed247_stream_get_sample_max_number(ed247_stream_t stream);
927 extern LIBED247_EXPORT uint32_t ed247_stream_get_sample_max_size_bytes(ed247_stream_t stream);
928 extern LIBED247_EXPORT uint32_t ed247_stream_get_sampling_period_us(ed247_stream_t stream);
940 extern LIBED247_EXPORT ed247_status_t ed247_stream_has_signals(
941  ed247_stream_t stream,
942  uint8_t * yesno);
943 
953 extern LIBED247_EXPORT ed247_status_t ed247_stream_get_signal_list(
954  ed247_stream_t stream,
955  ed247_signal_list_t * signals);
956 
971 extern LIBED247_EXPORT ed247_status_t ed247_stream_find_signals(
972  ed247_stream_t stream,
973  const char * regex_name,
974  ed247_signal_list_t * signals);
975 
985 extern LIBED247_EXPORT ed247_status_t ed247_stream_get_signal(
986  ed247_stream_t stream,
987  const char * name,
988  ed247_signal_t * signal);
989 
998 extern LIBED247_EXPORT ed247_status_t ed247_stream_get_channel(
999  ed247_stream_t stream,
1000  ed247_channel_t * channel);
1001 
1011 extern LIBED247_EXPORT ed247_status_t ed247_stream_set_user_data(
1012  ed247_stream_t stream,
1013  void * user_data);
1014 
1023 extern LIBED247_EXPORT ed247_status_t ed247_stream_get_user_data(
1024  ed247_stream_t stream,
1025  void ** user_data);
1026 
1027 
1028 /* =========================================================================
1029  * Stream - Read & Write
1030  * ========================================================================= */
1045 extern LIBED247_EXPORT ed247_status_t ed247_stream_get_assistant(
1046  ed247_stream_t stream,
1047  ed247_stream_assistant_t * assistant);
1048 
1060 extern LIBED247_EXPORT ed247_status_t ed247_stream_allocate_sample(
1061  ed247_stream_t stream,
1062  void ** sample_data,
1063  uint32_t * sample_size);
1064 
1071 extern LIBED247_EXPORT ed247_status_t ed247_stream_free_sample(
1072  void* sample_data);
1073 
1074 
1083 extern LIBED247_EXPORT ed247_status_t ed247_stream_samples_number(
1084  ed247_stream_t stream,
1085  ed247_direction_t direction,
1086  uint32_t * size);
1087 
1101 extern LIBED247_EXPORT ed247_status_t ed247_stream_push_sample(
1102  ed247_stream_t stream,
1103  const void * sample_data,
1104  uint32_t sample_data_size,
1105  const ed247_timestamp_t * data_timestamp,
1106  bool * full);
1107 
1122 extern LIBED247_EXPORT ed247_status_t ed247_stream_push_samples(
1123  ed247_stream_t stream,
1124  const void * samples_data,
1125  const uint32_t * samples_size,
1126  uint32_t samples_number,
1127  const ed247_timestamp_t * data_timestamp,
1128  bool * full);
1129 
1146 extern LIBED247_EXPORT ed247_status_t ed247_stream_pop_sample(
1147  ed247_stream_t stream,
1148  const void ** sample_data,
1149  uint32_t * sample_size,
1150  const ed247_timestamp_t ** data_timestamp,
1151  const ed247_timestamp_t ** recv_timestamp,
1152  const ed247_sample_details_t ** sample_details,
1153  bool * empty);
1154 
1155 
1156 /* =========================================================================
1157  * Stream - List
1158  * ========================================================================= */
1172 extern LIBED247_EXPORT ed247_status_t ed247_stream_list_size(
1173  ed247_stream_list_t streams,
1174  uint32_t * size);
1175 
1186 extern LIBED247_EXPORT ed247_status_t ed247_stream_list_next(
1187  ed247_stream_list_t streams,
1188  ed247_stream_t * stream);
1189 
1197 extern LIBED247_EXPORT ed247_status_t ed247_stream_list_free(
1198  ed247_stream_list_t streams);
1199 
1200 
1201 
1202 /* =========================================================================
1203  * Signal
1204  * ========================================================================= */
1216 extern LIBED247_EXPORT uint32_t ed247_nad_type_size(ed247_nad_type_t nad_type);
1217 
1222 extern LIBED247_EXPORT const char* ed247_signal_get_name(ed247_signal_t signal);
1223 extern LIBED247_EXPORT const char* ed247_signal_get_comment(ed247_signal_t signal);
1224 extern LIBED247_EXPORT const char* ed247_signal_get_icd(ed247_signal_t signal);
1225 extern LIBED247_EXPORT ed247_signal_type_t ed247_signal_get_type(ed247_signal_t signal);
1227 extern LIBED247_EXPORT uint32_t ed247_signal_get_byte_offset(ed247_signal_t signal);
1228 extern LIBED247_EXPORT const char* ed247_signal_analogue_get_electrical_unit(ed247_signal_t analogue_signal);
1230 extern LIBED247_EXPORT ed247_nad_type_t ed247_signal_nad_get_type(ed247_signal_t nad_signal);
1232 extern LIBED247_EXPORT const char* ed247_signal_nad_get_unit(ed247_signal_t nad_signal);
1233 extern LIBED247_EXPORT uint32_t ed247_signal_nad_get_dimensions_count(ed247_signal_t nad_signal);
1234 extern LIBED247_EXPORT uint32_t ed247_signal_nad_get_dimension(ed247_signal_t nad_signal, uint32_t dimention_id);
1235 extern LIBED247_EXPORT uint32_t ed247_signal_vnad_get_position(ed247_signal_t vnad_signal);
1236 extern LIBED247_EXPORT uint32_t ed247_signal_vnad_get_max_number(ed247_signal_t vnad_signal);
1248 extern LIBED247_EXPORT ed247_status_t ed247_signal_set_user_data(
1249  ed247_signal_t signal,
1250  void * user_data);
1251 
1260 extern LIBED247_EXPORT ed247_status_t ed247_signal_get_user_data(
1261  ed247_signal_t signal,
1262  void ** user_data);
1263 
1272 extern LIBED247_EXPORT ed247_status_t ed247_signal_get_stream(
1273  ed247_signal_t signal,
1274  ed247_stream_t * stream);
1275 
1286 extern LIBED247_EXPORT ed247_status_t ed247_signal_get_assistant(
1287  ed247_signal_t signal,
1288  ed247_stream_assistant_t * assistant);
1289 
1290 
1302 extern LIBED247_EXPORT ed247_status_t ed247_signal_allocate_sample(
1303  ed247_signal_t signal,
1304  void ** sample_data,
1305  uint32_t * sample_size);
1306 
1313 extern LIBED247_EXPORT ed247_status_t ed247_signal_free_sample(
1314  void * sample_data);
1315 
1316 
1317 /* =========================================================================
1318  * Signal - List
1319  * ========================================================================= */
1333 extern LIBED247_EXPORT ed247_status_t ed247_signal_list_size(
1334  ed247_signal_list_t signals,
1335  uint32_t * size);
1336 
1347 extern LIBED247_EXPORT ed247_status_t ed247_signal_list_next(
1348  ed247_signal_list_t signals,
1349  ed247_signal_t * signal);
1350 
1358 extern LIBED247_EXPORT ed247_status_t ed247_signal_list_free(
1359  ed247_signal_list_t signals);
1360 
1361 
1362 
1363 
1364 /* =========================================================================
1365  * Stream assistant
1366  * ========================================================================= */
1380 extern LIBED247_EXPORT ed247_status_t ed247_stream_assistant_get_stream(
1381  ed247_stream_assistant_t assistant,
1382  ed247_stream_t * stream);
1383 
1408 extern LIBED247_EXPORT ed247_status_t ed247_stream_assistant_write_signal(
1409  ed247_stream_assistant_t assistant,
1410  ed247_signal_t signal,
1411  const void * signal_sample_data,
1412  uint32_t signal_sample_size);
1413 
1418 extern LIBED247_EXPORT bool ed247_stream_assistant_was_written(ed247_stream_assistant_t assistant);
1419 
1441 extern LIBED247_EXPORT ed247_status_t ed247_stream_assistant_read_signal(
1442  ed247_stream_assistant_t assistant,
1443  ed247_signal_t signal,
1444  const void ** signal_sample_data,
1445  uint32_t * signal_sample_size);
1446 
1447 
1466 extern LIBED247_EXPORT ed247_status_t ed247_stream_assistant_push_sample(
1467  ed247_stream_assistant_t assistant,
1468  const ed247_timestamp_t * data_timestamp,
1469  bool * full);
1470 
1483 extern LIBED247_EXPORT ed247_status_t ed247_stream_assistants_written_push_samples(
1484  ed247_context_t context,
1485  const ed247_timestamp_t* data_timestamp);
1486 
1505 extern LIBED247_EXPORT ed247_status_t ed247_stream_assistant_pop_sample(
1506  ed247_stream_assistant_t assistant,
1507  const ed247_timestamp_t ** data_timestamp,
1508  const ed247_timestamp_t ** recv_timestamp,
1509  const ed247_sample_details_t ** sample_details,
1510  bool * empty);
1511 
1522 extern LIBED247_EXPORT ed247_status_t stream_assistants_pop_samples(ed247_context_t context);
1523 
1524 /* =========================================================================
1525  * Strings conversion
1526  * ========================================================================= */
1538 extern LIBED247_EXPORT const char * ed247_status_string(
1539  ed247_status_t status);
1540 
1547 extern LIBED247_EXPORT const char * ed247_standard_string(
1548  ed247_standard_t standard);
1549 
1556 extern LIBED247_EXPORT ed247_standard_t ed247_standard_from_string(
1557  const char *standard);
1558 
1565 extern LIBED247_EXPORT const char * ed247_direction_string(
1566  ed247_direction_t direction);
1567 
1574 extern LIBED247_EXPORT ed247_direction_t ed247_direction_from_string(
1575  const char *direction);
1576 
1583 extern LIBED247_EXPORT const char * ed247_yesno_string(
1584  ed247_yesno_t yesno);
1585 
1592 extern LIBED247_EXPORT ed247_yesno_t ed247_yesno_from_string(
1593  const char *yesno);
1594 
1601 extern LIBED247_EXPORT const char * ed247_component_type_string(
1602  ed247_component_type_t component_type);
1603 
1610 extern LIBED247_EXPORT ed247_component_type_t ed247_component_type_from_string(
1611  const char *component_type);
1612 
1619 extern LIBED247_EXPORT const char * ed247_stream_type_string(
1620  ed247_stream_type_t stream_type);
1621 
1628 extern LIBED247_EXPORT ed247_stream_type_t ed247_stream_type_from_string(
1629  const char *stream_type);
1630 
1637 extern LIBED247_EXPORT const char * ed247_signal_type_string(
1638  ed247_signal_type_t signal_type);
1639 
1646 extern LIBED247_EXPORT ed247_signal_type_t ed247_signal_type_from_string(
1647  const char *signal_type);
1648 
1655 extern LIBED247_EXPORT const char * ed247_nad_type_string(
1656  ed247_nad_type_t nad_type);
1657 
1664 extern LIBED247_EXPORT ed247_nad_type_t ed247_nad_type_from_string(
1665  const char *nad_type);
1666 
1667 
1668 /* =========================================================================
1669  * Deprecated stuff
1670  * ========================================================================= */
1676 #if defined(__GNUC__) || defined(__clang__)
1677 # define DEPRECATED __attribute__((deprecated))
1678 #elif defined(_MSC_VER)
1679 # define DEPRECATED __declspec(deprecated)
1680 #endif
1681 
1686 extern DEPRECATED LIBED247_EXPORT const char * libed247_errors();
1687 
1692 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_load(const char *ecic_file_path,void* unused,ed247_context_t *context);
1693 
1698 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_component_get_channels(ed247_context_t context, ed247_channel_list_t * channels);
1699 
1704 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_component_get_streams(ed247_context_t context, ed247_stream_list_t * streams);
1705 
1710 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_channel_get_streams(ed247_channel_t channel, ed247_stream_list_t *streams);
1711 
1716 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_find_channel_streams(ed247_channel_t channel, const char * regex_name, ed247_stream_list_t * streams);
1717 
1722 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_get_channel_stream(ed247_channel_t channel, const char * name, ed247_stream_t * stream);
1723 
1728 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_stream_contains_signals(ed247_stream_t stream, uint8_t * yesno);
1729 
1734 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_stream_get_signals(ed247_stream_t stream, ed247_signal_list_t *signals);
1735 
1740 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_find_stream_signals(ed247_stream_t stream, const char * regex_name, ed247_signal_list_t * signals);
1741 
1746 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_get_stream_signal(ed247_stream_t stream, const char * name, ed247_signal_t * signal);
1747 
1752 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_free(void *data);
1753 
1754 
1755 typedef struct { uint32_t a; uint32_t b; } libed247_runtime_metrics_t;
1760 extern DEPRECATED LIBED247_EXPORT ed247_status_t ed247_get_runtime_metrics(ed247_context_t context, const libed247_runtime_metrics_t ** metrics);
1761 
1762 
1763 
1764 #ifdef __cplusplus
1765 };
1766 #endif
1767 
1768 #endif
LIBED247_EXPORT ed247_status_t ed247_stream_push_sample(ed247_stream_t stream, const void *sample_data, uint32_t sample_data_size, const ed247_timestamp_t *data_timestamp, bool *full)
Write and push a single sample in the samples stack of the stream.
Definition: ed247.cpp:1412
+
LIBED247_EXPORT ed247_status_t ed247_signal_get_stream(ed247_signal_t signal, ed247_stream_t *stream)
Get the stream that contain this signal.
Definition: ed247.cpp:1707
+
struct ed247_internal_signal_list_t * ed247_signal_list_t
Signal list identifier.
Definition: ed247.h:255
+
LIBED247_EXPORT void ed247_get_transport_timestamp(ed247_timestamp_t *timestamp)
Return the time to timestamp the transport.
Definition: ed247_time.cpp:102
+
LIBED247_EXPORT ed247_status_t ed247_stream_get_channel(ed247_stream_t stream, ed247_channel_t *channel)
Get the channel that contain this stream.
Definition: ed247.cpp:1219
+
LIBED247_EXPORT ed247_component_type_t ed247_component_type_from_string(const char *component_type)
ed247_component_type_t from string conversion
Definition: ed247_conversion.cpp:175
+
LIBED247_EXPORT ed247_status_t ed247_find_streams(ed247_context_t context, const char *regex_name, ed247_stream_list_t *streams)
Find all streams of the component whose names match regex_name.
Definition: ed247.cpp:415
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_get_runtime_metrics(ed247_context_t context, const libed247_runtime_metrics_t **metrics)
Deprecated: Not working.
Definition: ed247.cpp:235
+
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_write_signal(ed247_stream_assistant_t assistant, ed247_signal_t signal, const void *signal_sample_data, uint32_t signal_sample_size)
Write a signal into the assistant sample buffer.
Definition: ed247.cpp:1882
+
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_push_sample(ed247_stream_assistant_t assistant, const ed247_timestamp_t *data_timestamp, bool *full)
Push the assistant sample buffer on the stream stack.
Definition: ed247.cpp:1960
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_component_get_streams(ed247_context_t context, ed247_stream_list_t *streams)
Deprecated: use ed247_get_stream_list.
Definition: ed247.cpp:545
+
LIBED247_EXPORT const char * ed247_standard_string(ed247_standard_t standard)
ed247_standard_t to string conversion
Definition: ed247_conversion.cpp:92
+
LIBED247_EXPORT void ed247_set_transport_timestamp_callback(ed247_get_time_t callback)
Set the function to use to timestamp the transport (aka emit date)
Definition: ed247_time.cpp:92
+
LIBED247_EXPORT const char * ed247_stream_type_string(ed247_stream_type_t stream_type)
ed247_stream_type_t to string conversion
Definition: ed247_conversion.cpp:188
+
LIBED247_EXPORT ed247_status_t ed247_signal_set_user_data(ed247_signal_t signal, void *user_data)
Assign user data to the signal.
Definition: ed247.cpp:1667
+
DEPRECATED LIBED247_EXPORT const char * libed247_errors()
Deprecated. Return NULL.
Definition: ed247.cpp:100
+
struct ed247_internal_channel_t * ed247_channel_t
Channel identifier.
Definition: ed247.h:225
+
LIBED247_EXPORT ed247_status_t ed247_stream_samples_number(ed247_stream_t stream, ed247_direction_t direction, uint32_t *size)
Number of samples in the stream stack.
Definition: ed247.cpp:1384
+
struct ed247_internal_channel_list_t * ed247_channel_list_t
Channel list identifier.
Definition: ed247.h:231
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_get_channel_stream(ed247_channel_t channel, const char *name, ed247_stream_t *stream)
Deprecated: use ed247_channel_get_stream.
Definition: ed247.cpp:976
+
LIBED247_EXPORT ed247_status_t ed247_get_signal(ed247_context_t context, const char *name, ed247_signal_t *signal)
Get a signal of the component.
Definition: ed247.cpp:507
+
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_pop_sample(ed247_stream_assistant_t assistant, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty)
Pop a sample from stream samples stack.
Definition: ed247.cpp:2002
+
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_read_signal(ed247_stream_assistant_t assistant, ed247_signal_t signal, const void **signal_sample_data, uint32_t *signal_sample_size)
Read a signal sample from the assistant sample buffer.
Definition: ed247.cpp:1924
+
LIBED247_EXPORT ed247_status_t ed247_load_content(const char *ecic_file_content, ed247_context_t *context)
Loading function: the entry point of the library.
Definition: ed247.cpp:146
+
LIBED247_EXPORT ed247_status_t ed247_stream_pop_sample(ed247_stream_t stream, const void **sample_data, uint32_t *sample_size, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty)
Pop a sample from stream samples stack.
Definition: ed247.cpp:1472
+
LIBED247_EXPORT const char * ed247_status_string(ed247_status_t status)
ed247_status_t to string conversion
Definition: ed247_conversion.cpp:80
+
LIBED247_EXPORT ed247_status_t ed247_unregister_recv_callback(ed247_context_t context, ed247_stream_recv_callback_t callback)
Unegister a callback (in all streams) which is called once a frame is received and decoded...
Definition: ed247.cpp:786
+
LIBED247_EXPORT ed247_status_t ed247_get_channel(ed247_context_t context, const char *name, ed247_channel_t *channel)
Get a channel of the component.
Definition: ed247.cpp:356
+
LIBED247_EXPORT ed247_status_t ed247_signal_get_assistant(ed247_signal_t signal, ed247_stream_assistant_t *assistant)
Get the stream assistant associated with this signal.
Definition: ed247.cpp:1730
+
LIBED247_EXPORT ed247_status_t ed247_load_file(const char *ecic_file_path, ed247_context_t *context)
Loading function: the entry point of the library.
Definition: ed247.cpp:124
+
LIBED247_EXPORT ed247_status_t ed247_wait_frame(ed247_context_t context, ed247_stream_list_t *streams, int32_t timeout_us)
Blocks until a frame is received and processed, and at least a stream has available data...
Definition: ed247.cpp:555
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_find_channel_streams(ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams)
Deprecated: use ed247_channel_find_streams.
Definition: ed247.cpp:969
+
LIBED247_EXPORT ed247_status_t ed247_stream_free_sample(void *sample_data)
Free memory allocated by ed247_stream_allocate_sample().
Definition: ed247.cpp:1368
+
LIBED247_EXPORT const char * ed247_signal_type_string(ed247_signal_type_t signal_type)
ed247_signal_type_t to string conversion
Definition: ed247_conversion.cpp:241
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_free(void *data)
Deprecated: use ed247_signal_free_sample or ed247_stream_free_sample.
Definition: ed247.cpp:105
+
LIBED247_EXPORT const char * ed247_yesno_string(ed247_yesno_t yesno)
ed247_yesno_t to string conversion
Definition: ed247_conversion.cpp:141
+
ed247_standard_t
ED247 Standard revisions.
Definition: ed247.h:104
+
ed247_direction_t
Stream direction.
Definition: ed247.h:153
+
ed247_component_type_t
Component types.
Definition: ed247.h:121
+
LIBED247_EXPORT ed247_status_t ed247_unload(ed247_context_t context)
Unload resources linked to the given context.
Definition: ed247.cpp:168
+
LIBED247_EXPORT ed247_status_t ed247_stream_get_signal(ed247_stream_t stream, const char *name, ed247_signal_t *signal)
Get a signal of the stream.
Definition: ed247.cpp:1187
+
ed247_discrete_t
Discrete values to be used.
Definition: ed247.h:195
+
LIBED247_EXPORT const char * ed247_get_implementation_name()
The name of the current implementation.
Definition: ed247.cpp:67
+
LIBED247_EXPORT ed247_status_t ed247_stream_get_assistant(ed247_stream_t stream, ed247_stream_assistant_t *assistant)
Get an assistant to build stream samples based on signals.
Definition: ed247.cpp:1313
+
LIBED247_EXPORT ed247_status_t ed247_signal_allocate_sample(ed247_signal_t signal, void **sample_data, uint32_t *sample_size)
Allocate a sample to store one signal.
Definition: ed247.cpp:1744
+
LIBED247_EXPORT ed247_status_t ed247_signal_list_next(ed247_signal_list_t signals, ed247_signal_t *signal)
Iterate over a signal identifier list.
Definition: ed247.cpp:1813
+
LIBED247_EXPORT ed247_status_t ed247_signal_list_free(ed247_signal_list_t signals)
Free signal list.
Definition: ed247.cpp:1835
+
LIBED247_EXPORT ed247_status_t ed247_channel_find_streams(ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams)
Find all streams of the channel whose names match regex_name.
Definition: ed247.cpp:861
+
LIBED247_EXPORT ed247_status_t ed247_stream_allocate_sample(ed247_stream_t stream, void **sample_data, uint32_t *sample_size)
Allocate a sample to store one stream.
Definition: ed247.cpp:1339
+
Definition: ed247_channel.h:34
+
LIBED247_EXPORT ed247_status_t ed247_stream_list_size(ed247_stream_list_t streams, uint32_t *size)
Get the size of the list.
Definition: ed247.cpp:1520
+
LIBED247_EXPORT ed247_status_t ed247_stream_has_signals(ed247_stream_t stream, uint8_t *yesno)
Check if the stream is a signal based one (DISCRETE, ANALOG, NAD or VNAD)
Definition: ed247.cpp:1109
+
ed247_signal_type_t
Signal types.
Definition: ed247.h:164
+
Timestamp structure, seconds from EPOCH (January 1st 1970) and nanoseconds offset with reference to p...
Definition: ed247.h:209
+
uint16_t ed247_uid_t
Unique identifier type.
Definition: ed247.h:115
+
void(* ed247_get_time_t)(ed247_timestamp_t *timestamp)
Prototype of a function to get time.
Definition: ed247.h:710
+
LIBED247_EXPORT ed247_status_t ed247_channel_get_user_data(ed247_channel_t channel, void **user_data)
Retrieve user data assigned to the channel.
Definition: ed247.cpp:940
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_component_get_channels(ed247_context_t context, ed247_channel_list_t *channels)
Deprecated: use ed247_get_channel_list.
Definition: ed247.cpp:539
+
LIBED247_EXPORT ed247_status_t ed247_set_log(ed247_log_level_t log_level, const char *log_filepath)
Setup the logging parameters.
Definition: ed247.cpp:77
+
Definition: ed247.h:1755
+
LIBED247_EXPORT ed247_stream_type_t ed247_stream_type_from_string(const char *stream_type)
ed247_stream_type_t from string conversion
Definition: ed247_conversion.cpp:208
+
LIBED247_EXPORT ed247_status_t ed247_stream_list_next(ed247_stream_list_t streams, ed247_stream_t *stream)
Iterate over a stream identifier list.
Definition: ed247.cpp:1541
+
LIBED247_EXPORT const char * ed247_nad_type_string(ed247_nad_type_t nad_type)
ed247_nad_type_t to string conversion
Definition: ed247_conversion.cpp:270
+
LIBED247_EXPORT ed247_status_t ed247_find_channels(ed247_context_t context, const char *regex_name, ed247_channel_list_t *channels)
Find all channels of the component whose names match regex_name.
Definition: ed247.cpp:325
+
LIBED247_EXPORT ed247_status_t ed247_get_channel_list(ed247_context_t context, ed247_channel_list_t *channels)
Retrieve all the channels of the component.
Definition: ed247.cpp:298
+
LIBED247_EXPORT ed247_status_t ed247_register_recv_callback(ed247_context_t context, ed247_stream_recv_callback_t callback)
Register a callback (in all streams) which is called once a frame is received and decoded...
Definition: ed247.cpp:759
+
LIBED247_EXPORT ed247_nad_type_t ed247_signal_nad_get_type(ed247_signal_t nad_signal)
For NAD and VNAD.
Definition: ed247.cpp:1630
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_get_stream_signal(ed247_stream_t stream, const char *name, ed247_signal_t *signal)
Deprecated: use ed247_stream_get_signal.
Definition: ed247.cpp:1302
+
LIBED247_EXPORT void ed247_get_time(ed247_timestamp_t *timestamp)
Return the current time.
Definition: ed247_time.cpp:84
+
LIBED247_EXPORT const char * ed247_signal_nad_get_unit(ed247_signal_t nad_signal)
For NAD and VNAD.
Definition: ed247.cpp:1636
+
LIBED247_EXPORT ed247_status_t ed247_channel_list_next(ed247_channel_list_t channels, ed247_channel_t *channel)
Iterate over a channel identifier list.
Definition: ed247.cpp:1008
+
LIBED247_EXPORT ed247_status_t ed247_set_log_level(ed247_log_level_t log_level)
Setup the logging level (see ed247_log_level_t)
Definition: ed247.cpp:85
+
LIBED247_EXPORT void ed247_get_receive_timestamp(ed247_timestamp_t *timestamp)
Return the time to timestamp the incoming streams.
Definition: ed247_time.cpp:107
+
Definition: ed247_stream.h:34
+
LIBED247_EXPORT const char * ed247_get_implementation_version()
The version of the current implementation.
Definition: ed247.cpp:72
+
LIBED247_EXPORT ed247_status_t ed247_send_pushed_samples(ed247_context_t context)
Send the samples that were written and pushed.
Definition: ed247.cpp:613
+
LIBED247_EXPORT void ed247_set_receive_timestamp_callback(ed247_get_time_t callback)
Set the function to use to timestamp the incoming streams (aka receive date)
Definition: ed247_time.cpp:97
+
LIBED247_EXPORT const char * ed247_component_type_string(ed247_component_type_t component_type)
ed247_component_type_t to string conversion
Definition: ed247_conversion.cpp:165
+
LIBED247_EXPORT uint32_t ed247_nad_type_size(ed247_nad_type_t nad_type)
Size of a single element of ed247_nad_type_t.
Definition: ed247.cpp:1588
+
LIBED247_EXPORT ed247_status_t ed247_stream_assistants_written_push_samples(ed247_context_t context, const ed247_timestamp_t *data_timestamp)
Push all stream assistants whose signals have been written since last push_sample() ...
Definition: ed247.cpp:1980
+
LIBED247_EXPORT ed247_status_t ed247_channel_list_free(ed247_channel_list_t channels)
Free channel list.
Definition: ed247.cpp:1030
+
LIBED247_EXPORT ed247_status_t ed247_channel_get_stream_list(ed247_channel_t channel, ed247_stream_list_t *streams)
Retrieve all the streams of the channel.
Definition: ed247.cpp:834
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_channel_get_streams(ed247_channel_t channel, ed247_stream_list_t *streams)
Deprecated: use ed247_channel_get_stream_list.
Definition: ed247.cpp:963
+
LIBED247_EXPORT ed247_status_t ed247_signal_get_user_data(ed247_signal_t signal, void **user_data)
Retrieve user data assigned to the signal.
Definition: ed247.cpp:1685
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_load(const char *ecic_file_path, void *unused, ed247_context_t *context)
Deprecated: use ed247_load_file.
Definition: ed247.cpp:227
+
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_get_stream(ed247_stream_assistant_t assistant, ed247_stream_t *stream)
Get the stream associated to the assistant.
Definition: ed247.cpp:1860
+
LIBED247_EXPORT ed247_standard_t ed247_standard_from_string(const char *standard)
ed247_standard_t from string conversion
Definition: ed247_conversion.cpp:113
+
struct ed247_sample_details_s ed247_sample_details_t
Sample Details.
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_stream_get_signals(ed247_stream_t stream, ed247_signal_list_t *signals)
Deprecated: use ed247_stream_get_signal_list.
Definition: ed247.cpp:1289
+
Definition: ed247_stream.h:33
+
LIBED247_EXPORT ed247_signal_type_t ed247_signal_type_from_string(const char *signal_type)
ed247_signal_type_t from string conversion
Definition: ed247_conversion.cpp:253
+
struct ed247_internal_stream_t * ed247_stream_t
Stream identifier.
Definition: ed247.h:237
+
LIBED247_EXPORT ed247_status_t ed247_component_get_user_data(ed247_context_t context, void **user_data)
Retrieve user data pointer form the context.
Definition: ed247.cpp:205
+
LIBED247_EXPORT ed247_direction_t ed247_direction_from_string(const char *direction)
ed247_direction_t from string conversion
Definition: ed247_conversion.cpp:126
+
struct ed247_internal_signal_t * ed247_signal_t
Signal identifier.
Definition: ed247.h:249
+
LIBED247_EXPORT uint32_t ed247_signal_get_byte_offset(ed247_signal_t signal)
Meaningless for VNAD.
Definition: ed247.cpp:1618
+
LIBED247_EXPORT ed247_status_t ed247_stream_push_samples(ed247_stream_t stream, const void *samples_data, const uint32_t *samples_size, uint32_t samples_number, const ed247_timestamp_t *data_timestamp, bool *full)
Write and push several samples in the samples stack of the stream.
Definition: ed247.cpp:1437
+
LIBED247_EXPORT ed247_status_t ed247_get_stream_list(ed247_context_t context, ed247_stream_list_t *streams)
Retrieve all the streams of the component.
Definition: ed247.cpp:387
+
LIBED247_EXPORT const char * ed247_direction_string(ed247_direction_t direction)
ed247_direction_t to string conversion
Definition: ed247_conversion.cpp:102
+
Definition: ed247_signal.h:37
+
LIBED247_EXPORT ed247_status_t ed247_channel_set_user_data(ed247_channel_t channel, void *user_data)
Assign user data to the channel.
Definition: ed247.cpp:922
+
struct ed247_internal_stream_assistant_t * ed247_stream_assistant_t
An assistant to help building stream samples.
Definition: ed247.h:261
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_find_stream_signals(ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals)
Deprecated: use ed247_stream_find_signals.
Definition: ed247.cpp:1295
+
LIBED247_EXPORT ed247_status_t ed247_channel_get_stream(ed247_channel_t channel, const char *name, ed247_stream_t *stream)
get a channel stream.
Definition: ed247.cpp:890
+
LIBED247_EXPORT ed247_status_t ed247_find_signals(ed247_context_t context, const char *regex_name, ed247_signal_list_t *signals)
Find all signals of the component whose names match regex_name.
Definition: ed247.cpp:477
+
ed247_nad_type_t
NAD type.
Definition: ed247.h:176
+
LIBED247_EXPORT ed247_status_t ed247_stream_unregister_recv_callback(ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback)
Unregister a callback (from a stream) which is called once a frame is received and decoded...
Definition: ed247.cpp:663
+
LIBED247_EXPORT ed247_status_t ed247_streams_unregister_recv_callback(ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback)
Unregister a callback (from several streams as once) which is called once a frame is received and dec...
Definition: ed247.cpp:726
+
Definition: ed247_signal.h:36
+
LIBED247_EXPORT ed247_nad_type_t ed247_nad_type_from_string(const char *nad_type)
ed247_nad_type_t from string conversion
Definition: ed247_conversion.cpp:288
+
ed247_log_level_t
Logging level.
Definition: ed247.h:78
+
ed247_status_t
Status codes.
Definition: ed247.h:67
+
Definition: ed247_channel.h:35
+
LIBED247_EXPORT ed247_status_t ed247_stream_get_signal_list(ed247_stream_t stream, ed247_signal_list_t *signals)
Return all signals of a stream.
Definition: ed247.cpp:1131
+
struct ed247_internal_context_t * ed247_context_t
Context identifier.
Definition: ed247.h:219
+
ed247_stream_type_t
Stream types.
Definition: ed247.h:132
+
LIBED247_EXPORT ed247_yesno_t ed247_yesno_from_string(const char *yesno)
ed247_yesno_t from string conversion
Definition: ed247_conversion.cpp:152
+
LIBED247_EXPORT ed247_status_t ed247_stream_get_user_data(ed247_stream_t stream, void **user_data)
Retrieve user data assigned to the stream.
Definition: ed247.cpp:1260
+
LIBED247_EXPORT ed247_status_t stream_assistants_pop_samples(ed247_context_t context)
Pop all samples of all input stream assistants. aka &#39;update all signals&#39;.
Definition: ed247.cpp:2024
+
LIBED247_EXPORT ed247_status_t ed247_get_log_level(ed247_log_level_t *log_level)
Get the logging level (see ed247_log_level_t)
Definition: ed247.cpp:92
+
LIBED247_EXPORT ed247_status_t ed247_stream_register_recv_callback(ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback)
Register a callback (in a stream) which is called once a frame is received and decoded.
Definition: ed247.cpp:633
+
struct ed247_internal_stream_list_t * ed247_stream_list_t
Stream list identifier.
Definition: ed247.h:243
+
LIBED247_EXPORT ed247_status_t ed247_stream_find_signals(ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals)
Find all signals of the channel whose names match regex_name.
Definition: ed247.cpp:1157
+
ed247_status_t(* ed247_stream_recv_callback_t)(ed247_context_t context, ed247_stream_t stream)
Stream receive callback function pointer.
Definition: ed247.h:615
+
LIBED247_EXPORT ed247_status_t ed247_get_stream(ed247_context_t context, const char *name, ed247_stream_t *stream)
Get a stream of the component.
Definition: ed247.cpp:444
+
ed247_yesno_t
Yes / No.
Definition: ed247.h:94
+
LIBED247_EXPORT bool ed247_stream_assistant_was_written(ed247_stream_assistant_t assistant)
Return true if a signal has been written since last ed247_stream_assistant_push_sample().
Definition: ed247.cpp:1912
+
LIBED247_EXPORT ed247_status_t ed247_stream_list_free(ed247_stream_list_t streams)
Free stream list.
Definition: ed247.cpp:1563
+
LIBED247_EXPORT ed247_status_t ed247_streams_register_recv_callback(ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback)
Register a callback (in several streams as once) which is called once a frame is received and decoded...
Definition: ed247.cpp:693
+
Definition: ed247_stream_assistant.h:11
+
LIBED247_EXPORT ed247_status_t ed247_component_set_user_data(ed247_context_t context, void *user_data)
Assign user data to the context.
Definition: ed247.cpp:187
+
LIBED247_EXPORT ed247_status_t ed247_stream_set_user_data(ed247_stream_t stream, void *user_data)
Assign user data to the stream.
Definition: ed247.cpp:1242
+
Sample Details.
Definition: ed247.h:909
+
LIBED247_EXPORT ed247_status_t ed247_channel_list_size(ed247_channel_list_t channels, uint32_t *size)
Get the size of the list.
Definition: ed247.cpp:987
+
Definition: ed247_context.h:31
+
LIBED247_EXPORT ed247_status_t ed247_wait_during(ed247_context_t context, ed247_stream_list_t *streams, int32_t duration_us)
Blocks until duration is elapsed. Processing all received frames.
Definition: ed247.cpp:584
+
DEPRECATED LIBED247_EXPORT ed247_status_t ed247_stream_contains_signals(ed247_stream_t stream, uint8_t *yesno)
Deprecated: use ed247_stream_has_signals.
Definition: ed247.cpp:1283
+
LIBED247_EXPORT ed247_status_t ed247_signal_list_size(ed247_signal_list_t signals, uint32_t *size)
Get the size of the list.
Definition: ed247.cpp:1792
+
+
+ + + + diff --git a/docs/ed247__bswap_8h_source.html b/docs/ed247__bswap_8h_source.html new file mode 100644 index 00000000..26bc0d4e --- /dev/null +++ b/docs/ed247__bswap_8h_source.html @@ -0,0 +1,125 @@ + + + + + + +ED247 Library: src/ed247/ed247_bswap.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_bswap.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 //
3 // Define bswap_xx and htonx/ntohx functions.
4 //
5 #ifndef _ED247_BSWAP_H_
6 #define _ED247_BSWAP_H_
7 
8 
9 #ifdef __linux__
10 # define bswap_16(x) __builtin_bswap16(x)
11 # define bswap_32(x) __builtin_bswap32(x)
12 # define bswap_64(x) __builtin_bswap64(x)
13 #elif __QNXNTO__
14 # include <gulliver.h>
15 # define bswap_16(x) ENDIAN_RET16(x)
16 # define bswap_32(x) ENDIAN_RET32(x)
17 # define bswap_64(x) ENDIAN_RET64(x)
18 #elif _MSC_VER
19 # include <stdlib.h>
20 # include <winsock2.h>
21 # define bswap_16(x) _byteswap_ushort(x)
22 # define bswap_32(x) _byteswap_ulong(x)
23 # define bswap_64(x) _byteswap_uint64(x)
24 #elif _WIN32
25 # include <winsock2.h>
26 # define bswap_16(x) __builtin_bswap16(x)
27 # define bswap_32(x) __builtin_bswap32(x)
28 # define bswap_64(x) __builtin_bswap64(x)
29 #endif
30 
31 #ifdef htons
32 # undef htons
33 #endif
34 #define htons(x) bswap_16(x)
35 
36 #ifdef ntohs
37 # undef ntohs
38 #endif
39 #define ntohs(x) bswap_16(x)
40 
41 #ifdef ntohl
42 # undef ntohl
43 #endif
44 #define ntohl(x) bswap_32(x)
45 
46 #ifdef htonl
47 # undef htonl
48 #endif
49 #define htonl(x) bswap_32(x)
50 
51 #endif
+
+ + + + diff --git a/docs/ed247__channel_8h_source.html b/docs/ed247__channel_8h_source.html new file mode 100644 index 00000000..35e1c15f --- /dev/null +++ b/docs/ed247__channel_8h_source.html @@ -0,0 +1,137 @@ + + + + + + +ED247 Library: src/ed247/ed247_channel.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_channel.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 /******************************************************************************
3  * The MIT Licence
4  *
5  * Copyright (c) 2021 Airbus Operations S.A.S
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining a
8  * copy of this software and associated documentation files (the "Software"),
9  * to deal in the Software without restriction, including without limitation
10  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11  * and/or sell copies of the Software, and to permit persons to whom the
12  * Software is furnished to do so, subject to the following conditions:
13  *
14  * The above copyright notice and this permission notice shall be included
15  * in all copies or substantial portions of the Software.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
21  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
22  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23  * OTHER DEALINGS IN THE SOFTWARE.
24  *****************************************************************************/
25 #ifndef ED247_CHANNEL_H_
26 #define ED247_CHANNEL_H_
27 #include "ed247.h"
28 #include "ed247_xml.h"
29 #include "ed247_cominterface.h"
30 #include "ed247_stream.h"
31 #include "ed247_frame_header.h"
32 
33 // base structures for C API
36 
37 namespace ed247
38 {
39  class Context;
40 
42  {
43  public:
44  using map_uid_stream_t = std::unordered_map<ed247_uid_t, stream_ptr_t>;
45 
46  Channel(Context* context, const xml::Channel* configuration);
47  ~Channel();
48 
49  Channel& operator=(const Channel &) = delete;
50  Channel& operator=(Channel &&) = delete;
51 
52  // Configuration accessors
53  const std::string& get_name() const { return _configuration->_name; }
54  const std::string& get_comment() const { return _configuration->_comment; }
55  ed247_standard_t get_frame_standard_revision() const { return _configuration->_frame_standard_revision; }
56 
57  // Handle user-data
58  void set_user_data(void *user_data) { _user_data = user_data; }
59  void get_user_data(void **user_data) { *user_data = _user_data; }
60 
61  // Stream access
62  stream_list_t find_streams(std::string strregex);
63  stream_ptr_t get_stream(std::string str_name);
64  ed247_internal_stream_list_t* get_client_streams() { return _client_streams.get(); }
65 
66  // Encode the channel and send it.
67  // Nothing is send if there are no data in streams.
68  // In some cases, this function may send severals packets.
69  void encode_and_send();
70 
71  // Decode frame and fill streams data
72  // Return false if the frame cannot be decoded
73  bool decode(const char* frame, uint32_t frame_size);
74 
75  private:
76  Context* _context;
77  const xml::Channel* _configuration;
78  udp::ComInterface _com_interface;
79  map_uid_stream_t _streams;
80  FrameHeader _header;
81  Sample _buffer;
82  void* _user_data;
83 
84  std::unique_ptr<ed247_internal_stream_list_t> _client_streams;
85 
86  ED247_FRIEND_TEST();
87  };
88 
89  typedef std::shared_ptr<Channel> channel_ptr_t;
90  typedef std::vector<channel_ptr_t> channel_list_t;
91  typedef std::unordered_map<std::string, channel_ptr_t> channel_map_t;
92 
93  class ChannelSet {
94  public:
95  ChannelSet(Context* context);
96  ~ChannelSet();
97 
98  ChannelSet& operator=(const ChannelSet &) = delete;
99  ChannelSet& operator=(ChannelSet &&) = delete;
100 
101  channel_ptr_t create(const xml::Channel* configuration);
102 
103  channel_ptr_t get(std::string str_name);
104  channel_list_t find(std::string str_regex);
105 
106  channel_map_t& channels() { return _channels; }
107  uint32_t size() const { return _channels.size(); }
108 
109  private:
110  Context* _context;
111  channel_map_t _channels;
112  };
113 
114 }
115 
116 #endif
Definition: ed247_channel.h:41
+
Definition: ed247_sample.h:14
+
Definition: ed247_channel.h:93
+
Definition: ed247_frame_header.h:9
+
ed247_standard_t
ED247 Standard revisions.
Definition: ed247.h:104
+
Definition: ed247_channel.h:34
+
Definition: ed247_stream.h:34
+
Definition: ed247_context.h:36
+
Definition: ed247_xml.h:252
+
Definition: ed247_channel.cpp:37
+
Definition: ed247_channel.h:35
+
Definition: ed247_cominterface.h:171
+
+
+ + + + diff --git a/docs/ed247__client__list_8h_source.html b/docs/ed247__client__list_8h_source.html new file mode 100644 index 00000000..e09164ba --- /dev/null +++ b/docs/ed247__client__list_8h_source.html @@ -0,0 +1,130 @@ + + + + + + +ED247 Library: src/ed247/ed247_client_list.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_client_list.h
+
+
+
1 //
2 // Handle C-list (ed247.h)
3 // This classes contain both the list and its 'iterator'
4 //
5 // * client_list<T> inherit from an emty C struct (template class CBaseList)
6 // * client_list<T> is implemented by templace class client_list_container wich support various containers (vectors, maps, ...)
7 // * The underlayed container must hold std::shared_ptr<T>
8 //
9 #ifndef ED247_CLIENT_ITERATOR
10 #define ED247_CLIENT_ITERATOR
11 #include <memory>
12 #include <algorithm>
13 
14 
15 namespace ed247 {
16 
17  // Define iterator_shared_get() that call shared_ptr::get() on the provided iterator.
18  // Support vector-type and map-type iterators.
19  template <typename>
20  struct is_pair : std::false_type { };
21 
22  template <typename T, typename U>
23  struct is_pair<std::pair<T, U>> : std::true_type { };
24 
25  template<class Return, class Iterator, typename std::enable_if<!is_pair<typename Iterator::value_type>::value, bool>::type = true>
26  Return iterator_shared_get(Iterator& itr) {
27  return itr->get();
28  }
29  template<class Return, class Iterator, typename std::enable_if<is_pair<typename Iterator::value_type>::value, bool>::type = true>
30  Return iterator_shared_get(Iterator& itr) {
31  return itr->second.get();
32  }
33 
34  enum class ContextOwned { True, False };
35 
36  template <class CBaseList, typename T>
37  struct client_list : public CBaseList {
38  typedef T value_t;
39  typedef std::shared_ptr<T> container_value_t;
40 
41  virtual ~client_list() {}
42 
43  // Return true if this client_list is owned by ed247::Context. (i.e. shall not be free)
44  virtual bool is_context_owned() = 0;
45 
46  virtual uint32_t size() const = 0;
47 
48  virtual T* get_current() = 0;
49  virtual T* get_next() = 0; // Looping get: will return begin() after end().
50  virtual void reset_iterator() = 0;
51 
52  virtual void free() = 0;
53  };
54 
55  template <class CBaseList, typename T, class Container, ContextOwned context_owned = ContextOwned::False>
56  struct client_list_container : public client_list<CBaseList, T> {
57  typedef typename Container::iterator iterator_t;
58 
59  // Initialize iterator by wrapping provided container (container will not be freed)
60  static client_list_container* wrap(Container& container) {
61  return new client_list_container(&container, false);
62  }
63 
64  // Initialize iterator by copying provided container (the copy will be freed)
65  static client_list_container* copy(const Container& container) {
66  return new client_list_container(new Container(container), true);
67  }
68 
69  virtual bool is_context_owned() {
70  return context_owned == ContextOwned::True;
71  }
72 
73  uint32_t size() const override {
74  return _container->size();
75  }
76 
77  // Delete container if we are the owner
78  virtual void free() override {
79  if (_container && _container_owner) delete _container;
80  _container = nullptr;
81  }
82 
84  free();
85  }
86 
87  void reset_iterator() override {
88  _iterator = _container->end();
89  }
90 
91  T* get_current() override {
92  if (!_container) return nullptr;
93  if (_iterator == _container->end()) return nullptr;
94  return iterator_shared_get<T*>(_iterator);
95  }
96 
97  T* get_next() override {
98  if (!_container) return nullptr;
99  if (_iterator == _container->end()) {
100  _iterator = _container->begin();
101  } else {
102  _iterator++;
103  }
104  return get_current();
105  }
106 
107  protected:
108  client_list_container(Container* container, bool container_owner) :
109  _container(container), _container_owner(container_owner) {
110  _iterator = _container->end();
111  }
112 
113  Container* _container;
114  iterator_t _iterator;
115  bool _container_owner;
116  };
117 
118 }
119 
120 #endif
+
Definition: ed247_client_list.h:56
+
Definition: ed247_client_list.h:37
+
Definition: ed247_channel.cpp:37
+
Definition: ed247_client_list.h:20
+
+
+ + + + diff --git a/docs/ed247__cominterface_8h_source.html b/docs/ed247__cominterface_8h_source.html new file mode 100644 index 00000000..9ec3b4bf --- /dev/null +++ b/docs/ed247__cominterface_8h_source.html @@ -0,0 +1,137 @@ + + + + + + +ED247 Library: src/ed247/ed247_cominterface.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_cominterface.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 /******************************************************************************
3  * The MIT Licence
4  *
5  * Copyright (c) 2021 Airbus Operations S.A.S
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining a
8  * copy of this software and associated documentation files (the "Software"),
9  * to deal in the Software without restriction, including without limitation
10  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11  * and/or sell copies of the Software, and to permit persons to whom the
12  * Software is furnished to do so, subject to the following conditions:
13  *
14  * The above copyright notice and this permission notice shall be included
15  * in all copies or substantial portions of the Software.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
21  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
22  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23  * OTHER DEALINGS IN THE SOFTWARE.
24  *****************************************************************************/
25 #ifndef _ED247_COMINTERFACE_H_
26 #define _ED247_COMINTERFACE_H_
27 #include "ed247_xml.h"
28 #include "ed247_friend_test.h"
29 #include <functional>
30 
31 // Networking
32 #ifdef __unix__
33 # include <sys/socket.h>
34 # include <netinet/in.h>
35 # include <sys/select.h>
36 using ed247_socket_t = int;
37 # define INVALID_SOCKET (-1)
38 #elif _WIN32
39 # include <winsock2.h>
40 using ed247_socket_t = SOCKET;
41 #endif
42 
43 
44 //
45 // socket_address_t : store a network address (ip/port)
46 //
47 namespace ed247 {
48  namespace udp {
50  {
51  socket_address_t(std::string ip_address, uint16_t ip_port);
52  void set_ip_address(std::string ip_address);
53  void set_ip_port(uint16_t ip_port);
54  bool is_multicast() const;
55  bool is_unicast() const;
56  bool is_any_addr() const;
57  };
58  }
59 }
60 std::ostream& operator<<(std::ostream & os, const ed247::udp::socket_address_t& socket_address);
61 
62 
63 
64 namespace ed247 {
65 
66  class Context;
67 
68  namespace udp {
69 
70  //
71  // Transceiver (aka ECIC UdpSocket)
72  // Hold a system socket and prepare it for transceiving.
73  // base class for emitter and receiver.
74  //
75  class Transceiver {
76  public:
77  Transceiver(Context* context, const socket_address_t& socket_address);
78  ~Transceiver();
79 
80  Transceiver(const Transceiver&) = delete;
81  Transceiver& operator=(const Transceiver&) = delete;
82 
83  const ed247_socket_t& get_socket() const { return _socket; }
84 
85  protected:
86  Context* _context;
87  socket_address_t _socket_address; // Where the packets come from (regardless direction)
88  ed247_socket_t _socket{INVALID_SOCKET}; // Where the packets come from (regardless direction)
89  };
90 
91  class Emitter : public Transceiver
92  {
93  public:
94  Emitter(Context* context, socket_address_t from_address, socket_address_t destination_address, uint16_t multicast_ttl = 1);
95  void send_frame(const void* payload, const uint32_t payload_size);
96 
97  private:
98  socket_address_t _destination_address;
99  };
100 
101  class Receiver : public Transceiver
102  {
103  public:
104  static const uint32_t MAX_FRAME_SIZE{65508};
105  struct frame_t
106  {
107  char payload[MAX_FRAME_SIZE];
108  uint32_t size{MAX_FRAME_SIZE};
109  };
110 
111  using receive_callback_t = std::function<void(const char* payload, uint32_t size)>;
112 
113  Receiver(Context* context,
114  socket_address_t from_address,
115  socket_address_t multicast_interface,
116  receive_callback_t callback);
117  void receive();
118 
119  private:
120  receive_callback_t _receive_callback;
121  frame_t& _receive_frame; // Reference to ReceiverSet::_receive_frame
122 
123  ED247_FRIEND_TEST();
124  };
125 
126  //
127  // ReceiverSet
128  // Store receiver and allows to receive data on all of them.
129  // There is only one of this class per context.
130  //
132  {
133  public:
134  ReceiverSet();
135  ~ReceiverSet();
136 
137  ReceiverSet& operator=(const ReceiverSet &) = delete;
138  ReceiverSet& operator=(ReceiverSet &&) = delete;
139 
140  // Add receiver and take onership
141  void emplace(Receiver* receiver);
142 
143  // Receive frames from all registered receivers.
144  // Call receive_callback(s) set by ComInterface::load()
145  ed247_status_t wait_frame(int32_t timeout_us);
146  ed247_status_t wait_during(int32_t duration_us);
147 
148  // Frame to be used by the receivers.
149  // All receivers of the same set will share the same memory to prevent 65k alloc per receiver
150  Receiver::frame_t& get_receive_frame() { return _receive_frame; }
151 
152  private:
153  std::vector<std::unique_ptr<Receiver>> _receivers;
154  Receiver::frame_t _receive_frame;
155 
156  struct select_options_s {
157  fd_set fd;
158  int nfds;
159  } _select_options;
160 
161  ED247_FRIEND_TEST();
162  };
163 
164 
165  //
166  // ComInterface
167  // The ComInterface will load all its transceivers (aka ECIC UdpSokets) and :
168  // - Store its emitters to allow to send_frame to all of them,
169  // - Store its receivers in context_receiver_set to allow to receive on all context receivers.
170  //
172  {
173  public:
174  // Load configuration and
175  // - store emmiters
176  // - store receivers in context_receiver_set,
177  // - set receive_callback on each of them.
178  void load(const xml::ComInterface& configuration,
179  Receiver::receive_callback_t receive_callback);
180 
181  // Send a frame to all ComInterface emitters
182  void send_frame(const void* payload, const uint32_t payload_size);
183 
184  ComInterface(Context* context);
185  ~ComInterface();
186 
187  private:
188  Context* _context;
189  std::vector<std::unique_ptr<Emitter>> _emitters;
190  };
191 
192 
193  // throw an exception if not all socket are closed (debug purpose)
194  void assert_sockets_closed();
195  }
196 }
197 
198 #endif
Definition: ed247_cominterface.h:131
+
Definition: ed247_cominterface.h:75
+
Definition: ed247_cominterface.h:101
+
Definition: ed247_xml.h:63
+ +
Definition: ed247_cominterface.h:105
+
Definition: ed247_cominterface.h:91
+
Definition: ed247_context.h:36
+
Definition: ed247_cominterface.h:49
+
ed247_status_t
Status codes.
Definition: ed247.h:67
+
Definition: ed247_channel.cpp:37
+
Definition: ed247_cominterface.h:171
+
+
+ + + + diff --git a/docs/ed247__context_8h_source.html b/docs/ed247__context_8h_source.html new file mode 100644 index 00000000..157ada69 --- /dev/null +++ b/docs/ed247__context_8h_source.html @@ -0,0 +1,140 @@ + + + + + + +ED247 Library: src/ed247/ed247_context.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_context.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 /******************************************************************************
3  * The MIT Licence
4  *
5  * Copyright (c) 2021 Airbus Operations S.A.S
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining a
8  * copy of this software and associated documentation files (the "Software"),
9  * to deal in the Software without restriction, including without limitation
10  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11  * and/or sell copies of the Software, and to permit persons to whom the
12  * Software is furnished to do so, subject to the following conditions:
13  *
14  * The above copyright notice and this permission notice shall be included
15  * in all copies or substantial portions of the Software.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
21  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
22  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23  * OTHER DEALINGS IN THE SOFTWARE.
24  *****************************************************************************/
25 #ifndef _ED247_CONTEXT_H_
26 #define _ED247_CONTEXT_H_
27 #include "ed247_xml.h"
28 #include "ed247_channel.h"
29 
30 // base structures for C API
32 
33 namespace ed247
34 {
35 
37  {
38  public:
39  static Context* create_from_filepath(std::string ecic_filepath);
40  static Context* create_from_content(std::string ecic_content);
41 
42  Context(const Context &) = delete;
43  Context(Context &&) = delete;
44  Context& operator=(const Context &) = delete;
45  Context& operator=(Context &&) = delete;
46 
47  // configuration accessors
48  const std::string& get_file_producer_identifier() { return _configuration->_file_producer_identifier; }
49  const std::string& get_file_producer_comment() { return _configuration->_file_producer_comment; }
50  const std::string& get_version() { return _configuration->_version; }
51  ed247_component_type_t get_component_type() { return _configuration->_component_type; }
52  const std::string& get_name() { return _configuration->_name; }
53  const std::string& get_comment() { return _configuration->_comment; }
54  ed247_uid_t get_identifier() { return _configuration->_identifier; }
55  ed247_standard_t get_standard_revision() { return _configuration->_standard_revision; }
56 
57 
58  // Handle user-data
59  void set_user_data(void *user_data) { _user_data = user_data; }
60  void get_user_data(void **user_data) { *user_data = _user_data; }
61 
62 
63  // Content access
64  udp::ReceiverSet& get_receiver_set() { return _receiver_set; }
65  SignalSet& get_signal_set() { return _signal_set; }
66  StreamSet& get_stream_set() { return _stream_set; }
67  ChannelSet& get_channel_set() { return _channel_set; }
68 
69  // Client lists (ed247.h interface)
70  ed247_internal_stream_list_t* get_client_streams() { return _client_streams.get(); }
71  ed247_internal_stream_list_t* get_client_streams_with_data() { return _client_streams_with_data.get(); }
72  ed247_internal_channel_list_t* get_client_channels() { return _client_channels.get(); }
73 
74  // Push all stream assistants whose signals have been written since last push_sample()
75  // This function will only call StreamAssistant::push_if_was_written() for all output stream assistants
76  // Return false only for fatal error (see stream::push_sample() for details)
77  bool stream_assistants_written_push_samples(const ed247_timestamp_t* data_timestamp);
78 
79  // Pop all samples of all input signal based streams.
80  // After this call, all stream assistants will provide the last received signals value throught the read() method.
81  // If a singal has never been received, its value will be 0.
82  // This function is equivalent to call pop() on all stream assistants until all fifos are empties.
83  // Return false only for fatal error (see stream::push_sample() for details)
85 
86  // Send all pushed streams in their respective channels/CommInterface
87  void send_pushed_samples();
88 
89  // Receive frames and fill associated streams
90  ed247_status_t wait_frame(int32_t timeout_us);
91  ed247_status_t wait_during(int32_t duration_us);
92 
93  private:
94  Context(std::unique_ptr<xml::Component>&& configuration);
95 
96  std::unique_ptr<xml::Component> _configuration;
97  void* _user_data;
98 
99  udp::ReceiverSet _receiver_set;
100  SignalSet _signal_set;
101  StreamSet _stream_set;
102  ChannelSet _channel_set;
103 
104  std::unique_ptr<ed247_internal_stream_list_t> _client_streams;
105  std::unique_ptr<ed247_internal_stream_list_t> _client_streams_with_data;
106  std::unique_ptr<ed247_internal_channel_list_t> _client_channels;
107 
108  ED247_FRIEND_TEST();
109  };
110 
111 }
112 
113 #endif
Definition: ed247_cominterface.h:131
+
Definition: ed247_signal.h:89
+
Definition: ed247_channel.h:93
+
ed247_standard_t
ED247 Standard revisions.
Definition: ed247.h:104
+
Definition: ed247_stream.h:168
+
ed247_component_type_t
Component types.
Definition: ed247.h:121
+
Timestamp structure, seconds from EPOCH (January 1st 1970) and nanoseconds offset with reference to p...
Definition: ed247.h:209
+
uint16_t ed247_uid_t
Unique identifier type.
Definition: ed247.h:115
+
Definition: ed247_stream.h:34
+
Definition: ed247_context.h:36
+
ed247_status_t
Status codes.
Definition: ed247.h:67
+
Definition: ed247_channel.cpp:37
+
Definition: ed247_channel.h:35
+
ed247_status_t stream_assistants_pop_samples(ed247_context_t context)
Pop all samples of all input stream assistants. aka &#39;update all signals&#39;.
Definition: ed247.cpp:2024
+
Definition: ed247_context.h:31
+
+
+ + + + diff --git a/docs/ed247__frame__header_8h_source.html b/docs/ed247__frame__header_8h_source.html new file mode 100644 index 00000000..2e9e7fde --- /dev/null +++ b/docs/ed247__frame__header_8h_source.html @@ -0,0 +1,130 @@ + + + + + + +ED247 Library: src/ed247/ed247_frame_header.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_frame_header.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 #ifndef _ED247_HEADER_H_
3 #define _ED247_HEADER_H_
4 #include "ed247.h"
5 #include "ed247_xml.h"
6 
7 namespace ed247
8 {
9  class FrameHeader
10  {
11  public:
12  FrameHeader(const xml::Header& configuration, ed247_uid_t ec_id, const std::string& channel_name);
13 
14  void encode(char* frame, uint32_t frame_size, uint32_t& frame_index /*inout*/);
15  bool decode(const char* frame, uint32_t frame_size, uint32_t& frame_index /*inout*/);
16 
17  uint32_t get_size() const { return (_configuration._enable == ED247_YESNO_YES)? header_size : 0; }
18  const ed247_sample_details_t& get_recv_frame_details() const { return _recv_frame_details; }
19  uint16_t get_next_serial_number() const { return _send_sn; }
20 
21  private:
22  xml::Header _configuration;
23  ed247_uid_t _ec_id_big_endian;
24  std::string _channel_name;
25  ed247_sample_details_t _recv_frame_details;
26  uint16_t _send_sn;
27 
28  // size in bytes if header present
29  static const uint32_t header_size;
30  };
31 }
32 
33 #endif
Definition: ed247_frame_header.h:9
+
uint16_t ed247_uid_t
Unique identifier type.
Definition: ed247.h:115
+
Definition: ed247_channel.cpp:37
+
Definition: ed247_xml.h:86
+
Sample Details.
Definition: ed247.h:909
+
+
+ + + + diff --git a/docs/ed247__friend__test_8h_source.html b/docs/ed247__friend__test_8h_source.html new file mode 100644 index 00000000..8faa3b11 --- /dev/null +++ b/docs/ed247__friend__test_8h_source.html @@ -0,0 +1,125 @@ + + + + + + +ED247 Library: src/ed247/ed247_friend_test.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_friend_test.h
+
+
+
1 #ifndef _ED247_FRIEND_TEST_H_
2 #define _ED247_FRIEND_TEST_H_
3 
4 // ED247_FRIEND_TEST macro will be defined by tests only when building tests
5 #ifndef ED247_FRIEND_TEST
6 #define ED247_FRIEND_TEST(...)
7 #endif
8 
9 
10 #endif
11 
+
+ + + + diff --git a/docs/ed247__logs_8h_source.html b/docs/ed247__logs_8h_source.html new file mode 100644 index 00000000..345c6433 --- /dev/null +++ b/docs/ed247__logs_8h_source.html @@ -0,0 +1,141 @@ + + + + + + +ED247 Library: src/ed247/ed247_logs.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_logs.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 /******************************************************************************
3  * The MIT Licence
4  *
5  * Copyright (c) 2021 Airbus Operations S.A.S
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining a
8  * copy of this software and associated documentation files (the "Software"),
9  * to deal in the Software without restriction, including without limitation
10  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11  * and/or sell copies of the Software, and to permit persons to whom the
12  * Software is furnished to do so, subject to the following conditions:
13  *
14  * The above copyright notice and this permission notice shall be included
15  * in all copies or substantial portions of the Software.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
21  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
22  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23  * OTHER DEALINGS IN THE SOFTWARE.
24  *****************************************************************************/
25 #ifndef _ED247_LOGS_H_
26 #define _ED247_LOGS_H_
27 #include "ed247.h"
28 #include "ed247_friend_test.h"
29 #include <string.h>
30 #include <sstream>
31 #include <iostream>
32 #include <fstream>
33 #include <exception>
34 
35 // Prefix traces by file:line
36 #define LOG_SHORTFILE (strrchr("/" __FILE__, '/') + 1)
37 #define LOG_STREAM_FILELINE LOG_SHORTFILE << ":" << __LINE__ << " "
38 
39 // Print a trace regardless log level
40 #define SAY(m) do { SAY_STREAM(ED247_LOG_STREAM, m); } while (0)
41 
42 // Print a trace depending on log level
43 #define PRINT_ERROR(m) do { if (ED247_LOG_ENABLED(ED247_LOG_LEVEL_ERROR)) ED247_LOG_STREAM << LOG_STREAM_FILELINE << "[ERROR] " << m << std::endl; } while (0)
44 #define PRINT_WARNING(m) do { if (ED247_LOG_ENABLED(ED247_LOG_LEVEL_WARNING)) ED247_LOG_STREAM << LOG_STREAM_FILELINE << "[WARN] " << m << std::endl; } while (0)
45 #define PRINT_INFO(m) do { if (ED247_LOG_ENABLED(ED247_LOG_LEVEL_INFO)) ED247_LOG_STREAM << LOG_STREAM_FILELINE << m << std::endl; } while (0)
46 #define PRINT_DEBUG(m) do { if (ED247_LOG_ENABLED(ED247_LOG_LEVEL_DEBUG)) ED247_LOG_STREAM << LOG_STREAM_FILELINE << m << std::endl; } while (0)
47 #define PRINT_CRAZY(m) do { if (ED247_LOG_ENABLED(ED247_LOG_LEVEL_CRAZY)) ED247_LOG_STREAM << LOG_STREAM_FILELINE << m << std::endl; } while (0)
48 
49 #ifdef SIMULINK_LOGGER_ENABLED
50 # include "Logger.hpp"
51 # define ED247_LOG_STREAM LOG(info, 0)
52 #else
53 # define ED247_LOG_STREAM ed247::log::get().stream()
54 #endif
55 
56 #define ED247_LOG_ENABLED(level) ed247::log::get().enabled(level)
57 #define SAY_STREAM(stream, m) do { (stream) << LOG_STREAM_FILELINE << m << std::endl; } while (0)
58 
59 // Logger internals
60 namespace ed247 {
61  struct LIBED247_EXPORT log
62  {
63  static constexpr const char* ENV_VAR_LEVEL = "ED247_LOG_LEVEL";
64  static constexpr const char* ENV_VAR_FILEPATH = "ED247_LOG_FILEPATH";
65 
66  // Get the logger. May create it (see reset()).
67  static log& get() { return *((_logger)? _logger : create_logger()); }
68 
69  // Change logger parameters.
70  // Defaut values are ED247_LOG_LEVEL_DEFAULT and std::cerr.
71  // The env variables have always the priority (see ENV_VAR_*).
72  void reset(ed247_log_level_t level = ED247_LOG_LEVEL_DEFAULT, const char* filepath = nullptr);
73 
74  // Return the stream to write to.
75  std::ostream& stream() { return (_fstream.is_open())? _fstream : std::cerr; }
76 
77  // Return the log level.
78  ed247_log_level_t level() { return get()._level; }
79 
80  // Return true if log is enabled at `level'
81  bool enabled(ed247_log_level_t level) { return _level >= level; }
82 
83  // Convert `level' to a string
84  static std::string level_name(ed247_log_level_t level);
85 
86  private:
87  static log* create_logger();
88  static void delete_logger();
89 
90  log() : _level(ED247_LOG_LEVEL_UNSET) { reset(); }
91  ~log();
92  void set_level(ed247_log_level_t level);
93 
94  static log* _logger;
95  ed247_log_level_t _level;
96  std::ofstream _fstream;
97  std::string _filepath;
98 
99  ED247_FRIEND_TEST();
100  };
101 }
102 
103 // Generate a backtrace (if supported)
104 extern LIBED247_EXPORT void ed247_log_backtrace();
105 
106 // ED247 exception
107 namespace ed247 {
108  class exception : public std::exception
109  {
110  public:
111  exception(std::string message) : _message (message) {};
112  virtual ~exception() throw () override {}
113  inline const char* what() const noexcept override { return _message.c_str(); }
114  private:
115  std::string _message;
116  };
117 }
118 #define THROW_ED247_ERROR(message) \
119  do { \
120  PRINT_ERROR(message); \
121  throw ed247::exception(strize() << message); \
122  } while(0)
123 
124 
125 // ED247 enums to stream
126 inline std::ostream& operator<<(std::ostream& stream, const ed247_log_level_t& level) { return (stream << ed247::log::level_name(level)); }
127 inline std::ostream& operator<<(std::ostream& stream, const ed247_status_t& status) { return (stream << ed247_status_string(status)); }
128 inline std::ostream& operator<<(std::ostream& stream, const ed247_direction_t& direction) { return (stream << ed247_direction_string(direction)); }
129 inline std::ostream& operator<<(std::ostream& stream, const ed247_stream_type_t& stype) { return (stream << ed247_stream_type_string(stype)); }
130 inline std::ostream& operator<<(std::ostream& stream, const ed247_signal_type_t& stype) { return (stream << ed247_signal_type_string(stype)); }
131 inline std::ostream& operator<<(std::ostream& stream, const ed247_nad_type_t& ntype) { return (stream << ed247_nad_type_string(ntype)); }
132 
133 
134 // Memcheck
135 //#define ENABLE_MEMCHECK
136 #ifdef ENABLE_MEMCHECK
137 namespace ed247 {
138  namespace memcheck {
139  void add(const void* ptr, std::string title);
140  void remove(const void* ptr);
141  void assert_freed();
142  void free();
143  }
144 }
145 #define MEMCHECK_SAY(ptr, m) SAY("[MEMCHECK " << ptr << "] " << m)
146 #define MEMCHECK_NEW(ptr, title) do { MEMCHECK_SAY(ptr, "NEW " << title); ed247::memcheck::add(ptr, strize() << title); } while (0)
147 #define MEMCHECK_DEL(ptr, title) do { MEMCHECK_SAY(ptr, "DEL " << title); ed247::memcheck::remove(ptr); } while (0)
148 #define MEMCHECK_FREED() ed247::memcheck::assert_freed()
149 #define MEMCHECK_RESET() ed247::memcheck::free()
150 #else
151 #define MEMCHECK_SAY(ptr, m)
152 #define MEMCHECK_NEW(ptr, title)
153 #define MEMCHECK_DEL(ptr, title)
154 #define MEMCHECK_FREED()
155 #define MEMCHECK_RESET()
156 #endif
157 
158 
159 
160 // Helper to create a string from stream: std::string foo = strize() << "hello " << 42;
161 struct strize {
162  template<typename T> strize& operator<<(T value) { _content << value; return *this; }
163  operator std::string() const { return _content.str(); }
164 private:
165  std::stringstream _content;
166 };
167 
168 
169 // Helper to convert a payload to hexa stream: stream << "data: " << hex_stream(data, 4) << std::endl;
171 {
172 public:
173  hex_stream(const void* payload, int len) : _payload((const uint8_t*)payload), _len(len) {}
174  LIBED247_EXPORT friend std::ostream& operator<<(std::ostream& stream, const hex_stream&);
175 private:
176  const uint8_t* _payload;
177  int _len;
178 };
179 
180 #endif
Definition: ed247_logs.h:161
+
LIBED247_EXPORT const char * ed247_stream_type_string(ed247_stream_type_t stream_type)
ed247_stream_type_t to string conversion
Definition: ed247_conversion.cpp:188
+
Definition: ed247_logs.h:170
+
LIBED247_EXPORT const char * ed247_status_string(ed247_status_t status)
ed247_status_t to string conversion
Definition: ed247_conversion.cpp:80
+
LIBED247_EXPORT const char * ed247_signal_type_string(ed247_signal_type_t signal_type)
ed247_signal_type_t to string conversion
Definition: ed247_conversion.cpp:241
+
ed247_direction_t
Stream direction.
Definition: ed247.h:153
+
Definition: ed247_logs.h:108
+
ed247_signal_type_t
Signal types.
Definition: ed247.h:164
+
LIBED247_EXPORT const char * ed247_nad_type_string(ed247_nad_type_t nad_type)
ed247_nad_type_t to string conversion
Definition: ed247_conversion.cpp:270
+
LIBED247_EXPORT const char * ed247_direction_string(ed247_direction_t direction)
ed247_direction_t to string conversion
Definition: ed247_conversion.cpp:102
+
ed247_nad_type_t
NAD type.
Definition: ed247.h:176
+
ed247_log_level_t
Logging level.
Definition: ed247.h:78
+
ed247_status_t
Status codes.
Definition: ed247.h:67
+
Definition: ed247_channel.cpp:37
+
ed247_stream_type_t
Stream types.
Definition: ed247.h:132
+
Definition: ed247_logs.h:61
+
+
+ + + + diff --git a/docs/ed247__sample_8h_source.html b/docs/ed247__sample_8h_source.html new file mode 100644 index 00000000..d2c72f69 --- /dev/null +++ b/docs/ed247__sample_8h_source.html @@ -0,0 +1,132 @@ + + + + + + +ED247 Library: src/ed247/ed247_sample.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_sample.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 /* sample : store a payload in a preallocated memory */
3 #ifndef _ED247_SAMPLE_H_
4 #define _ED247_SAMPLE_H_
5 #include "ed247.h"
6 #include <vector>
7 
8 namespace ed247
9 {
10 
11  //
12  // Simple preallocated buffer
13  //
14  class Sample
15  {
16  public:
17  Sample(uint32_t capacity);
18  ~Sample();
19 
20  // Empty Ctor. Call allocate() before any other functions.
21  Sample();
22 
23  // No implicit copy. Use copy() methods.
24  Sample(const Sample & other) = delete;
25  Sample& operator = (const Sample & other) = delete;
26 
27  // Can be moved
28  Sample(Sample&& other);
29 
30  // Allocate data. Shall be called only once and only if Empty Ctor is used.
31  void allocate(uint32_t capacity);
32 
33  const uint32_t& size() const { return _size; }
34  const uint32_t& capacity() const { return _capacity; }
35  const char* data() const { return _data; }
36  bool empty() const { return _size == 0; }
37 
38  // Fill data & size. Return false if capacity() is too small.
39  bool copy(const char* data, const uint32_t& size);
40  bool copy(const void* data, const uint32_t& size) { return copy((const char*)data, size); }
41 
42  // Direct access. You have to check capacity() yourself.
43  char* data_rw() { return _data; }
44  void set_size(const uint32_t & size) { _size = size; }
45  void reset() { _size = 0; }
46 
47  private:
48  char* _data;
49  uint32_t _size;
50  uint32_t _capacity;
51  };
52 
53  //
54  // Preallocated buffer with stream informations
55  //
56  class StreamSample : public Sample
57  {
58  public:
59  StreamSample(uint32_t capacity) :
60  Sample(capacity),
61  _data_timestamp(LIBED247_TIMESTAMP_DEFAULT),
62  _recv_timestamp(LIBED247_TIMESTAMP_DEFAULT),
63  _frame_details(LIBED247_SAMPLE_DETAILS_DEFAULT)
64  {}
65 
66  // No implicit copy. Use copy() methods.
67  StreamSample(const StreamSample & other) = delete;
68  StreamSample & operator = (const StreamSample & other) = delete;
69 
70  // Can be moved
71  StreamSample(StreamSample&& other) :
72  Sample(std::move(other)),
73  _data_timestamp(std::move(other._data_timestamp)),
74  _recv_timestamp(std::move(other._recv_timestamp)),
75  _frame_details(std::move(other._frame_details))
76  {}
77 
78 
79  using Sample::copy;
80 
81  // Copy a sample. Return false if capacity() is too small.
82  bool copy(const StreamSample & sample);
83 
84  void set_data_timestamp(const ed247_timestamp_t& data_timestamp) { _data_timestamp = data_timestamp; }
85  void set_recv_timestamp(const ed247_timestamp_t& recv_timestamp) { _recv_timestamp = recv_timestamp; }
86  void set_frame_details(const ed247_sample_details_t& frame_details) { _frame_details = frame_details; }
87  const ed247_timestamp_t& data_timestamp() const { return _data_timestamp; }
88  const ed247_timestamp_t& recv_timestamp() const { return _recv_timestamp; }
89  const ed247_sample_details_t& frame_details() const { return _frame_details; }
90 
91  // Set recive timestamp to now using default date function or user provided one
92  void update_recv_timestamp() { ed247_get_receive_timestamp(&_recv_timestamp); }
93 
94  protected:
95  ed247_timestamp_t _data_timestamp;
96  ed247_timestamp_t _recv_timestamp;
97  ed247_sample_details_t _frame_details;
98 
99  private:
100  using Sample::allocate; // Delete
101  };
102 
103 
104  //
105  // preallocated ring buffer
106  //
108  public:
109  StreamSampleRingBuffer(uint32_t capacity, uint32_t samples_capacity);
111 
112  uint32_t capacity() const { return _samples.size(); }
113  uint32_t samples_capacity() const { return _samples_capacity; }
114  uint32_t size() const { return _index_size; }
115  bool empty() const { return _index_size == 0; }
116  bool full() const { return _index_size >= _samples.size(); }
117 
118  // "push" a new sample.
119  // If ring buffer is full, override the oldest sample.
120  // Since memory is preallocated, return a reference to the "new" sample.
121  // Returned sample is not reseted but its content sahll be ignored.
122  StreamSample& push_back();
123 
124  // Pop the oldest sample.
125  // if ring buffer is empty, return an arbitrary sample. (i.e. call empty() before)
126  StreamSample& pop_front();
127 
128  // Return the oldest sample without removing it.
129  // if ring buffer is empty, return an arbitrary sample. (i.e. call empty() before)
130  StreamSample& front() { return _samples[_index_read]; }
131 
132  // Return the last pushed sample
133  // if ring buffer is empty, return an arbitrary sample. (i.e. call empty() before)
134  StreamSample& back()
135  {
136  return _samples[_index_write == 0 ? (_samples.size()-1) : (_index_write-1)];
137  }
138 
139  // Return the oldest + index sample
140  // index is not checked. May have undefined behavior.
141  StreamSample& at(uint32_t index)
142  {
143  return _samples[(_index_read + index) % _samples.size()];
144  }
145 
146  private:
147  std::vector<StreamSample> _samples;
148  uint32_t _samples_capacity;
149  uint32_t _index_read;
150  uint32_t _index_write;
151  uint32_t _index_size;
152  };
153 
154 }
155 
156 #endif
Definition: ed247_sample.h:14
+
Timestamp structure, seconds from EPOCH (January 1st 1970) and nanoseconds offset with reference to p...
Definition: ed247.h:209
+
LIBED247_EXPORT void ed247_get_receive_timestamp(ed247_timestamp_t *timestamp)
Return the time to timestamp the incoming streams.
Definition: ed247_time.cpp:107
+
Definition: ed247_sample.h:107
+
Definition: ed247_sample.h:56
+
Definition: ed247_channel.cpp:37
+
Sample Details.
Definition: ed247.h:909
+
+
+ + + + diff --git a/docs/ed247__signal_8h_source.html b/docs/ed247__signal_8h_source.html new file mode 100644 index 00000000..8165c6fa --- /dev/null +++ b/docs/ed247__signal_8h_source.html @@ -0,0 +1,134 @@ + + + + + + +ED247 Library: src/ed247/ed247_signal.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_signal.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 /******************************************************************************
3  * The MIT Licence
4  *
5  * Copyright (c) 2021 Airbus Operations S.A.S
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining a
8  * copy of this software and associated documentation files (the "Software"),
9  * to deal in the Software without restriction, including without limitation
10  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11  * and/or sell copies of the Software, and to permit persons to whom the
12  * Software is furnished to do so, subject to the following conditions:
13  *
14  * The above copyright notice and this permission notice shall be included
15  * in all copies or substantial portions of the Software.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
21  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
22  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23  * OTHER DEALINGS IN THE SOFTWARE.
24  *****************************************************************************/
25 #ifndef _ED247_SIGNAL_H_
26 #define _ED247_SIGNAL_H_
27 #include "ed247.h"
28 #include "ed247_xml.h"
29 #include "ed247_friend_test.h"
30 #include <memory>
31 #include <vector>
32 #include <unordered_map>
33 
34 
35 // base structures for C API
39 
40 namespace ed247
41 {
43  {
44  public:
45  Signal(const xml::Signal* configuration, ed247_internal_stream_t* ed247_api_stream);
46  ~Signal();
47 
48  // No implicit copy
49  Signal(const Signal & other) = delete;
50  Signal& operator = (const Signal & other) = delete;
51 
52  // configuration accessors
53  const std::string& get_name() const { return _configuration->_name; }
54  const std::string& get_comment() const { return _configuration->_comment; }
55  const std::string& get_icd() const { return _configuration->_icd; }
56  ed247_signal_type_t get_type() const { return _configuration->_type; }
57  uint32_t get_byte_offset() const { return _configuration->_byte_offset; }
58  const std::string& get_analogue_electrical_unit() const { return _configuration->_analogue_electrical_unit; }
59 
60  ed247_nad_type_t get_nad_type() const { return _configuration->_nad_type; }
61  uint32_t get_nad_type_size() const { return _configuration->get_nad_type_size(); }
62  const std::string& get_nad_unit() const { return _configuration->_nad_unit; }
63  const std::vector<uint32_t> get_nad_dimensions() { return _configuration->_nad_dimensions; }
64 
65  uint32_t get_vnad_position() const { return _configuration->_vnad_position; }
66  uint32_t get_vnad_max_number() const { return _configuration->_vnad_max_number; }
67  uint32_t get_sample_max_size_bytes() const { return _configuration->get_sample_max_size_bytes(); }
68 
69 
70  // implementation of ed247_signal_get_stream()
71  ed247_internal_stream_t* get_api_stream() { return _ed247_api_stream; }
72 
73  // Handle user-data
74  void set_user_data(void *user_data) { _user_data = user_data; }
75  void get_user_data(void **user_data) { *user_data = _user_data; }
76 
77 
78  private:
79  const xml::Signal* _configuration;
80  ed247_internal_stream_t* _ed247_api_stream; // Needed for API method ed247_signal_get_stream()
81  void* _user_data;
82  };
83 
84 
85  typedef std::shared_ptr<Signal> signal_ptr_t;
86  typedef std::vector<signal_ptr_t> signal_list_t;
87 
88 
89  class SignalSet
90  {
91  public:
92  signal_ptr_t create(const xml::Signal* configuration, ed247_internal_stream_t* ed247_api_stream);
93  signal_ptr_t get(const std::string& name);
94  signal_list_t find(const std::string& regex);
95 
96  SignalSet();
97  ~SignalSet();
98 
99  SignalSet& operator=(const SignalSet &) = delete;
100  SignalSet& operator=(SignalSet &&) = delete;
101 
102  protected:
103  ED247_FRIEND_TEST();
104  std::unordered_map<std::string, signal_ptr_t> _signals;
105  };
106 }
107 
108 #endif
Definition: ed247_signal.h:42
+
Definition: ed247_signal.h:89
+
ed247_signal_type_t
Signal types.
Definition: ed247.h:164
+
Definition: ed247_xml.h:98
+
Definition: ed247_stream.h:33
+
Definition: ed247_signal.h:37
+
ed247_nad_type_t
NAD type.
Definition: ed247.h:176
+
Definition: ed247_signal.h:36
+
Definition: ed247_channel.cpp:37
+
+
+ + + + diff --git a/docs/ed247__stream_8h_source.html b/docs/ed247__stream_8h_source.html new file mode 100644 index 00000000..06d5bf0d --- /dev/null +++ b/docs/ed247__stream_8h_source.html @@ -0,0 +1,148 @@ + + + + + + +ED247 Library: src/ed247/ed247_stream.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_stream.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 /******************************************************************************
3  * The MIT Licence
4  *
5  * Copyright (c) 2021 Airbus Operations S.A.S
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining a
8  * copy of this software and associated documentation files (the "Software"),
9  * to deal in the Software without restriction, including without limitation
10  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11  * and/or sell copies of the Software, and to permit persons to whom the
12  * Software is furnished to do so, subject to the following conditions:
13  *
14  * The above copyright notice and this permission notice shall be included
15  * in all copies or substantial portions of the Software.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
21  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
22  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23  * OTHER DEALINGS IN THE SOFTWARE.
24  *****************************************************************************/
25 #ifndef _ED247_STREAM_H_
26 #define _ED247_STREAM_H_
27 #include "ed247_xml.h"
28 #include "ed247_signal.h"
29 #include "ed247_sample.h"
30 
31 
32 // base structures for C API
37 
38 namespace ed247
39 {
40  class Context;
41  class StreamAssistant;
42 
44  {
45  public:
46 
47  Stream(Context* context,
48  const xml::Stream* configuration,
49  ed247_internal_channel_t* ed247_api_channel, // Parent for ed247_stream_get_channel()
50  uint32_t sample_size_size); // Size of the sample size header field (that depend on stream type)
51 
52  virtual ~Stream();
53 
54  // No implicit copy.
55  Stream(const Stream & other) = delete;
56  Stream& operator = (const Stream & other) = delete;
57 
58 
59  // configuration accessors
60  const std::string& get_name() const { return _configuration->_name; }
61  const std::string& get_icd() const { return _configuration->_icd; }
62  const std::string& get_comment() const { return _configuration->_comment; }
63  ed247_uid_t get_uid() const { return _configuration->_uid; }
64  ed247_stream_type_t get_type() const { return _configuration->_type; }
65  ed247_direction_t get_direction() const { return _configuration->_direction; }
66  uint32_t get_sample_max_size_bytes() const { return _configuration->_sample_max_size_bytes; }
67  uint32_t get_sample_max_number() const { return _configuration->_sample_max_number; }
68  uint32_t get_max_size() const { return _max_size; }
69 
70 
71  // implementation of API method ed247_stream_get_channel()
72  ed247_internal_channel_t* get_api_channel() { return _ed247_api_channel; }
73 
74 
75  // Handle user-data
76  void set_user_data(void *user_data) { _user_data = user_data; }
77  void get_user_data(void **user_data) { *user_data = _user_data; }
78 
79 
80  // Signals specific part
81  bool is_signal_based() const { return _configuration->is_signal_based(); }
82  virtual uint32_t get_sampling_period_us() { return 0; }
83  StreamAssistant* get_assistant() { return _assistant.get(); }
84  signal_list_t& get_signals() { return _signals; }
85  ed247_internal_signal_list_t* get_client_signals() { return _client_signals.get(); }
86  signal_list_t find_signals(std::string str_regex);
87  signal_ptr_t get_signal(std::string str_name);
88 
89 
90  // Handing samples
91  uint32_t get_incoming_sample_number() { return _recv_stack.size(); }
92  uint32_t get_outgoing_sample_number() { return _send_stack.size(); }
93 
94  // Append sample_data to send stack
95  // If send stack is full, the oldest pushed sample will be silently dropped. This is not an error.
96  // If data_timestamp provided, sample will be dated if enabled by configuration
97  // If full provided, will be set to true if send stack is full after this appending
98  // Return false on fatal error. (stack full is not an error)
99  bool push_sample(const void* sample_data, uint32_t sample_size,
100  const ed247_timestamp_t* data_timestamp,
101  bool* full);
102 
103  // Return the oldest received sample and mark it as removed.
104  // Set empty to true if incoming stack is empty after the pop.
105  // If stack is empty before the pop, an arbitrary, but valid, sample will be returned. (see get_incoming_sample_number())
106  StreamSample& pop_sample(bool* empty);
107 
108  // Encode each pushed sample of the stream in frame.
109  // Return encoded length.
110  uint32_t encode(char* frame, uint32_t frame_size);
111 
112  // Decode the given frame and fill internal samples.
113  // Return false on error (the rest of the frame cannot be decoded)
114  bool decode(const char* frame, uint32_t frame_size, const ed247_sample_details_t& frame_details);
115 
116  // Callback managment (Can we remove this ugly API ?)
117  ed247_status_t register_callback(ed247_context_t context, ed247_stream_recv_callback_t callback);
118  ed247_status_t unregister_callback(ed247_context_t context, ed247_stream_recv_callback_t callback);
119  bool run_callbacks();
120 
121 
122  protected:
123  Context* _context;
124  const xml::Stream* _configuration;
125  uint32_t _sample_size_size;
126  uint32_t _sample_first_header_size;
127  uint32_t _sample_next_header_size;
128  uint32_t _max_size;
129  signal_list_t _signals;
130  std::unique_ptr<ed247_internal_signal_list_t> _client_signals;
131  std::unique_ptr<StreamAssistant> _assistant;
132  StreamSampleRingBuffer _recv_stack;
133  StreamSampleRingBuffer _send_stack;
134 
135  private:
136  ed247_internal_channel_t* _ed247_api_channel;
137  void* _user_data;
138 
139  // Callback managment (Can we remove this ugly API ?)
140  struct CallbackData {
141  ed247_context_t context;
143  };
144  std::vector<CallbackData> _callbacks;
145 
146  ED247_FRIEND_TEST();
147  };
148 
149 
150  //
151  // Streams with signals
152  //
153  struct StreamSignals: public Stream {
154  StreamSignals(Context* context, const xml::Stream* configuration,
155  ed247_internal_channel_t* ed247_api_channel, uint32_t sample_size_size);
156  uint32_t get_sampling_period_us() override { return ((xml::StreamSignals*)_configuration)->_sampling_period_us; }
157 
158  };
159 
160  typedef std::shared_ptr<Stream> stream_ptr_t;
161  typedef std::vector<stream_ptr_t> stream_list_t;
162  typedef std::unordered_map<std::string, stream_ptr_t> stream_map_t;
163 
164 
165  //
166  // Global list of streams
167  //
168  class StreamSet
169  {
170  public:
171  StreamSet(Context* context);
172  ~StreamSet();
173 
174  StreamSet& operator=(const StreamSet &) = delete;
175  StreamSet& operator=(StreamSet &&) = delete;
176 
177  stream_ptr_t create(const xml::Stream* configuration, ed247_internal_channel_t* ed247_api_channel);
178 
179  stream_ptr_t get(std::string name);
180  stream_list_t find(std::string regex);
181 
182  stream_map_t& streams() { return _streams; }
183  uint32_t size() const { return _streams.size(); }
184 
185  stream_list_t& get_streams_signals_output() { return _streams_signals_output; }
186  stream_list_t& get_streams_signals_input() { return _streams_signals_input; }
187 
188  private:
189  stream_map_t _streams;
190  stream_list_t _streams_signals_output;
191  stream_list_t _streams_signals_input;
192  Context* _context;
193  };
194 }
195 
196 #endif
Definition: ed247_stream.h:153
+
ed247_direction_t
Stream direction.
Definition: ed247.h:153
+
Definition: ed247_stream.h:168
+
Definition: ed247_channel.h:34
+
Timestamp structure, seconds from EPOCH (January 1st 1970) and nanoseconds offset with reference to p...
Definition: ed247.h:209
+
uint16_t ed247_uid_t
Unique identifier type.
Definition: ed247.h:115
+
Definition: ed247_sample.h:107
+
Definition: ed247_stream.h:34
+
Definition: ed247_context.h:36
+
Definition: ed247_sample.h:56
+
Definition: ed247_stream.h:43
+
Definition: ed247_stream.h:33
+
Definition: ed247_xml.h:147
+
Definition: ed247_signal.h:37
+
ed247_status_t
Status codes.
Definition: ed247.h:67
+
Definition: ed247_channel.cpp:37
+
ed247_stream_type_t
Stream types.
Definition: ed247.h:132
+
ed247_status_t(* ed247_stream_recv_callback_t)(ed247_context_t context, ed247_stream_t stream)
Stream receive callback function pointer.
Definition: ed247.h:615
+
Definition: ed247_stream_assistant.h:11
+
Definition: ed247_stream_assistant.h:20
+
Definition: ed247_xml.h:173
+
Sample Details.
Definition: ed247.h:909
+
Definition: ed247_context.h:31
+
+
+ + + + diff --git a/docs/ed247__stream__assistant_8h_source.html b/docs/ed247__stream__assistant_8h_source.html new file mode 100644 index 00000000..e207545f --- /dev/null +++ b/docs/ed247__stream__assistant_8h_source.html @@ -0,0 +1,136 @@ + + + + + + +ED247 Library: src/ed247/ed247_stream_assistant.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_stream_assistant.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 #ifndef _ED247_STREAM_ASSISTANT_H_
3 #define _ED247_STREAM_ASSISTANT_H_
4 #include "ed247.h"
5 #include "ed247_xml.h"
6 #include "ed247_signal.h"
7 #include "ed247_sample.h"
8 
9 
10 // base structures for C API
13 };
14 
15 
16 namespace ed247
17 {
18  class Stream;
19 
21  {
22  public:
23 
24  StreamAssistant(Stream* stream);
25  virtual ~StreamAssistant();
26 
27  Stream* get_api_stream() { return _stream; }
28 
29  // Write a signal to the stream
30  virtual bool write(const Signal& signal, const void* data, uint32_t size) = 0;
31  // Read a signal from the stream
32  virtual bool read(const Signal& signal, const void** data, uint32_t* size) = 0;
33 
34  // See stream::push_sample() for details
35  virtual bool push(const ed247_timestamp_t* data_timestamp, bool* full) = 0;
36  // See stream::pop_sample() for details
37  virtual ed247_status_t pop(const ed247_timestamp_t** data_timestamp, const ed247_timestamp_t** recv_timestamp,
38  const ed247_sample_details_t** frame_details, bool* empty) = 0;
39 
40  // Check is some signals han been written since last push
41  bool was_written() { return _was_written; }
42 
43  // Push data only if was_written(). See stream::push_sample() for details
44  bool push_if_was_written(const ed247_timestamp_t* data_timestamp, bool* full);
45 
46  protected:
47  Stream* _stream;
48  Sample _buffer; // WARN: buffer content depend on stream type and direction for performances reasons
49  bool _was_written; // true if some signals has been written since last push
50 
51  ED247_FRIEND_TEST();
52  };
53 
54 
56  {
57  public:
59 
60  virtual bool write(const Signal& signal, const void* data, uint32_t size) override;
61  virtual bool read(const Signal& signal, const void** data, uint32_t * size) override;
62 
63  virtual bool push(const ed247_timestamp_t* data_timestamp, bool* full) override;
64  virtual ed247_status_t pop(const ed247_timestamp_t** data_timestamp, const ed247_timestamp_t** recv_timestamp,
65  const ed247_sample_details_t** frame_details, bool* empty) override;
66  };
67 
69  {
70  public:
71  VNADStreamAssistant(Stream* stream);
72 
73  virtual bool write(const Signal& signal, const void* data, uint32_t size) override;
74  virtual bool read(const Signal& signal, const void** data, uint32_t * size) override;
75 
76  virtual bool push(const ed247_timestamp_t* data_timestamp, bool* full) override;
77  virtual ed247_status_t pop(const ed247_timestamp_t** data_timestamp, const ed247_timestamp_t** recv_timestamp,
78  const ed247_sample_details_t** frame_details, bool* empty) override;
79 
80  private:
81  // signal position -> Sample.
82  // Position may not be continuous so we cannot use a vector
83  std::unordered_map<uint32_t, Sample> _signal_samples;
84  };
85 
86 }
87 
88 #endif
Definition: ed247_sample.h:14
+
Definition: ed247_signal.h:42
+
Timestamp structure, seconds from EPOCH (January 1st 1970) and nanoseconds offset with reference to p...
Definition: ed247.h:209
+
Definition: ed247_stream_assistant.h:55
+
Definition: ed247_stream.h:43
+
Definition: ed247_stream_assistant.h:68
+
ed247_status_t
Status codes.
Definition: ed247.h:67
+
Definition: ed247_channel.cpp:37
+
Definition: ed247_stream_assistant.h:11
+
Definition: ed247_stream_assistant.h:20
+
Sample Details.
Definition: ed247.h:909
+
+
+ + + + diff --git a/docs/ed247__time_8h_source.html b/docs/ed247__time_8h_source.html new file mode 100644 index 00000000..46123c83 --- /dev/null +++ b/docs/ed247__time_8h_source.html @@ -0,0 +1,126 @@ + + + + + + +ED247 Library: src/ed247/ed247_time.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_time.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 #ifndef ED247_TIME_H
3 #define ED247_TIME_H
4 #include <stdint.h>
5 
6 // Note: most time function are defined in ed247.h
7 
8 namespace ed247 {
9  uint64_t get_monotonic_time_us();
10  void sleep_us(uint32_t duration_us);
11 }
12 
13 
14 #endif
Definition: ed247_channel.cpp:37
+
+
+ + + + diff --git a/docs/ed247__xml_8h_source.html b/docs/ed247__xml_8h_source.html new file mode 100644 index 00000000..ca998fe4 --- /dev/null +++ b/docs/ed247__xml_8h_source.html @@ -0,0 +1,160 @@ + + + + + + +ED247 Library: src/ed247/ed247_xml.h Source File + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_xml.h
+
+
+
1 /* -*- mode: c++; c-basic-offset: 2 -*- */
2 /******************************************************************************
3  * The MIT Licence
4  *
5  * Copyright (c) 2021 Airbus Operations S.A.S
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining a
8  * copy of this software and associated documentation files (the "Software"),
9  * to deal in the Software without restriction, including without limitation
10  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11  * and/or sell copies of the Software, and to permit persons to whom the
12  * Software is furnished to do so, subject to the following conditions:
13  *
14  * The above copyright notice and this permission notice shall be included
15  * in all copies or substantial portions of the Software.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
21  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
22  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23  * OTHER DEALINGS IN THE SOFTWARE.
24  *****************************************************************************/
25 #ifndef _ED247_XML_H_
26 #define _ED247_XML_H_
27 #include "ed247.h"
28 #include <string>
29 #include <vector>
30 #include <memory>
31 
32 // Prevent include of libxml2 header
33 typedef struct _xmlNode *xmlNodePtr;
34 
35 namespace ed247 {
36  namespace xml {
37  struct Component;
38 
39  // Load ECIC and return an ed247::xml::Component node
40  std::unique_ptr<Component> load_filepath(const std::string & filepath);
41  std::unique_ptr<Component> load_content(const std::string & content);
42 
43 
44  struct Node
45  {
46  virtual void load(const xmlNodePtr xml_node) = 0;
47  };
48 
49  struct UdpSocket : public Node
50  {
51  std::string _dst_ip_address;
52  uint16_t _dst_ip_port;
53  std::string _src_ip_address;
54  uint16_t _src_ip_port;
55  std::string _mc_ip_address;
56  uint16_t _mc_ttl;
57  ed247_direction_t _direction;
58 
59  UdpSocket();
60  virtual void load(const xmlNodePtr xml_node) override final;
61  };
62 
63  struct ComInterface : public Node
64  {
65  std::vector<UdpSocket> _udp_sockets;
66  virtual void load(const xmlNodePtr xml_node) override final;
67  };
68 
69  struct DataTimestamp : public Node
70  {
71  ed247_yesno_t _enable;
72  ed247_yesno_t _enable_sample_offset;
73 
74  DataTimestamp();
75  virtual void load(const xmlNodePtr xml_node) override final;
76  };
77 
78  struct Errors : public Node
79  {
80  ed247_yesno_t _enable;
81 
82  Errors();
83  virtual void load(const xmlNodePtr xml_node) override final;
84  };
85 
86  struct Header: public Node
87  {
88  ed247_yesno_t _enable;
89  ed247_yesno_t _transport_timestamp;
90 
91  Header();
92  virtual void load(const xmlNodePtr xml_node) override final;
93  };
94 
95  //
96  // Signals
97  //
98  struct Signal : public Node
99  {
100  std::string _name;
101  ed247_signal_type_t _type;
102  std::string _comment;
103  std::string _icd;
104  uint32_t _byte_offset; // All signals except VNAD
105  std::string _analogue_electrical_unit;
106  ed247_nad_type_t _nad_type; // UINT8 for discrete and FLOAT32 for analogue
107  std::string _nad_unit; // NAD and VNAD
108  std::vector<uint32_t> _nad_dimensions;
109  uint32_t _vnad_position;
110  uint32_t _vnad_max_number;
111 
112  uint32_t get_sample_max_size_bytes() const;
113  inline uint32_t get_nad_type_size() const { return get_nad_type_size(_nad_type); }
114  static uint32_t get_nad_type_size(ed247_nad_type_t nad_type);
115 
117  virtual ~Signal() {}
118  };
119 
120  struct DISSignal : public Signal
121  {
122  DISSignal();
123  virtual void load(const xmlNodePtr xml_node) override final;
124  };
125 
126  struct ANASignal : public Signal
127  {
128  ANASignal();
129  virtual void load(const xmlNodePtr xml_node) override final;
130  };
131 
132  struct NADSignal : public Signal
133  {
134  NADSignal();
135  virtual void load(const xmlNodePtr xml_node) override final;
136  };
137 
138  struct VNADSignal : public Signal
139  {
140  VNADSignal();
141  virtual void load(const xmlNodePtr xml_node) override final;
142  };
143 
144  //
145  // Streams
146  //
147  struct Stream : public Node
148  {
149  std::string _name;
150  ed247_direction_t _direction;
151  ed247_stream_type_t _type;
152  std::string _comment;
153  std::string _icd;
154  ed247_uid_t _uid;
155  uint32_t _sample_max_number;
156  uint32_t _sample_max_size_bytes;
157  bool _sample_size_fixed;
158  DataTimestamp _data_timestamp;
159 
160  virtual bool is_signal_based() const = 0;
161  virtual void validate(const xmlNodePtr closest_node) = 0;
162  Stream(ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed);
163  virtual ~Stream() {}
164  };
165 
166  struct StreamProtocoled : public Stream
167  {
168  Errors _errors;
169  virtual bool is_signal_based() const override final { return false; }
170  StreamProtocoled(ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed = false);
171  };
172 
173  struct StreamSignals : public Stream
174  {
175  std::vector<std::unique_ptr<Signal>> _signal_list;
176  uint32_t _sampling_period_us;
177  virtual bool is_signal_based() const override final { return true; }
178  StreamSignals(ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed = true);
179  };
180 
181  struct A429Stream : public StreamProtocoled
182  {
183  A429Stream();
184  virtual void load(const xmlNodePtr xml_node) override final;
185  virtual void validate(const xmlNodePtr closest_node) override final;
186  };
187 
188  struct A664Stream : public StreamProtocoled
189  {
190  ed247_yesno_t _enable_message_size;
191 
192  A664Stream();
193  virtual void load(const xmlNodePtr xml_node) override final;
194  virtual void validate(const xmlNodePtr closest_node) override final;
195  };
196 
197  struct A825Stream : public StreamProtocoled
198  {
199  A825Stream();
200  virtual void load(const xmlNodePtr xml_node) override final;
201  virtual void validate(const xmlNodePtr closest_node) override final;
202  };
203 
205  {
206  SERIALStream();
207  virtual void load(const xmlNodePtr xml_node) override final;
208  virtual void validate(const xmlNodePtr closest_node) override final;
209  };
210 
211  struct ETHStream : public StreamProtocoled
212  {
213  ed247_yesno_t _enable_message_size;
214  std::string _layer;
215 
216  ETHStream();
217  virtual void load(const xmlNodePtr xml_node) override final;
218  virtual void validate(const xmlNodePtr closest_node) override final;
219  };
220 
221  struct DISStream : public StreamSignals
222  {
223  DISStream();
224  virtual void load(const xmlNodePtr xml_node) override final;
225  virtual void validate(const xmlNodePtr closest_node) override final;
226  };
227 
228  struct ANAStream : public StreamSignals
229  {
230  ANAStream();
231  virtual void load(const xmlNodePtr xml_node) override final;
232  virtual void validate(const xmlNodePtr closest_node) override final;
233  };
234 
235  struct NADStream : public StreamSignals
236  {
237  NADStream();
238  virtual void load(const xmlNodePtr xml_node) override final;
239  virtual void validate(const xmlNodePtr closest_node) override final;
240  };
241 
242  struct VNADStream : public StreamSignals
243  {
244  VNADStream();
245  virtual void load(const xmlNodePtr xml_node) override final;
246  virtual void validate(const xmlNodePtr closest_node) override final;
247  };
248 
249  //
250  // Channels
251  //
252  struct Channel : public Node
253  {
254  std::string _name;
255  std::string _comment;
256  ed247_standard_t _frame_standard_revision;
257  ComInterface _com_interface;
258  Header _header;
259  std::vector<std::unique_ptr<Stream>> _stream_list;
260  bool _is_simple_channel;
261 
262  Channel();
263  virtual void load(const xmlNodePtr xml_node) override final;
264  };
265 
266  //
267  // Component (root)
268  //
269  struct Component: public Node
270  {
271  ed247_uid_t _identifier;
272  std::string _name;
273  std::string _version;
274  ed247_component_type_t _component_type;
275  ed247_standard_t _standard_revision;
276  std::string _comment;
277  std::string _file_producer_identifier;
278  std::string _file_producer_comment;
279  std::vector<Channel> _channel_list;
280 
281  Component();
282  virtual void load(const xmlNodePtr xml_node) override final;
283  };
284  }
285 }
286 
287 std::ostream& operator<<(std::ostream& stream, const ed247::xml::UdpSocket& socket);
288 
289 #endif
Definition: ed247_xml.h:221
+
Definition: ed247_xml.h:132
+
Definition: ed247_xml.h:49
+
Definition: ed247_xml.h:188
+
Definition: ed247_xml.h:63
+
ed247_standard_t
ED247 Standard revisions.
Definition: ed247.h:104
+
ed247_direction_t
Stream direction.
Definition: ed247.h:153
+
ed247_component_type_t
Component types.
Definition: ed247.h:121
+
Definition: ed247_xml.h:69
+
Definition: ed247_xml.h:126
+
Definition: ed247_xml.h:181
+
Definition: ed247_xml.h:235
+
ed247_signal_type_t
Signal types.
Definition: ed247.h:164
+
uint16_t ed247_uid_t
Unique identifier type.
Definition: ed247.h:115
+
Definition: ed247_xml.h:44
+
Definition: ed247_xml.cpp:115
+
Definition: ed247_xml.h:242
+
Definition: ed247_xml.h:98
+
Definition: ed247_xml.h:252
+
Definition: ed247_xml.h:78
+
Definition: ed247_xml.h:147
+
Definition: ed247_xml.h:120
+
Definition: ed247_xml.h:204
+
Definition: ed247_xml.h:269
+
ed247_nad_type_t
NAD type.
Definition: ed247.h:176
+
Definition: ed247_channel.cpp:37
+
ed247_stream_type_t
Stream types.
Definition: ed247.h:132
+
Definition: ed247_xml.h:86
+
Definition: ed247_xml.h:211
+
ed247_yesno_t
Yes / No.
Definition: ed247.h:94
+
Definition: ed247_xml.h:228
+
Definition: ed247_xml.h:197
+
Definition: ed247_xml.h:173
+
Definition: ed247_xml.h:166
+
Definition: ed247_xml.h:138
+
+
+ + + + diff --git a/docs/files.html b/docs/files.html new file mode 100644 index 00000000..02c1a8b4 --- /dev/null +++ b/docs/files.html @@ -0,0 +1,145 @@ + + + + + + +ED247 Library: File List + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
File List
+
+
+
Here is a list of all documented files with brief descriptions:
+
[detail level 123]
+ + + + + + + + + + + + + + + + + +
  src
  ed247
 ed247.h
 ed247_bswap.h
 ed247_channel.h
 ed247_client_list.h
 ed247_cominterface.h
 ed247_context.h
 ed247_frame_header.h
 ed247_friend_test.h
 ed247_logs.h
 ed247_sample.h
 ed247_signal.h
 ed247_stream.h
 ed247_stream_assistant.h
 ed247_time.h
 ed247_xml.h
+
+
+
+ + + + diff --git a/docs/files.js b/docs/files.js new file mode 100644 index 00000000..04b0a8ee --- /dev/null +++ b/docs/files.js @@ -0,0 +1,4 @@ +var files = +[ + [ "src", "dir_68267d1309a1af8e8297ef4c3efbcdba.html", "dir_68267d1309a1af8e8297ef4c3efbcdba" ] +]; \ No newline at end of file diff --git a/docs/folderclosed.png b/docs/folderclosed.png new file mode 100644 index 00000000..bb8ab35e Binary files /dev/null and b/docs/folderclosed.png differ diff --git a/docs/folderopen.png b/docs/folderopen.png new file mode 100644 index 00000000..d6c7f676 Binary files /dev/null and b/docs/folderopen.png differ diff --git a/docs/graph_legend.html b/docs/graph_legend.html new file mode 100644 index 00000000..2f984f07 --- /dev/null +++ b/docs/graph_legend.html @@ -0,0 +1,148 @@ + + + + + + +ED247 Library: Graph Legend + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Graph Legend
+
+
+

This page explains how to interpret the graphs that are generated by doxygen.

+

Consider the following example:

1 /*! Invisible class because of truncation */
2 class Invisible { };
3 
4 /*! Truncated class, inheritance relation is hidden */
5 class Truncated : public Invisible { };
6 
7 /* Class not documented with doxygen comments */
8 class Undocumented { };
9 
10 /*! Class that is inherited using public inheritance */
11 class PublicBase : public Truncated { };
12 
13 /*! A template class */
14 template<class T> class Templ { };
15 
16 /*! Class that is inherited using protected inheritance */
17 class ProtectedBase { };
18 
19 /*! Class that is inherited using private inheritance */
20 class PrivateBase { };
21 
22 /*! Class that is used by the Inherited class */
23 class Used { };
24 
25 /*! Super class that inherits a number of other classes */
26 class Inherited : public PublicBase,
27  protected ProtectedBase,
28  private PrivateBase,
29  public Undocumented,
30  public Templ<int>
31 {
32  private:
33  Used *m_usedClass;
34 };

This will result in the following graph:

+
+ +
+

The boxes in the above graph have the following meaning:

+
    +
  • +A filled gray box represents the struct or class for which the graph is generated.
  • +
  • +A box with a black border denotes a documented struct or class.
  • +
  • +A box with a gray border denotes an undocumented struct or class.
  • +
  • +A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
  • +
+

The arrows have the following meaning:

+
    +
  • +A dark blue arrow is used to visualize a public inheritance relation between two classes.
  • +
  • +A dark green arrow is used for protected inheritance.
  • +
  • +A dark red arrow is used for private inheritance.
  • +
  • +A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible.
  • +
  • +A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance.
  • +
+
+
+ + + + diff --git a/docs/graph_legend.md5 b/docs/graph_legend.md5 new file mode 100644 index 00000000..7bd99570 --- /dev/null +++ b/docs/graph_legend.md5 @@ -0,0 +1 @@ +1bffc4ef6cd06b95fb6c5ee5c51e8968 \ No newline at end of file diff --git a/docs/graph_legend.png b/docs/graph_legend.png new file mode 100644 index 00000000..d91b0075 Binary files /dev/null and b/docs/graph_legend.png differ diff --git a/docs/group__channel.html b/docs/group__channel.html new file mode 100644 index 00000000..9ee4114e --- /dev/null +++ b/docs/group__channel.html @@ -0,0 +1,429 @@ + + + + + + +ED247 Library: Channel + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Channel
+
+
+

Detailed Description

+ + + + +

+Modules

 Channel list
 
+ + + + +

+Typedefs

+typedef struct ed247_internal_channel_ted247_channel_t
 Channel identifier.
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Functions

LIBED247_EXPORT ed247_status_t ed247_channel_get_stream_list (ed247_channel_t channel, ed247_stream_list_t *streams)
 Retrieve all the streams of the channel. More...
 
LIBED247_EXPORT ed247_status_t ed247_channel_find_streams (ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams)
 Find all streams of the channel whose names match regex_name.
+ More...
 
LIBED247_EXPORT ed247_status_t ed247_channel_get_stream (ed247_channel_t channel, const char *name, ed247_stream_t *stream)
 get a channel stream. More...
 
LIBED247_EXPORT ed247_status_t ed247_channel_set_user_data (ed247_channel_t channel, void *user_data)
 Assign user data to the channel. More...
 
LIBED247_EXPORT ed247_status_t ed247_channel_get_user_data (ed247_channel_t channel, void **user_data)
 Retrieve user data assigned to the channel. More...
 
+LIBED247_EXPORT const char * ed247_channel_get_name (ed247_channel_t channel)
 
+LIBED247_EXPORT const char * ed247_channel_get_comment (ed247_channel_t channel)
 
+LIBED247_EXPORT ed247_standard_t ed247_channel_get_frame_standard_revision (ed247_channel_t channel)
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_channel_get_stream_list (ed247_channel_t channel,
ed247_stream_list_tstreams 
)
+
+ +

Retrieve all the streams of the channel.

+

The lifespan of returned streams is the same as the context, but you can safely call ed247_stream_list_free().

+
Parameters
+ + + +
[in]channelThe channel identifier
[out]streamsList of the streams
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_channel_find_streams (ed247_channel_t channel,
const char * regex_name,
ed247_stream_list_tstreams 
)
+
+ +

Find all streams of the channel whose names match regex_name.
+

+

regex_name shall follow the ECMAScript grammar.
+ This function allocates streams. It has to be freed with ed247_stream_list_free().
+ If you know exact stream names, use ed247_get_stream() instead which is really faster and malloc-free.
+ If you want all channel streams, use ed247_channel_get_stream_list() instead which is really faster and malloc-free.
+

+
Parameters
+ + + + +
[in]channelThe channel identifier
[in]regex_nameThe regular expression for name matching. If null, assume '.*'.
[out]streamsThe list of the streams. If no value, set to null.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREThe stream list is empty
+
+
+
Note
The regular expressions are not implemented in gcc4.8.x (default linux), do not use complex requests.
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_channel_get_stream (ed247_channel_t channel,
const char * name,
ed247_stream_tstream 
)
+
+ +

get a channel stream.

+
Parameters
+ + + + +
[in]channelThe channel identifier
[in]nameThe name of the stream.
[out]streamThe stream identifier.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREThe stream list is empty
+
+
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_channel_set_user_data (ed247_channel_t channel,
void * user_data 
)
+
+ +

Assign user data to the channel.

+

Memory has to be free by the user.

+
Parameters
+ + + +
[in]channelThe channel identifier
[in]user_dataPointer to user data
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_channel_get_user_data (ed247_channel_t channel,
void ** user_data 
)
+
+ +

Retrieve user data assigned to the channel.

+
Parameters
+ + + +
[in]channelThe channel identifier
[out]user_dataPointer to host pointer to user data
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__channel.js b/docs/group__channel.js new file mode 100644 index 00000000..da677a6a --- /dev/null +++ b/docs/group__channel.js @@ -0,0 +1,10 @@ +var group__channel = +[ + [ "Channel list", "group__channel__list.html", "group__channel__list" ], + [ "ed247_channel_t", "group__channel.html#ga1bddb20504db07cd2d4638d9aaf5d23c", null ], + [ "ed247_channel_get_stream_list", "group__channel.html#ga320b38be99031cea49a2db0bd74fafac", null ], + [ "ed247_channel_find_streams", "group__channel.html#gabfcc14dde1002df2b85d71163d2da01c", null ], + [ "ed247_channel_get_stream", "group__channel.html#ga84a4ed6367c10e5b3095689927b007c6", null ], + [ "ed247_channel_set_user_data", "group__channel.html#gaf006f79b36c426d11caf58ae0e529812", null ], + [ "ed247_channel_get_user_data", "group__channel.html#gac32bcccc90f64758a800c0d5486f33fe", null ] +]; \ No newline at end of file diff --git a/docs/group__channel__list.html b/docs/group__channel__list.html new file mode 100644 index 00000000..0c8f1d9a --- /dev/null +++ b/docs/group__channel__list.html @@ -0,0 +1,260 @@ + + + + + + +ED247 Library: Channel list + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Channel list
+
+
+

Detailed Description

+ + + + + +

+Typedefs

+typedef struct ed247_internal_channel_list_ted247_channel_list_t
 Channel list identifier.
 
+ + + + + + + + + + +

+Functions

LIBED247_EXPORT ed247_status_t ed247_channel_list_size (ed247_channel_list_t channels, uint32_t *size)
 Get the size of the list. More...
 
LIBED247_EXPORT ed247_status_t ed247_channel_list_next (ed247_channel_list_t channels, ed247_channel_t *channel)
 Iterate over a channel identifier list. More...
 
LIBED247_EXPORT ed247_status_t ed247_channel_list_free (ed247_channel_list_t channels)
 Free channel list. More...
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_channel_list_size (ed247_channel_list_t channels,
uint32_t * size 
)
+
+ +

Get the size of the list.

+
Parameters
+ + + +
[in]channelsThe channel list
[out]sizeThe size of the list
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_channel_list_next (ed247_channel_list_t channels,
ed247_channel_tchannel 
)
+
+ +

Iterate over a channel identifier list.

+

A null value is set when the end of the list is reached. Return value is ED247_STATUS_SUCCESS. The next call will return the pointer to the first item of the list.

+
Parameters
+ + + +
[in,out]channelsThe channel list
[out]channelA pointer to the current item in the list.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESSOperation completed successfully even if end of list may be reached
ED247_STATUS_FAILUREInvalid parameter provided or internal error
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_channel_list_free (ed247_channel_list_t channels)
+
+ +

Free channel list.

+
Parameters
+ + +
[in]channelsThe channel list
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__channel__list.js b/docs/group__channel__list.js new file mode 100644 index 00000000..63199e29 --- /dev/null +++ b/docs/group__channel__list.js @@ -0,0 +1,7 @@ +var group__channel__list = +[ + [ "ed247_channel_list_t", "group__channel__list.html#gad55cfcf02574a8e77d74e50da3ebad42", null ], + [ "ed247_channel_list_size", "group__channel__list.html#gaf68b90c07978d98a4a1c1398c8e4c098", null ], + [ "ed247_channel_list_next", "group__channel__list.html#gac144622372ae2ffa5ef38b752c2c1ea5", null ], + [ "ed247_channel_list_free", "group__channel__list.html#gaaed6b1b9cc42eeef890bf600a0124f37", null ] +]; \ No newline at end of file diff --git a/docs/group__channel_ga320b38be99031cea49a2db0bd74fafac_icgraph.map b/docs/group__channel_ga320b38be99031cea49a2db0bd74fafac_icgraph.map new file mode 100644 index 00000000..945b5e38 --- /dev/null +++ b/docs/group__channel_ga320b38be99031cea49a2db0bd74fafac_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__channel_ga320b38be99031cea49a2db0bd74fafac_icgraph.md5 b/docs/group__channel_ga320b38be99031cea49a2db0bd74fafac_icgraph.md5 new file mode 100644 index 00000000..bd24e244 --- /dev/null +++ b/docs/group__channel_ga320b38be99031cea49a2db0bd74fafac_icgraph.md5 @@ -0,0 +1 @@ +4268d5bfa6da58b532d69359e4ef8bb8 \ No newline at end of file diff --git a/docs/group__channel_ga320b38be99031cea49a2db0bd74fafac_icgraph.png b/docs/group__channel_ga320b38be99031cea49a2db0bd74fafac_icgraph.png new file mode 100644 index 00000000..e3523ebe Binary files /dev/null and b/docs/group__channel_ga320b38be99031cea49a2db0bd74fafac_icgraph.png differ diff --git a/docs/group__channel_ga84a4ed6367c10e5b3095689927b007c6_icgraph.map b/docs/group__channel_ga84a4ed6367c10e5b3095689927b007c6_icgraph.map new file mode 100644 index 00000000..fe18aba0 --- /dev/null +++ b/docs/group__channel_ga84a4ed6367c10e5b3095689927b007c6_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__channel_ga84a4ed6367c10e5b3095689927b007c6_icgraph.md5 b/docs/group__channel_ga84a4ed6367c10e5b3095689927b007c6_icgraph.md5 new file mode 100644 index 00000000..1b67e801 --- /dev/null +++ b/docs/group__channel_ga84a4ed6367c10e5b3095689927b007c6_icgraph.md5 @@ -0,0 +1 @@ +32766c58af88ec62de63f1fca46c68ff \ No newline at end of file diff --git a/docs/group__channel_ga84a4ed6367c10e5b3095689927b007c6_icgraph.png b/docs/group__channel_ga84a4ed6367c10e5b3095689927b007c6_icgraph.png new file mode 100644 index 00000000..d262330f Binary files /dev/null and b/docs/group__channel_ga84a4ed6367c10e5b3095689927b007c6_icgraph.png differ diff --git a/docs/group__channel_gabfcc14dde1002df2b85d71163d2da01c_icgraph.map b/docs/group__channel_gabfcc14dde1002df2b85d71163d2da01c_icgraph.map new file mode 100644 index 00000000..ded22466 --- /dev/null +++ b/docs/group__channel_gabfcc14dde1002df2b85d71163d2da01c_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__channel_gabfcc14dde1002df2b85d71163d2da01c_icgraph.md5 b/docs/group__channel_gabfcc14dde1002df2b85d71163d2da01c_icgraph.md5 new file mode 100644 index 00000000..ff08cedd --- /dev/null +++ b/docs/group__channel_gabfcc14dde1002df2b85d71163d2da01c_icgraph.md5 @@ -0,0 +1 @@ +341be91032cc3f1257b1163daec831ed \ No newline at end of file diff --git a/docs/group__channel_gabfcc14dde1002df2b85d71163d2da01c_icgraph.png b/docs/group__channel_gabfcc14dde1002df2b85d71163d2da01c_icgraph.png new file mode 100644 index 00000000..4256bf80 Binary files /dev/null and b/docs/group__channel_gabfcc14dde1002df2b85d71163d2da01c_icgraph.png differ diff --git a/docs/group__context.html b/docs/group__context.html new file mode 100644 index 00000000..34332406 --- /dev/null +++ b/docs/group__context.html @@ -0,0 +1,161 @@ + + + + + + +ED247 Library: ED247 Context + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ED247 Context
+
+
+

Detailed Description

+

The context is the main entry point to load and use an ECIC.

+ + + + + + + + + + + + +

+Modules

 Initialization
 
 General information
 
 Read configuration
 
 Receive and send
 
 Receive and send callbacks
 
+ + + + +

+Typedefs

+typedef struct ed247_internal_context_ted247_context_t
 Context identifier.
 
+ + + + +

+Enumerations

enum  ed247_component_type_t {
+  ED247_COMPONENT_TYPE__INVALID, +
+  ED247_COMPONENT_TYPE_VIRTUAL, +
+  ED247_COMPONENT_TYPE_BRIDGE, +
+  ED247_COMPONENT_TYPE__COUNT +
+ }
 Component types.
 
+
+
+ + + + diff --git a/docs/group__context.js b/docs/group__context.js new file mode 100644 index 00000000..18c14c2f --- /dev/null +++ b/docs/group__context.js @@ -0,0 +1,10 @@ +var group__context = +[ + [ "Initialization", "group__context__init.html", "group__context__init" ], + [ "General information", "group__context__info.html", null ], + [ "Read configuration", "group__context__config.html", "group__context__config" ], + [ "Receive and send", "group__context__io.html", "group__context__io" ], + [ "Receive and send callbacks", "group__context__callback.html", "group__context__callback" ], + [ "ed247_context_t", "group__context.html#gaeeed7e9c98f65b3e5cdc85f0a5935550", null ], + [ "ed247_component_type_t", "group__context.html#ga7d4c77176d9b208f32febdf8000d0201", null ] +]; \ No newline at end of file diff --git a/docs/group__context__callback.html b/docs/group__context__callback.html new file mode 100644 index 00000000..92506d5a --- /dev/null +++ b/docs/group__context__callback.html @@ -0,0 +1,448 @@ + + + + + + +ED247 Library: Receive and send callbacks + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Receive and send callbacks
+
+
+

Detailed Description

+ + + + + +

+Typedefs

typedef ed247_status_t(* ed247_stream_recv_callback_t) (ed247_context_t context, ed247_stream_t stream)
 Stream receive callback function pointer. More...
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

LIBED247_EXPORT ed247_status_t ed247_stream_register_recv_callback (ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback)
 Register a callback (in a stream) which is called once a frame is received and decoded. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_unregister_recv_callback (ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback)
 Unregister a callback (from a stream) which is called once a frame is received and decoded. More...
 
LIBED247_EXPORT ed247_status_t ed247_streams_register_recv_callback (ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback)
 Register a callback (in several streams as once) which is called once a frame is received and decoded. More...
 
LIBED247_EXPORT ed247_status_t ed247_streams_unregister_recv_callback (ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback)
 Unregister a callback (from several streams as once) which is called once a frame is received and decoded. More...
 
LIBED247_EXPORT ed247_status_t ed247_register_recv_callback (ed247_context_t context, ed247_stream_recv_callback_t callback)
 Register a callback (in all streams) which is called once a frame is received and decoded. More...
 
LIBED247_EXPORT ed247_status_t ed247_unregister_recv_callback (ed247_context_t context, ed247_stream_recv_callback_t callback)
 Unegister a callback (in all streams) which is called once a frame is received and decoded. More...
 
+

Typedef Documentation

+ +
+
+ + + + +
typedef ed247_status_t(* ed247_stream_recv_callback_t) (ed247_context_t context, ed247_stream_t stream)
+
+ +

Stream receive callback function pointer.

+

The decoding of the current frame will be aborted if the callback do not return ED247_STATUS_SUCCESS.

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_register_recv_callback (ed247_context_t context,
ed247_stream_t stream,
ed247_stream_recv_callback_t callback 
)
+
+ +

Register a callback (in a stream) which is called once a frame is received and decoded.

+
Parameters
+ + + + +
[in]context
[in]streamStream identifier
[in]callbackThe callback function
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_unregister_recv_callback (ed247_context_t context,
ed247_stream_t stream,
ed247_stream_recv_callback_t callback 
)
+
+ +

Unregister a callback (from a stream) which is called once a frame is received and decoded.

+
Parameters
+ + + + +
[in]context
[in]streamStream identifier
[in]callbackThe callback function
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_streams_register_recv_callback (ed247_context_t context,
ed247_stream_list_t streams,
ed247_stream_recv_callback_t callback 
)
+
+ +

Register a callback (in several streams as once) which is called once a frame is received and decoded.

+
Parameters
+ + + + +
[in]context
[in]streamsStream identifiers
[in]callbackThe callback function
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_streams_unregister_recv_callback (ed247_context_t context,
ed247_stream_list_t streams,
ed247_stream_recv_callback_t callback 
)
+
+ +

Unregister a callback (from several streams as once) which is called once a frame is received and decoded.

+
Parameters
+ + + + +
[in]context
[in]streamsStream identifiers
[in]callbackThe callback function
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_register_recv_callback (ed247_context_t context,
ed247_stream_recv_callback_t callback 
)
+
+ +

Register a callback (in all streams) which is called once a frame is received and decoded.

+
Parameters
+ + + +
[in]context
[in]callbackThe callback function
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_unregister_recv_callback (ed247_context_t context,
ed247_stream_recv_callback_t callback 
)
+
+ +

Unegister a callback (in all streams) which is called once a frame is received and decoded.

+
Parameters
+ + + +
[in]context
[in]callbackThe callback function
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__context__callback.js b/docs/group__context__callback.js new file mode 100644 index 00000000..ebb7ef41 --- /dev/null +++ b/docs/group__context__callback.js @@ -0,0 +1,10 @@ +var group__context__callback = +[ + [ "ed247_stream_recv_callback_t", "group__context__callback.html#ga135af798b60f7e9054a8c080111fdb8a", null ], + [ "ed247_stream_register_recv_callback", "group__context__callback.html#gaf936575102ced9db2a04622366cff920", null ], + [ "ed247_stream_unregister_recv_callback", "group__context__callback.html#ga143ff73f18b7af0280a04a063c742fb6", null ], + [ "ed247_streams_register_recv_callback", "group__context__callback.html#ga972f336f2883ce33112fe414c8905524", null ], + [ "ed247_streams_unregister_recv_callback", "group__context__callback.html#gab570bdbb7e4018d3c8e063fb5abc8cff", null ], + [ "ed247_register_recv_callback", "group__context__callback.html#ga926b9b5e9d695f83f7bf94b0894d5b86", null ], + [ "ed247_unregister_recv_callback", "group__context__callback.html#gaf48a493504277d57ac784011f9161921", null ] +]; \ No newline at end of file diff --git a/docs/group__context__config.html b/docs/group__context__config.html new file mode 100644 index 00000000..52f2cad1 --- /dev/null +++ b/docs/group__context__config.html @@ -0,0 +1,568 @@ + + + + + + +ED247 Library: Read configuration + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Read configuration
+
+
+

Detailed Description

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

LIBED247_EXPORT ed247_status_t ed247_get_channel_list (ed247_context_t context, ed247_channel_list_t *channels)
 Retrieve all the channels of the component. More...
 
LIBED247_EXPORT ed247_status_t ed247_find_channels (ed247_context_t context, const char *regex_name, ed247_channel_list_t *channels)
 Find all channels of the component whose names match regex_name. More...
 
LIBED247_EXPORT ed247_status_t ed247_get_channel (ed247_context_t context, const char *name, ed247_channel_t *channel)
 Get a channel of the component. More...
 
LIBED247_EXPORT ed247_status_t ed247_get_stream_list (ed247_context_t context, ed247_stream_list_t *streams)
 Retrieve all the streams of the component. More...
 
LIBED247_EXPORT ed247_status_t ed247_find_streams (ed247_context_t context, const char *regex_name, ed247_stream_list_t *streams)
 Find all streams of the component whose names match regex_name. More...
 
LIBED247_EXPORT ed247_status_t ed247_get_stream (ed247_context_t context, const char *name, ed247_stream_t *stream)
 Get a stream of the component. More...
 
LIBED247_EXPORT ed247_status_t ed247_find_signals (ed247_context_t context, const char *regex_name, ed247_signal_list_t *signals)
 Find all signals of the component whose names match regex_name. More...
 
LIBED247_EXPORT ed247_status_t ed247_get_signal (ed247_context_t context, const char *name, ed247_signal_t *signal)
 Get a signal of the component. More...
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_get_channel_list (ed247_context_t context,
ed247_channel_list_tchannels 
)
+
+ +

Retrieve all the channels of the component.

+

The lifespan of returned channels is the same as the context, but you can safely call ed247_channel_list_free().

+
Parameters
+ + + +
[in]contextThe context identifier
[out]channelsList of the channels
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_find_channels (ed247_context_t context,
const char * regex_name,
ed247_channel_list_tchannels 
)
+
+ +

Find all channels of the component whose names match regex_name.

+

regex_name shall follow the ECMAScript grammar.
+ This function allocates channels. It has to be freed with ed247_channel_list_free().
+ If you know exact channel names, use ed247_get_channel() instead which is really faster and malloc-free.
+ If you want all channels, use ed247_get_channel_list() instead which is really faster and malloc-free.
+

+
Parameters
+ + + + +
[in]contextThe context identifier.
[in]regex_nameThe regular expression for name matching. If null, assume '.*'.
[out]channelsThe list of the channels. If no value, set to null.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREThe channel list is empty
+
+
+
Note
The regular expressions are not implemented in gcc4.8.x (default linux), do not use complex requests.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_get_channel (ed247_context_t context,
const char * name,
ed247_channel_tchannel 
)
+
+ +

Get a channel of the component.

+
Parameters
+ + + + +
[in]contextThe context identifier.
[in]nameThe name of the channel.
[out]channelThe channel identifier
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREThe channel list is empty
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_get_stream_list (ed247_context_t context,
ed247_stream_list_tstreams 
)
+
+ +

Retrieve all the streams of the component.

+

The lifespan of returned streams is the same as the context, but you can safely call ed247_stream_list_free().

+
Parameters
+ + + +
[in]contextThe context identifier
[out]streamsList of the streams
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_find_streams (ed247_context_t context,
const char * regex_name,
ed247_stream_list_tstreams 
)
+
+ +

Find all streams of the component whose names match regex_name.

+

regex_name shall follow the ECMAScript grammar.
+ This function allocates streams. It has to be freed with ed247_stream_list_free().
+ If you know exact stream names, use ed247_get_stream() instead which is really faster and malloc-free.
+ If you want all streams, use ed247_get_stream_list() instead which is really faster and malloc-free.
+

+
Parameters
+ + + + +
[in]contextThe context identifier
[in]regex_nameThe regular expression for name matching. If null, assume '.*'.
[out]streamsThe list of the streams. If no value, set to null.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREThe stream list is empty
+
+
+
Note
The regular expressions are not implemented in gcc4.8.x (default linux), do not use complex requests.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_get_stream (ed247_context_t context,
const char * name,
ed247_stream_tstream 
)
+
+ +

Get a stream of the component.

+
Parameters
+ + + + +
[in]contextThe context identifier
[in]nameThe name of the stream.
[out]streamThe stream identifier
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREThe stream list is empty
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_find_signals (ed247_context_t context,
const char * regex_name,
ed247_signal_list_tsignals 
)
+
+ +

Find all signals of the component whose names match regex_name.

+

regex_name shall follow the ECMAScript grammar.
+ This function allocates signals. It has to be freed with ed247_signal_list_free().
+ If you know exact signal names, use ed247_get_signal() instead which is really faster and malloc-free.
+

+
Parameters
+ + + + +
[in]contextThe context identifier
[in]regex_nameThe regular expression for name matching. If null, assume '.*'.
[out]signalsThe list of the signals. If no value, set to null.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREThe stream list is empty
+
+
+
Note
The regular expressions are not implemented in gcc4.8.x (default linux), do not use complex requests.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_get_signal (ed247_context_t context,
const char * name,
ed247_signal_tsignal 
)
+
+ +

Get a signal of the component.

+
Parameters
+ + + + +
[in]contextThe context identifier
[in]nameThe signal name.
[out]signalThe signal identifier.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREThe stream list is empty
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__context__config.js b/docs/group__context__config.js new file mode 100644 index 00000000..7b00cc81 --- /dev/null +++ b/docs/group__context__config.js @@ -0,0 +1,11 @@ +var group__context__config = +[ + [ "ed247_get_channel_list", "group__context__config.html#ga14247ee166bf9675fdf1d4ddffa5554e", null ], + [ "ed247_find_channels", "group__context__config.html#ga49100975512ba6b64fbbb1f4edb16bc1", null ], + [ "ed247_get_channel", "group__context__config.html#gadc5c7fcf608f349367fea932ee1f1f10", null ], + [ "ed247_get_stream_list", "group__context__config.html#ga4b8344532b192ff5d6fe15789a710bd6", null ], + [ "ed247_find_streams", "group__context__config.html#ga360affab24abac696291952b8fd056f0", null ], + [ "ed247_get_stream", "group__context__config.html#gaadf394fba0bfd2d2aba18d6332cd8ad8", null ], + [ "ed247_find_signals", "group__context__config.html#gacc142fdd08ced5b83b199591ac807752", null ], + [ "ed247_get_signal", "group__context__config.html#gaa24483cc37e3e466de8bd635f0c4fb95", null ] +]; \ No newline at end of file diff --git a/docs/group__context__config_ga14247ee166bf9675fdf1d4ddffa5554e_icgraph.map b/docs/group__context__config_ga14247ee166bf9675fdf1d4ddffa5554e_icgraph.map new file mode 100644 index 00000000..fc79b490 --- /dev/null +++ b/docs/group__context__config_ga14247ee166bf9675fdf1d4ddffa5554e_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__context__config_ga14247ee166bf9675fdf1d4ddffa5554e_icgraph.md5 b/docs/group__context__config_ga14247ee166bf9675fdf1d4ddffa5554e_icgraph.md5 new file mode 100644 index 00000000..76f63f80 --- /dev/null +++ b/docs/group__context__config_ga14247ee166bf9675fdf1d4ddffa5554e_icgraph.md5 @@ -0,0 +1 @@ +a48057812a8e56103f0f0210b7808865 \ No newline at end of file diff --git a/docs/group__context__config_ga14247ee166bf9675fdf1d4ddffa5554e_icgraph.png b/docs/group__context__config_ga14247ee166bf9675fdf1d4ddffa5554e_icgraph.png new file mode 100644 index 00000000..5e70c746 Binary files /dev/null and b/docs/group__context__config_ga14247ee166bf9675fdf1d4ddffa5554e_icgraph.png differ diff --git a/docs/group__context__config_ga4b8344532b192ff5d6fe15789a710bd6_icgraph.map b/docs/group__context__config_ga4b8344532b192ff5d6fe15789a710bd6_icgraph.map new file mode 100644 index 00000000..e84412a5 --- /dev/null +++ b/docs/group__context__config_ga4b8344532b192ff5d6fe15789a710bd6_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__context__config_ga4b8344532b192ff5d6fe15789a710bd6_icgraph.md5 b/docs/group__context__config_ga4b8344532b192ff5d6fe15789a710bd6_icgraph.md5 new file mode 100644 index 00000000..d2db35a7 --- /dev/null +++ b/docs/group__context__config_ga4b8344532b192ff5d6fe15789a710bd6_icgraph.md5 @@ -0,0 +1 @@ +fb435592f55db6e144bca8d92aa2ba6f \ No newline at end of file diff --git a/docs/group__context__config_ga4b8344532b192ff5d6fe15789a710bd6_icgraph.png b/docs/group__context__config_ga4b8344532b192ff5d6fe15789a710bd6_icgraph.png new file mode 100644 index 00000000..61f65249 Binary files /dev/null and b/docs/group__context__config_ga4b8344532b192ff5d6fe15789a710bd6_icgraph.png differ diff --git a/docs/group__context__info.html b/docs/group__context__info.html new file mode 100644 index 00000000..54d8259e --- /dev/null +++ b/docs/group__context__info.html @@ -0,0 +1,150 @@ + + + + + + +ED247 Library: General information + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
General information
+
+
+

Detailed Description

+ + + + + + + + + + + + + + + + + + +

+Functions

+LIBED247_EXPORT const char * ed247_component_get_version (ed247_context_t context)
 
+LIBED247_EXPORT ed247_component_type_t ed247_component_get_type (ed247_context_t context)
 
+LIBED247_EXPORT const char * ed247_component_get_name (ed247_context_t context)
 
+LIBED247_EXPORT const char * ed247_component_get_comment (ed247_context_t context)
 
+LIBED247_EXPORT ed247_uid_t ed247_component_get_identifier (ed247_context_t context)
 
+LIBED247_EXPORT ed247_standard_t ed247_component_get_standard_revision (ed247_context_t context)
 
+LIBED247_EXPORT const char * ed247_file_producer_get_identifier (ed247_context_t context)
 
+LIBED247_EXPORT const char * ed247_file_producer_get_comment (ed247_context_t context)
 
+
+
+ + + + diff --git a/docs/group__context__init.html b/docs/group__context__init.html new file mode 100644 index 00000000..8496163c --- /dev/null +++ b/docs/group__context__init.html @@ -0,0 +1,352 @@ + + + + + + +ED247 Library: Initialization + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Initialization
+
+
+

Detailed Description

+ + + + + + + + + + + + + + + + + +

+Functions

LIBED247_EXPORT ed247_status_t ed247_load_file (const char *ecic_file_path, ed247_context_t *context)
 Loading function: the entry point of the library. More...
 
LIBED247_EXPORT ed247_status_t ed247_load_content (const char *ecic_file_content, ed247_context_t *context)
 Loading function: the entry point of the library. More...
 
LIBED247_EXPORT ed247_status_t ed247_unload (ed247_context_t context)
 Unload resources linked to the given context. More...
 
LIBED247_EXPORT ed247_status_t ed247_component_set_user_data (ed247_context_t context, void *user_data)
 Assign user data to the context. More...
 
LIBED247_EXPORT ed247_status_t ed247_component_get_user_data (ed247_context_t context, void **user_data)
 Retrieve user data pointer form the context. More...
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_load_file (const char * ecic_file_path,
ed247_context_tcontext 
)
+
+ +

Loading function: the entry point of the library.

+
Parameters
+ + + +
[in]ecic_file_pathThe path to the ECIC configuration file
[out]contextThe loaded context identifier
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREAn error occurred during the load phase (xml parsing or internal loading)
+
+
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_load_content (const char * ecic_file_content,
ed247_context_tcontext 
)
+
+ +

Loading function: the entry point of the library.

+
Parameters
+ + + +
[in]ecic_file_contentThe content of the ECIC configuration file
[out]contextThe loaded context identifier
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREAn error occurred during the load phase (xml parsing or internal loading)
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_unload (ed247_context_t context)
+
+ +

Unload resources linked to the given context.

+
Parameters
+ + +
[in]contextContext identifier
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_component_set_user_data (ed247_context_t context,
void * user_data 
)
+
+ +

Assign user data to the context.

+

When unloading the component, there is no memory free on this item. Free it yourself.

+
Parameters
+ + + +
[in]contextThe context identifier
[in]user_dataA pointer to user data
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_component_get_user_data (ed247_context_t context,
void ** user_data 
)
+
+ +

Retrieve user data pointer form the context.

+
Parameters
+ + + +
[in]contextThe context identifier
[out]user_dataA pointer to host pointer to user data
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__context__init.js b/docs/group__context__init.js new file mode 100644 index 00000000..f9876d05 --- /dev/null +++ b/docs/group__context__init.js @@ -0,0 +1,8 @@ +var group__context__init = +[ + [ "ed247_load_file", "group__context__init.html#gaf49ef33dd2d04f9fc5d15c3159ae3acc", null ], + [ "ed247_load_content", "group__context__init.html#ga3ec647f39bd8ed0c9965e926eda1a5a9", null ], + [ "ed247_unload", "group__context__init.html#ga50ae5f3165e2799b6744ab262e2041ce", null ], + [ "ed247_component_set_user_data", "group__context__init.html#ga13d40fbd8093b97d115aeaaeac242f12", null ], + [ "ed247_component_get_user_data", "group__context__init.html#ga87c3d5d4040777631fe85eba8c5c4956", null ] +]; \ No newline at end of file diff --git a/docs/group__context__init_gaf49ef33dd2d04f9fc5d15c3159ae3acc_icgraph.map b/docs/group__context__init_gaf49ef33dd2d04f9fc5d15c3159ae3acc_icgraph.map new file mode 100644 index 00000000..16ae97f6 --- /dev/null +++ b/docs/group__context__init_gaf49ef33dd2d04f9fc5d15c3159ae3acc_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__context__init_gaf49ef33dd2d04f9fc5d15c3159ae3acc_icgraph.md5 b/docs/group__context__init_gaf49ef33dd2d04f9fc5d15c3159ae3acc_icgraph.md5 new file mode 100644 index 00000000..044b581a --- /dev/null +++ b/docs/group__context__init_gaf49ef33dd2d04f9fc5d15c3159ae3acc_icgraph.md5 @@ -0,0 +1 @@ +f55bedca29c9fc0cbca59d31c76be9ca \ No newline at end of file diff --git a/docs/group__context__init_gaf49ef33dd2d04f9fc5d15c3159ae3acc_icgraph.png b/docs/group__context__init_gaf49ef33dd2d04f9fc5d15c3159ae3acc_icgraph.png new file mode 100644 index 00000000..94066cb3 Binary files /dev/null and b/docs/group__context__init_gaf49ef33dd2d04f9fc5d15c3159ae3acc_icgraph.png differ diff --git a/docs/group__context__io.html b/docs/group__context__io.html new file mode 100644 index 00000000..30c44ad1 --- /dev/null +++ b/docs/group__context__io.html @@ -0,0 +1,276 @@ + + + + + + +ED247 Library: Receive and send + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Receive and send
+
+
+

Detailed Description

+

Receive and send data from/o network. To read/write data, see streams methods.

+ + + + + + + + + + + +

+Functions

LIBED247_EXPORT ed247_status_t ed247_wait_frame (ed247_context_t context, ed247_stream_list_t *streams, int32_t timeout_us)
 Blocks until a frame is received and processed, and at least a stream has available data. More...
 
LIBED247_EXPORT ed247_status_t ed247_wait_during (ed247_context_t context, ed247_stream_list_t *streams, int32_t duration_us)
 Blocks until duration is elapsed. Processing all received frames. More...
 
LIBED247_EXPORT ed247_status_t ed247_send_pushed_samples (ed247_context_t context)
 Send the samples that were written and pushed. More...
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_wait_frame (ed247_context_t context,
ed247_stream_list_tstreams,
int32_t timeout_us 
)
+
+ +

Blocks until a frame is received and processed, and at least a stream has available data.

+

If several frames has been received since last wait_frame/wait_during, all of them are processed.
+ streams, if not NULL, will be set to the list of streams with incomming data available. its lifespan is the same as the context, but you can safely call ed247_stream_list_free().

+
Parameters
+ + + + +
[in]contextContext identifier
[out]streamsList of streams that received samples, can be NULL
[in]timeout_usTimeout value, in microseconds
+
+
+
Return values
+ + + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
ED247_STATUS_TIMEOUT
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_wait_during (ed247_context_t context,
ed247_stream_list_tstreams,
int32_t duration_us 
)
+
+ +

Blocks until duration is elapsed. Processing all received frames.

+

streams, if not NULL, will be set to the list of streams with incomming data available. its lifespan is the same as the context, but you can safely call ed247_stream_list_free().

+
Parameters
+ + + + +
[in]contextContext identifier
[out]streamsList of streams that received samples, can be NULL
[in]duration_usDuration value, in microseconds
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_send_pushed_samples (ed247_context_t context)
+
+ +

Send the samples that were written and pushed.

+

See also :

+

This function clear send stacks.

+
Parameters
+ + +
[in]contextContext identifier
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__context__io.js b/docs/group__context__io.js new file mode 100644 index 00000000..cd57f130 --- /dev/null +++ b/docs/group__context__io.js @@ -0,0 +1,6 @@ +var group__context__io = +[ + [ "ed247_wait_frame", "group__context__io.html#gaa5d1e1629995c0ccb1931c393ef608a1", null ], + [ "ed247_wait_during", "group__context__io.html#ga0b1dd58e03070d62b0ca74e2aee21d3c", null ], + [ "ed247_send_pushed_samples", "group__context__io.html#ga39df8ce9b734a64cecf73dbbba6be911", null ] +]; \ No newline at end of file diff --git a/docs/group__deprecated.html b/docs/group__deprecated.html new file mode 100644 index 00000000..cde74b43 --- /dev/null +++ b/docs/group__deprecated.html @@ -0,0 +1,179 @@ + + + + + + +ED247 Library: Deprecated + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Deprecated
+
+
+

Detailed Description

+

Do not use.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

+DEPRECATED LIBED247_EXPORT const char * libed247_errors ()
 Deprecated. Return NULL.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_load (const char *ecic_file_path, void *unused, ed247_context_t *context)
 Deprecated: use ed247_load_file.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_component_get_channels (ed247_context_t context, ed247_channel_list_t *channels)
 Deprecated: use ed247_get_channel_list.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_component_get_streams (ed247_context_t context, ed247_stream_list_t *streams)
 Deprecated: use ed247_get_stream_list.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_channel_get_streams (ed247_channel_t channel, ed247_stream_list_t *streams)
 Deprecated: use ed247_channel_get_stream_list.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_find_channel_streams (ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams)
 Deprecated: use ed247_channel_find_streams.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_get_channel_stream (ed247_channel_t channel, const char *name, ed247_stream_t *stream)
 Deprecated: use ed247_channel_get_stream.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_stream_contains_signals (ed247_stream_t stream, uint8_t *yesno)
 Deprecated: use ed247_stream_has_signals.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_stream_get_signals (ed247_stream_t stream, ed247_signal_list_t *signals)
 Deprecated: use ed247_stream_get_signal_list.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_find_stream_signals (ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals)
 Deprecated: use ed247_stream_find_signals.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_get_stream_signal (ed247_stream_t stream, const char *name, ed247_signal_t *signal)
 Deprecated: use ed247_stream_get_signal.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_free (void *data)
 Deprecated: use ed247_signal_free_sample or ed247_stream_free_sample.
 
+DEPRECATED LIBED247_EXPORT ed247_status_t ed247_get_runtime_metrics (ed247_context_t context, const libed247_runtime_metrics_t **metrics)
 Deprecated: Not working.
 
+
+
+ + + + diff --git a/docs/group__deprecated.js b/docs/group__deprecated.js new file mode 100644 index 00000000..225760f5 --- /dev/null +++ b/docs/group__deprecated.js @@ -0,0 +1,16 @@ +var group__deprecated = +[ + [ "libed247_errors", "group__deprecated.html#gaaaf52ff2cce721e9726d04681406d050", null ], + [ "ed247_load", "group__deprecated.html#ga0c9f1fa0767723acba051e8237f64709", null ], + [ "ed247_component_get_channels", "group__deprecated.html#gab1ac5553b13489a1795abef93cab7033", null ], + [ "ed247_component_get_streams", "group__deprecated.html#gafc2105864f051cb463539a141336a443", null ], + [ "ed247_channel_get_streams", "group__deprecated.html#ga7df7b0ae643659a6f56ffd1f1a285d21", null ], + [ "ed247_find_channel_streams", "group__deprecated.html#ga7d3ce1ec5a2d581cf3c1bb9707e2bcbf", null ], + [ "ed247_get_channel_stream", "group__deprecated.html#ga174f0b51b9fd7b0278055e724ca74598", null ], + [ "ed247_stream_contains_signals", "group__deprecated.html#ga035c4e90e4eae3f2d12bbbe4b17b4244", null ], + [ "ed247_stream_get_signals", "group__deprecated.html#gafe1c8f48d14524b48b2acab8092ff029", null ], + [ "ed247_find_stream_signals", "group__deprecated.html#ga7d41c5c077409d33eb3173fc2b059fac", null ], + [ "ed247_get_stream_signal", "group__deprecated.html#gad40542910a61fd371a2459beb49c654c", null ], + [ "ed247_free", "group__deprecated.html#ga974811afaa83fceda9a08773c2bfd74c", null ], + [ "ed247_get_runtime_metrics", "group__deprecated.html#ga1e61493868917933855a574323fdfed5", null ] +]; \ No newline at end of file diff --git a/docs/group__global.html b/docs/group__global.html new file mode 100644 index 00000000..056cab59 --- /dev/null +++ b/docs/group__global.html @@ -0,0 +1,356 @@ + + + + + + +ED247 Library: Global resources + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Global resources
+
+
+

Detailed Description

+ + + + + +

+Data Structures

struct  ed247_timestamp_t
 Timestamp structure, seconds from EPOCH (January 1st 1970) and nanoseconds offset with reference to previous field. More...
 
+ + + + +

+Typedefs

+typedef uint16_t ed247_uid_t
 Unique identifier type.
 
+ + + + + + + + + + + + + +

+Enumerations

enum  ed247_status_t {
+  ED247_STATUS_SUCCESS = 0, +
+  ED247_STATUS_FAILURE, +
+  ED247_STATUS_TIMEOUT, +
+  ED247_STATUS_NODATA +
+ }
 Status codes.
 
enum  ed247_log_level_t {
+  ED247_LOG_LEVEL_MIN = 0, +
+  ED247_LOG_LEVEL_ERROR = ED247_LOG_LEVEL_MIN, +
+  ED247_LOG_LEVEL_WARNING = 1, +
+  ED247_LOG_LEVEL_DEFAULT = ED247_LOG_LEVEL_WARNING, +
+  ED247_LOG_LEVEL_INFO = 2, +
+  ED247_LOG_LEVEL_DEBUG = 3, +
+  ED247_LOG_LEVEL_CRAZY = 99, +
+  ED247_LOG_LEVEL_MAX = ED247_LOG_LEVEL_CRAZY, +
+  ED247_LOG_LEVEL_UNSET = 100 +
+ }
 Logging level.
 
enum  ed247_yesno_t {
+  ED247_YESNO_NO = 0, +
+  ED247_YESNO_YES, +
+  ED247_YESNO__INVALID +
+ }
 Yes / No.
 
enum  ed247_standard_t {
+  ED247_STANDARD__INVALID, +
+  ED247_STANDARD_ED247, +
+  ED247_STANDARD_ED247A, +
+  ED247_STANDARD__COUNT +
+ }
 ED247 Standard revisions.
 
+ + + + + + + + + + + + + + + + +

+Functions

LIBED247_EXPORT const char * ed247_get_implementation_name ()
 The name of the current implementation. More...
 
LIBED247_EXPORT const char * ed247_get_implementation_version ()
 The version of the current implementation. More...
 
LIBED247_EXPORT ed247_status_t ed247_set_log (ed247_log_level_t log_level, const char *log_filepath)
 Setup the logging parameters. More...
 
LIBED247_EXPORT ed247_status_t ed247_set_log_level (ed247_log_level_t log_level)
 Setup the logging level (see ed247_log_level_t) More...
 
LIBED247_EXPORT ed247_status_t ed247_get_log_level (ed247_log_level_t *log_level)
 Get the logging level (see ed247_log_level_t) More...
 
+

Function Documentation

+ +
+
+ + + + + + + +
LIBED247_EXPORT const char* ed247_get_implementation_name ()
+
+ +

The name of the current implementation.

+
Returns
Current implementation name
+ +
+
+ +
+
+ + + + + + + +
LIBED247_EXPORT const char* ed247_get_implementation_version ()
+
+ +

The version of the current implementation.

+
Returns
Current implementation version
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_set_log (ed247_log_level_t log_level,
const char * log_filepath 
)
+
+ +

Setup the logging parameters.

+

Environment variables have the priority: This function will be ignored if they are set.

+
Parameters
+ + + +
[in]log_levelLogging level
[in]log_filepathLog file path
+
+
+
Return values
+ + +
ED247_STATUS_SUCCESS
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_set_log_level (ed247_log_level_t log_level)
+
+ +

Setup the logging level (see ed247_log_level_t)

+

Environment variables have the priority: This function will be ignored if they are set.

+
Parameters
+ + +
[in]log_levelLogging level
+
+
+
Return values
+ + +
ED247_STATUS_SUCCESS
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_get_log_level (ed247_log_level_tlog_level)
+
+ +

Get the logging level (see ed247_log_level_t)

+
Parameters
+ + +
[out]log_levelLogging level
+
+
+
Return values
+ + +
ED247_STATUS_SUCCESS
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__global.js b/docs/group__global.js new file mode 100644 index 00000000..a9580c92 --- /dev/null +++ b/docs/group__global.js @@ -0,0 +1,17 @@ +var group__global = +[ + [ "ed247_timestamp_t", "structed247__timestamp__t.html", [ + [ "epoch_s", "structed247__timestamp__t.html#aa8b7a95dd8c8520aa3f574005a8fabe3", null ], + [ "offset_ns", "structed247__timestamp__t.html#a9e4cccbc67d3d38659b9438da1ea37f0", null ] + ] ], + [ "ed247_uid_t", "group__global.html#ga8ece0a7462707c97f526dbccc00be4e5", null ], + [ "ed247_status_t", "group__global.html#ga59cffc81f5f116a6a1336e5ff16c9415", null ], + [ "ed247_log_level_t", "group__global.html#ga2cb7bb978e600027d9dc43231031261c", null ], + [ "ed247_yesno_t", "group__global.html#ga41f057faf96cb9ed94bbdba00a3684a9", null ], + [ "ed247_standard_t", "group__global.html#ga5afd784da0ce94a3197e279c250e7716", null ], + [ "ed247_get_implementation_name", "group__global.html#gadb00e0e45ad86bd56d98eb527b6dedde", null ], + [ "ed247_get_implementation_version", "group__global.html#ga797161571a767e5664e7e0730ef68fcb", null ], + [ "ed247_set_log", "group__global.html#gaa5cc84b1824ccf12fe6673f3dbac280e", null ], + [ "ed247_set_log_level", "group__global.html#gaa529c8684916c04de0f7cbef6320362f", null ], + [ "ed247_get_log_level", "group__global.html#ga1ad7043056fc48bc202d409638c344b9", null ] +]; \ No newline at end of file diff --git a/docs/group__signal.html b/docs/group__signal.html new file mode 100644 index 00000000..adc8456f --- /dev/null +++ b/docs/group__signal.html @@ -0,0 +1,521 @@ + + + + + + +ED247 Library: Signal + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Signal
+
+
+

Detailed Description

+

Note: To read/write signals, see stream assistant

+ + + + +

+Modules

 Signal list
 
+ + + + +

+Typedefs

+typedef struct ed247_internal_signal_ted247_signal_t
 Signal identifier.
 
+ + + + + + + + + + +

+Enumerations

enum  ed247_signal_type_t {
+  ED247_SIGNAL_TYPE__INVALID, +
+  ED247_SIGNAL_TYPE_ANALOG = ED247_STREAM_TYPE_ANALOG, +
+  ED247_SIGNAL_TYPE_DISCRETE = ED247_STREAM_TYPE_DISCRETE, +
+  ED247_SIGNAL_TYPE_NAD = ED247_STREAM_TYPE_NAD, +
+  ED247_SIGNAL_TYPE_VNAD = ED247_STREAM_TYPE_VNAD +
+ }
 Signal types.
 
enum  ed247_nad_type_t {
+  ED247_NAD_TYPE__INVALID, +
+  ED247_NAD_TYPE_INT8, +
+  ED247_NAD_TYPE_INT16, +
+  ED247_NAD_TYPE_INT32, +
+  ED247_NAD_TYPE_INT64, +
+  ED247_NAD_TYPE_UINT8, +
+  ED247_NAD_TYPE_UINT16, +
+  ED247_NAD_TYPE_UINT32, +
+  ED247_NAD_TYPE_UINT64, +
+  ED247_NAD_TYPE_FLOAT32, +
+  ED247_NAD_TYPE_FLOAT64, +
+  ED247_NAD_TYPE__COUNT +
+ }
 NAD type.
 
enum  ed247_discrete_t {
+  ED247_DISCRETE_FALSE = 0x00, +
+  ED247_DISCRETE_TRUE = 0xFF +
+ }
 Discrete values to be used.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

LIBED247_EXPORT uint32_t ed247_nad_type_size (ed247_nad_type_t nad_type)
 Size of a single element of ed247_nad_type_t. More...
 
LIBED247_EXPORT ed247_status_t ed247_signal_set_user_data (ed247_signal_t signal, void *user_data)
 Assign user data to the signal. More...
 
LIBED247_EXPORT ed247_status_t ed247_signal_get_user_data (ed247_signal_t signal, void **user_data)
 Retrieve user data assigned to the signal. More...
 
LIBED247_EXPORT ed247_status_t ed247_signal_get_stream (ed247_signal_t signal, ed247_stream_t *stream)
 Get the stream that contain this signal. More...
 
LIBED247_EXPORT ed247_status_t ed247_signal_get_assistant (ed247_signal_t signal, ed247_stream_assistant_t *assistant)
 Get the stream assistant associated with this signal. More...
 
LIBED247_EXPORT ed247_status_t ed247_signal_allocate_sample (ed247_signal_t signal, void **sample_data, uint32_t *sample_size)
 Allocate a sample to store one signal. More...
 
+LIBED247_EXPORT const char * ed247_signal_get_name (ed247_signal_t signal)
 
+LIBED247_EXPORT const char * ed247_signal_get_comment (ed247_signal_t signal)
 
+LIBED247_EXPORT const char * ed247_signal_get_icd (ed247_signal_t signal)
 
+LIBED247_EXPORT ed247_signal_type_t ed247_signal_get_type (ed247_signal_t signal)
 
+LIBED247_EXPORT uint32_t ed247_signal_get_byte_offset (ed247_signal_t signal)
 Meaningless for VNAD.
 
+LIBED247_EXPORT const char * ed247_signal_analogue_get_electrical_unit (ed247_signal_t analogue_signal)
 
+LIBED247_EXPORT ed247_nad_type_t ed247_signal_nad_get_type (ed247_signal_t nad_signal)
 For NAD and VNAD.
 
+LIBED247_EXPORT const char * ed247_signal_nad_get_unit (ed247_signal_t nad_signal)
 For NAD and VNAD.
 
+LIBED247_EXPORT uint32_t ed247_signal_nad_get_dimensions_count (ed247_signal_t nad_signal)
 
+LIBED247_EXPORT uint32_t ed247_signal_nad_get_dimension (ed247_signal_t nad_signal, uint32_t dimention_id)
 
+LIBED247_EXPORT uint32_t ed247_signal_vnad_get_position (ed247_signal_t vnad_signal)
 
+LIBED247_EXPORT uint32_t ed247_signal_vnad_get_max_number (ed247_signal_t vnad_signal)
 
+

Function Documentation

+ +
+
+ + + + + + + + +
LIBED247_EXPORT uint32_t ed247_nad_type_size (ed247_nad_type_t nad_type)
+
+ +

Size of a single element of ed247_nad_type_t.

+
Parameters
+ + +
[in]nad_typeThe NAD type
+
+
+
Returns
The size of the NAD type element (sizeof equivalent)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_signal_set_user_data (ed247_signal_t signal,
void * user_data 
)
+
+ +

Assign user data to the signal.

+

Memory has to be free by the user.

+
Parameters
+ + + +
[in]signalThe signal identifier
[in]user_dataPointer to user data
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_signal_get_user_data (ed247_signal_t signal,
void ** user_data 
)
+
+ +

Retrieve user data assigned to the signal.

+
Parameters
+ + + +
[in]signalThe signal identifier
[out]user_dataPointer to host pointer to user data
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_signal_get_stream (ed247_signal_t signal,
ed247_stream_tstream 
)
+
+ +

Get the stream that contain this signal.

+
Parameters
+ + + +
[in]signalThe signal identifier
[out]streamThe stream identifier
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_signal_get_assistant (ed247_signal_t signal,
ed247_stream_assistant_tassistant 
)
+
+ +

Get the stream assistant associated with this signal.

+

Calling this method is the same as calling ed247_signal_get_stream() then ed247_stream_get_assistant()

+
Parameters
+ + + +
[in]signal
[out]assistant
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +

+Here is the call graph for this function:
+
+
+ + + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_signal_allocate_sample (ed247_signal_t signal,
void ** sample_data,
uint32_t * sample_size 
)
+
+ +

Allocate a sample to store one signal.

+

For VNAD, the allcated size is the max signal size.
+ Memory has to be released with ed247_signal_free_sample().
+

+
Parameters
+ + + + +
[in]signalSignal identifier
[out]sample_dataPointer to the allocated memory
[out]sample_sizeSize of the memory allocated for the sample
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__signal.js b/docs/group__signal.js new file mode 100644 index 00000000..d0791982 --- /dev/null +++ b/docs/group__signal.js @@ -0,0 +1,17 @@ +var group__signal = +[ + [ "Signal list", "group__signal__list.html", "group__signal__list" ], + [ "ed247_signal_t", "group__signal.html#ga1392cbe948b566fbcc587fa1610c1720", null ], + [ "ed247_signal_type_t", "group__signal.html#ga60d87733e39697d8becc32198a1cf554", null ], + [ "ed247_nad_type_t", "group__signal.html#ga7aed669e25d6dfc317c62918c77abbe9", null ], + [ "ed247_discrete_t", "group__signal.html#gac64036263086ab89d8bfd184a4188ca3", null ], + [ "ed247_nad_type_size", "group__signal.html#ga1ff979d1c1bca3c80f627caef4e1123d", null ], + [ "ed247_signal_set_user_data", "group__signal.html#ga2cb6e86eb5d42a53f6cd2272f15ad560", null ], + [ "ed247_signal_get_user_data", "group__signal.html#ga2ad35e23e3984257f5894862354c1b66", null ], + [ "ed247_signal_get_stream", "group__signal.html#gaa940f54199d73bb0c29d440966b88997", null ], + [ "ed247_signal_get_assistant", "group__signal.html#ga3f58631256fb5b21db5738d0ea80e79e", null ], + [ "ed247_signal_allocate_sample", "group__signal.html#ga8a5273ed2d5366cbc6d41acdb4dd0382", null ], + [ "ed247_signal_get_byte_offset", "group__signal.html#ga344d4336f9a287fad81fa7110cdcaaf4", null ], + [ "ed247_signal_nad_get_type", "group__signal.html#ga3f471222fe82e52dc2f66fcccc68be07", null ], + [ "ed247_signal_nad_get_unit", "group__signal.html#gafaac46580e6a4dd3f21940b52ce941e0", null ] +]; \ No newline at end of file diff --git a/docs/group__signal__list.html b/docs/group__signal__list.html new file mode 100644 index 00000000..7e7a58ee --- /dev/null +++ b/docs/group__signal__list.html @@ -0,0 +1,260 @@ + + + + + + +ED247 Library: Signal list + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Signal list
+
+
+

Detailed Description

+ + + + + +

+Typedefs

+typedef struct ed247_internal_signal_list_ted247_signal_list_t
 Signal list identifier.
 
+ + + + + + + + + + +

+Functions

LIBED247_EXPORT ed247_status_t ed247_signal_list_size (ed247_signal_list_t signals, uint32_t *size)
 Get the size of the list. More...
 
LIBED247_EXPORT ed247_status_t ed247_signal_list_next (ed247_signal_list_t signals, ed247_signal_t *signal)
 Iterate over a signal identifier list. More...
 
LIBED247_EXPORT ed247_status_t ed247_signal_list_free (ed247_signal_list_t signals)
 Free signal list. More...
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_signal_list_size (ed247_signal_list_t signals,
uint32_t * size 
)
+
+ +

Get the size of the list.

+
Parameters
+ + + +
[in]signalsThe signal list
[out]sizeThe size of the list
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_signal_list_next (ed247_signal_list_t signals,
ed247_signal_tsignal 
)
+
+ +

Iterate over a signal identifier list.

+

A null value is set when the end of the list is reached. Return value is ED247_STATUS_SUCCESS. The next call will return the pointer to the first item of the list.

+
Parameters
+ + + +
[in,out]signalsThe signal list
[out]signalA pointer to the current item in the list.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESSOperation completed successfully even if end of list may be reached
ED247_STATUS_FAILUREInvalid parameter provided or internal error
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_signal_list_free (ed247_signal_list_t signals)
+
+ +

Free signal list.

+
Parameters
+ + +
[in]signalsThe signal list
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__signal__list.js b/docs/group__signal__list.js new file mode 100644 index 00000000..9113b665 --- /dev/null +++ b/docs/group__signal__list.js @@ -0,0 +1,7 @@ +var group__signal__list = +[ + [ "ed247_signal_list_t", "group__signal__list.html#ga5fdecea140a70c3f56c50d26b9572fa3", null ], + [ "ed247_signal_list_size", "group__signal__list.html#ga7a8d727d5a33bfc7e2d076076e1ea79a", null ], + [ "ed247_signal_list_next", "group__signal__list.html#gaf815bc3fe26275404b9988bde67faf59", null ], + [ "ed247_signal_list_free", "group__signal__list.html#ga3249893a97ef7ea717d8d4b12df2249c", null ] +]; \ No newline at end of file diff --git a/docs/group__signal_ga3f58631256fb5b21db5738d0ea80e79e_cgraph.map b/docs/group__signal_ga3f58631256fb5b21db5738d0ea80e79e_cgraph.map new file mode 100644 index 00000000..addade06 --- /dev/null +++ b/docs/group__signal_ga3f58631256fb5b21db5738d0ea80e79e_cgraph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/group__signal_ga3f58631256fb5b21db5738d0ea80e79e_cgraph.md5 b/docs/group__signal_ga3f58631256fb5b21db5738d0ea80e79e_cgraph.md5 new file mode 100644 index 00000000..a3e53570 --- /dev/null +++ b/docs/group__signal_ga3f58631256fb5b21db5738d0ea80e79e_cgraph.md5 @@ -0,0 +1 @@ +bb61b894d3eeccd02e0c677959ccdb92 \ No newline at end of file diff --git a/docs/group__signal_ga3f58631256fb5b21db5738d0ea80e79e_cgraph.png b/docs/group__signal_ga3f58631256fb5b21db5738d0ea80e79e_cgraph.png new file mode 100644 index 00000000..a8fe2b89 Binary files /dev/null and b/docs/group__signal_ga3f58631256fb5b21db5738d0ea80e79e_cgraph.png differ diff --git a/docs/group__signal_gaa940f54199d73bb0c29d440966b88997_icgraph.map b/docs/group__signal_gaa940f54199d73bb0c29d440966b88997_icgraph.map new file mode 100644 index 00000000..90770823 --- /dev/null +++ b/docs/group__signal_gaa940f54199d73bb0c29d440966b88997_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__signal_gaa940f54199d73bb0c29d440966b88997_icgraph.md5 b/docs/group__signal_gaa940f54199d73bb0c29d440966b88997_icgraph.md5 new file mode 100644 index 00000000..6c7065ad --- /dev/null +++ b/docs/group__signal_gaa940f54199d73bb0c29d440966b88997_icgraph.md5 @@ -0,0 +1 @@ +e1f875a2a9e437b8234e2434cc5329e0 \ No newline at end of file diff --git a/docs/group__signal_gaa940f54199d73bb0c29d440966b88997_icgraph.png b/docs/group__signal_gaa940f54199d73bb0c29d440966b88997_icgraph.png new file mode 100644 index 00000000..38f05af5 Binary files /dev/null and b/docs/group__signal_gaa940f54199d73bb0c29d440966b88997_icgraph.png differ diff --git a/docs/group__stream.html b/docs/group__stream.html new file mode 100644 index 00000000..52f549a6 --- /dev/null +++ b/docs/group__stream.html @@ -0,0 +1,605 @@ + + + + + + +ED247 Library: Stream + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+

Detailed Description

+ + + + + + +

+Modules

 Read and Write
 
 Stream list
 
+ + + + +

+Data Structures

struct  ed247_sample_details_s
 Sample Details. More...
 
+ + + + + + + +

+Typedefs

+typedef struct ed247_internal_stream_ted247_stream_t
 Stream identifier.
 
+typedef struct ed247_sample_details_s ed247_sample_details_t
 Sample Details.
 
+ + + + + + + +

+Enumerations

enum  ed247_stream_type_t {
+  ED247_STREAM_TYPE__INVALID, +
+  ED247_STREAM_TYPE_A664, +
+  ED247_STREAM_TYPE_A429, +
+  ED247_STREAM_TYPE_A825, +
+  ED247_STREAM_TYPE_M1553, +
+  ED247_STREAM_TYPE_SERIAL, +
+  ED247_STREAM_TYPE_AUDIO, +
+  ED247_STREAM_TYPE_VIDEO, +
+  ED247_STREAM_TYPE_ETHERNET, +
+  ED247_STREAM_TYPE_ANALOG, +
+  ED247_STREAM_TYPE_DISCRETE, +
+  ED247_STREAM_TYPE_NAD, +
+  ED247_STREAM_TYPE_VNAD, +
+  ED247_STREAM_TYPE__COUNT +
+ }
 Stream types.
 
enum  ed247_direction_t {
+  ED247_DIRECTION__INVALID = 0, +
+  ED247_DIRECTION_IN = 0b01, +
+  ED247_DIRECTION_OUT = 0b10, +
+  ED247_DIRECTION_INOUT = ED247_DIRECTION_IN | ED247_DIRECTION_OUT +
+ }
 Stream direction.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

LIBED247_EXPORT ed247_status_t ed247_stream_has_signals (ed247_stream_t stream, uint8_t *yesno)
 Check if the stream is a signal based one (DISCRETE, ANALOG, NAD or VNAD) More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_get_signal_list (ed247_stream_t stream, ed247_signal_list_t *signals)
 Return all signals of a stream. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_find_signals (ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals)
 Find all signals of the channel whose names match regex_name. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_get_signal (ed247_stream_t stream, const char *name, ed247_signal_t *signal)
 Get a signal of the stream. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_get_channel (ed247_stream_t stream, ed247_channel_t *channel)
 Get the channel that contain this stream. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_set_user_data (ed247_stream_t stream, void *user_data)
 Assign user data to the stream. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_get_user_data (ed247_stream_t stream, void **user_data)
 Retrieve user data assigned to the stream. More...
 
+LIBED247_EXPORT const char * ed247_stream_get_name (ed247_stream_t stream)
 
+LIBED247_EXPORT ed247_direction_t ed247_stream_get_direction (ed247_stream_t stream)
 
+LIBED247_EXPORT ed247_stream_type_t ed247_stream_get_type (ed247_stream_t stream)
 
+LIBED247_EXPORT const char * ed247_stream_get_comment (ed247_stream_t stream)
 
+LIBED247_EXPORT const char * ed247_stream_get_icd (ed247_stream_t stream)
 
+LIBED247_EXPORT ed247_uid_t ed247_stream_get_uid (ed247_stream_t stream)
 
+LIBED247_EXPORT uint32_t ed247_stream_get_sample_max_number (ed247_stream_t stream)
 
+LIBED247_EXPORT uint32_t ed247_stream_get_sample_max_size_bytes (ed247_stream_t stream)
 
+LIBED247_EXPORT uint32_t ed247_stream_get_sampling_period_us (ed247_stream_t stream)
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_has_signals (ed247_stream_t stream,
uint8_t * yesno 
)
+
+ +

Check if the stream is a signal based one (DISCRETE, ANALOG, NAD or VNAD)

+
Parameters
+ + + +
[in]streamStream identifier
[out]yesnoResult of the check, true for yes and false for no
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_get_signal_list (ed247_stream_t stream,
ed247_signal_list_tsignals 
)
+
+ +

Return all signals of a stream.

+

The lifespan of returned signals is the same as the context, but you can safely call ed247_signal_list_free().

Parameters
+ + + +
[in]streamThe stream identifier
[out]signalsThe list of the signals. If no value, set to null.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREThe stream list is empty
+
+
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_find_signals (ed247_stream_t stream,
const char * regex_name,
ed247_signal_list_tsignals 
)
+
+ +

Find all signals of the channel whose names match regex_name.

+

regex_name shall follow the ECMAScript grammar.
+ This function allocates signals. It has to be freed with ed247_signal_list_free().
+ If you know exact signal names, use ed247_get_signal() instead which is really faster and malloc-free.
+ If you want all stream signals, use ed247_stream_get_signal_list() instead which is really faster and malloc-free.
+

+
Parameters
+ + + + +
[in]streamThe stream identifier
[in]regex_nameThe regular expression for name matching. If null, assume '.*'.
[out]signalsThe list of the signals. If no value, set to null.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREThe stream list is empty
+
+
+
Note
The regular expressions are not implemented in gcc4.8.x (default linux), do not use complex requests.
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_get_signal (ed247_stream_t stream,
const char * name,
ed247_signal_tsignal 
)
+
+ +

Get a signal of the stream.

+
Parameters
+ + + + +
[in]streamThe stream identifier
[in]nameThe stream name.
[out]signalThe signal identifier.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREThe stream list is empty
+
+
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_get_channel (ed247_stream_t stream,
ed247_channel_tchannel 
)
+
+ +

Get the channel that contain this stream.

+
Parameters
+ + + +
[in]streamThe stream identifier
[out]channelThe channel identifier
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_set_user_data (ed247_stream_t stream,
void * user_data 
)
+
+ +

Assign user data to the stream.

+

Memory has to be free by the user.

+
Parameters
+ + + +
[in]streamThe stream identifier
[in]user_dataPointer to user data
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_get_user_data (ed247_stream_t stream,
void ** user_data 
)
+
+ +

Retrieve user data assigned to the stream.

+
Parameters
+ + + +
[in]streamThe stream identifier
[out]user_dataPointer to host pointer to user data
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__stream.js b/docs/group__stream.js new file mode 100644 index 00000000..e3ef2c02 --- /dev/null +++ b/docs/group__stream.js @@ -0,0 +1,21 @@ +var group__stream = +[ + [ "Read and Write", "group__stream__io.html", "group__stream__io" ], + [ "Stream list", "group__stream__list.html", "group__stream__list" ], + [ "ed247_sample_details_s", "structed247__sample__details__s.html", [ + [ "component_identifier", "structed247__sample__details__s.html#a624b93b818532685b2de442853c9ffc7", null ], + [ "sequence_number", "structed247__sample__details__s.html#af59da40c8f0ea63d34e833debfd5c494", null ], + [ "transport_timestamp", "structed247__sample__details__s.html#acdd4ad89db183eb4f28585fa1c40530e", null ] + ] ], + [ "ed247_stream_t", "group__stream.html#gaad915c37d67718b5bef771731f64f2f5", null ], + [ "ed247_sample_details_t", "group__stream.html#gac3c8842807b4cfd8ec58ab5d3221eb0d", null ], + [ "ed247_stream_type_t", "group__stream.html#gad6c32a32b943c5785e7675e9688b51d8", null ], + [ "ed247_direction_t", "group__stream.html#gafeddea8945eb68a6591f8bfd4dea300b", null ], + [ "ed247_stream_has_signals", "group__stream.html#gaf3e09d9f1fbf1436e2361a3087eef708", null ], + [ "ed247_stream_get_signal_list", "group__stream.html#gaa668871ce72a8f707a2513a98fd9b6fb", null ], + [ "ed247_stream_find_signals", "group__stream.html#gaa7b437eeeee13b7313536572962aef4e", null ], + [ "ed247_stream_get_signal", "group__stream.html#gaf6068982b942ae3009d30a4838b8d7dc", null ], + [ "ed247_stream_get_channel", "group__stream.html#ga7adbfee97395fcb2a991d261957e3d05", null ], + [ "ed247_stream_set_user_data", "group__stream.html#ga1c053d9022afac47a72f2d231f6768ab", null ], + [ "ed247_stream_get_user_data", "group__stream.html#gaddaac2ab4356c5da6a01fc42c8039695", null ] +]; \ No newline at end of file diff --git a/docs/group__stream__assistant.html b/docs/group__stream__assistant.html new file mode 100644 index 00000000..b1f45ab5 --- /dev/null +++ b/docs/group__stream__assistant.html @@ -0,0 +1,526 @@ + + + + + + +ED247 Library: Stream Assistant (read/write signals) + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Stream Assistant (read/write signals)
+
+
+

Detailed Description

+

Helper methods to read and write signals within a stream

+ + + + + +

+Typedefs

+typedef struct ed247_internal_stream_assistant_ted247_stream_assistant_t
 An assistant to help building stream samples.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

LIBED247_EXPORT ed247_status_t ed247_stream_assistant_get_stream (ed247_stream_assistant_t assistant, ed247_stream_t *stream)
 Get the stream associated to the assistant. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_write_signal (ed247_stream_assistant_t assistant, ed247_signal_t signal, const void *signal_sample_data, uint32_t signal_sample_size)
 Write a signal into the assistant sample buffer. More...
 
+LIBED247_EXPORT bool ed247_stream_assistant_was_written (ed247_stream_assistant_t assistant)
 Return true if a signal has been written since last ed247_stream_assistant_push_sample().
 
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_read_signal (ed247_stream_assistant_t assistant, ed247_signal_t signal, const void **signal_sample_data, uint32_t *signal_sample_size)
 Read a signal sample from the assistant sample buffer. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_push_sample (ed247_stream_assistant_t assistant, const ed247_timestamp_t *data_timestamp, bool *full)
 Push the assistant sample buffer on the stream stack. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_assistants_written_push_samples (ed247_context_t context, const ed247_timestamp_t *data_timestamp)
 Push all stream assistants whose signals have been written since last push_sample() More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_pop_sample (ed247_stream_assistant_t assistant, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty)
 Pop a sample from stream samples stack. More...
 
LIBED247_EXPORT ed247_status_t stream_assistants_pop_samples (ed247_context_t context)
 Pop all samples of all input stream assistants. aka 'update all signals'. More...
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_get_stream (ed247_stream_assistant_t assistant,
ed247_stream_tstream 
)
+
+ +

Get the stream associated to the assistant.

+
Parameters
+ + + +
[in]assistantAssistant identifier
[out]streamStream identifier pointer
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_write_signal (ed247_stream_assistant_t assistant,
ed247_signal_t signal,
const void * signal_sample_data,
uint32_t signal_sample_size 
)
+
+ +

Write a signal into the assistant sample buffer.

+

This function manage endianness (analogue, NAD, VNAD).
+

+

The signal_sample_size shall be set to:

    +
  • 1 for DISCRETE,
  • +
  • 4 for ANALOGUE (float),
  • +
  • nad_type_size * dimensions for NAD,
  • +
  • a multiple of nad_type_size for VNAD.
  • +
+

Once signals are written, call ed247_stream_assistant_push_sample() to push the sample on the stream stack.
+ if a non-VNAD signal is not wrotten before the push, the previous value will be sent (0 if never wrote).
+ if a VNAD signal is not wrotten before the push, it will not be part of the payload.
+ See also ed247_stream_assistants_written_push_samples().

+
Parameters
+ + + + + +
[in]assistantAssistant identifier
[in]signalSignal identifier
[in]signal_sample_dataRetrieve pointer of allocated memory
[in]signal_sample_sizeRetrieve size of allocated memory
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_read_signal (ed247_stream_assistant_t assistant,
ed247_signal_t signal,
const void ** signal_sample_data,
uint32_t * signal_sample_size 
)
+
+ +

Read a signal sample from the assistant sample buffer.

+

/!\ The assistant sample buffer is updated by ed247_stream_assistant_pop_sample() or stream_assistants_pop_samples().

+

This function manage endianness (analogue, NAD, VNAD).
+

+

The signal_sample_size will be be set to:

    +
  • 1 for DISCRETE,
  • +
  • 4 for ANALOGUE (float),
  • +
  • nad_type_size * dimensions for NAD,
  • +
  • a multiple of nad_type_size for VNAD (including 0).
  • +
+
Parameters
+ + + + + +
[in]assistantAssistant identifier
[in]signalSignal identifier
[in]signal_sample_dataRetrieve pointer of the stream sample allocated in memory
[in]signal_sample_sizeRetrieve size of the stream sample allocated in memory
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_push_sample (ed247_stream_assistant_t assistant,
const ed247_timestamp_tdata_timestamp,
bool * full 
)
+
+ +

Push the assistant sample buffer on the stream stack.

+

Data will be effectively sent by ed247_send_pushed_samples().
+ If internal stack is full, the oldest sample will be silently dropped. This is not an error.

+

Signals shall have been wrotten by ed247_stream_assistant_write_signal().
+ if a non-VNAD signal is not wrotten before the push, the previous value will be sent (0 if never wrote).
+ if a VNAD signal is not wrotten before the push, it will not be part of the payload.
+ See also ed247_stream_assistants_written_push_samples().

+
Parameters
+ + + + +
[in]assistantAssistant identifier
[in]data_timestampeither NULL or define the data timestamp associated with the sample.
[out]fullset to true if the internal stack is full after the push. Set to NULL if not desired
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_assistants_written_push_samples (ed247_context_t context,
const ed247_timestamp_tdata_timestamp 
)
+
+ +

Push all stream assistants whose signals have been written since last push_sample()

+

This function will check, for each output stream assistant, if some signals have been written (call to ed247_stream_assistant_was_written()). It will push all the assistants that match. (call to ed247_stream_assistant_push_sample()). The stream will be effectively send by calling ed247_send_pushed_samples().

Parameters
+ + + +
[in]contextContext
[in]data_timestampeither NULL or define the data timestamp associated with the sample.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_assistant_pop_sample (ed247_stream_assistant_t assistant,
const ed247_timestamp_t ** data_timestamp,
const ed247_timestamp_t ** recv_timestamp,
const ed247_sample_details_t ** sample_details,
bool * empty 
)
+
+ +

Pop a sample from stream samples stack.

+

This function will fill assistant sample buffer that can be readed with ed247_stream_assistant_read_signal().

+

Argument empty, if not NULL, will be set to false if the stream stack is empty after the pop.
+ Return value will be ED247_STATUS_NODATA if the stream stack is empty before the pop.
+

+
Parameters
+ + + + + + +
[in]assistantAssistant identifier
[out]data_timestampif not NULL, filed with the data timestamp associated with the sample.
[out]recv_timestampif not NULL, filed with the receive timestamp. See ed247_get_receive_timestamp().
[out]sample_detailsStream sample details
[out]emptyset to true if the internal stack is empty after the pop.
+
+
+
Return values
+ + + + +
ED247_STATUS_SUCCESS
ED247_STATUS_NODATAReceive stack is empty before the pop.
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_status_t stream_assistants_pop_samples (ed247_context_t context)
+
+ +

Pop all samples of all input stream assistants. aka 'update all signals'.

+

After this call, all stream assistants will provide the last received signals value throught ed247_stream_assistant_read_signal(). If a singal has never been received, its value will be 0. This function is equivalent to call ed247_stream_assistant_pop_sample() on all stream assistants until all fifos are empties.

Parameters
+ + +
[in]contextContext
+
+
+
Returns
ED247_STATUS_FAILURE on fatal error, else ED247_STATUS_SUCCESS.
+ +
+
+
+
+ + + + diff --git a/docs/group__stream__assistant.js b/docs/group__stream__assistant.js new file mode 100644 index 00000000..3b7b934c --- /dev/null +++ b/docs/group__stream__assistant.js @@ -0,0 +1,12 @@ +var group__stream__assistant = +[ + [ "ed247_stream_assistant_t", "group__stream__assistant.html#ga14d9c6d97c5f6494981a4db2796bb55d", null ], + [ "ed247_stream_assistant_get_stream", "group__stream__assistant.html#ga817b85b537993fed15273ef5142e9dfc", null ], + [ "ed247_stream_assistant_write_signal", "group__stream__assistant.html#ga9f213268b087b349e1e2fcc5bda42ade", null ], + [ "ed247_stream_assistant_was_written", "group__stream__assistant.html#gaa745eae4e42eaaeb416e4d2c753ca552", null ], + [ "ed247_stream_assistant_read_signal", "group__stream__assistant.html#ga7ccab54de4805974ce77af1dda4f29a0", null ], + [ "ed247_stream_assistant_push_sample", "group__stream__assistant.html#gabd1cb477151f3c4fb883e218ecb87988", null ], + [ "ed247_stream_assistants_written_push_samples", "group__stream__assistant.html#ga8fa00a1e17e4be2854061a256dadc6c0", null ], + [ "ed247_stream_assistant_pop_sample", "group__stream__assistant.html#gad71eea2f8c8ae157ceb79fa0e397cc75", null ], + [ "stream_assistants_pop_samples", "group__stream__assistant.html#ga077ed72fcc9dc05293b02e72bd6a21f3", null ] +]; \ No newline at end of file diff --git a/docs/group__stream__io.html b/docs/group__stream__io.html new file mode 100644 index 00000000..4e61566f --- /dev/null +++ b/docs/group__stream__io.html @@ -0,0 +1,544 @@ + + + + + + +ED247 Library: Read and Write + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Read and Write
+
+
+

Detailed Description

+

Note: to read/write signals see stream assistant

+ + + + + + + + + + + + + + + + + + + + + + + +

+Functions

LIBED247_EXPORT ed247_status_t ed247_stream_get_assistant (ed247_stream_t stream, ed247_stream_assistant_t *assistant)
 Get an assistant to build stream samples based on signals. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_allocate_sample (ed247_stream_t stream, void **sample_data, uint32_t *sample_size)
 Allocate a sample to store one stream. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_free_sample (void *sample_data)
 Free memory allocated by ed247_stream_allocate_sample(). More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_samples_number (ed247_stream_t stream, ed247_direction_t direction, uint32_t *size)
 Number of samples in the stream stack. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_push_sample (ed247_stream_t stream, const void *sample_data, uint32_t sample_data_size, const ed247_timestamp_t *data_timestamp, bool *full)
 Write and push a single sample in the samples stack of the stream. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_push_samples (ed247_stream_t stream, const void *samples_data, const uint32_t *samples_size, uint32_t samples_number, const ed247_timestamp_t *data_timestamp, bool *full)
 Write and push several samples in the samples stack of the stream. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_pop_sample (ed247_stream_t stream, const void **sample_data, uint32_t *sample_size, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty)
 Pop a sample from stream samples stack. More...
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_get_assistant (ed247_stream_t stream,
ed247_stream_assistant_tassistant 
)
+
+ +

Get an assistant to build stream samples based on signals.

+
Parameters
+ + + +
[in]streamStream identifier
[out]assistantStream assistant
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREWhen the stream is not signal based
+
+
+ +

+Here is the caller graph for this function:
+
+
+ + + +
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_allocate_sample (ed247_stream_t stream,
void ** sample_data,
uint32_t * sample_size 
)
+
+ +

Allocate a sample to store one stream.

+

The size of the sample is deducted from the SampleMaxSizeBytes ED247 parameter of the stream.
+ Memory has to be released with ed247_stream_free_sample().
+

+
Parameters
+ + + + +
[in]streamStream identifier
[out]sample_dataPointer to the allocated memory
[out]sample_sizeSize of the memory allocated for the sample
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_free_sample (void * sample_data)
+
+ +

Free memory allocated by ed247_stream_allocate_sample().

+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILUREwhen sample_data is not allocated
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_samples_number (ed247_stream_t stream,
ed247_direction_t direction,
uint32_t * size 
)
+
+ +

Number of samples in the stream stack.

+
Parameters
+ + + + +
[in]streamStream identifier
[in]directionOnly ED247_DIRECTION_IN or ED247_DIRECTION_OUT accepted, reference the desired stack to write on
[out]sizeNumber of samples in the stack
+
+
+
Return values
+ + +
ED247_STATUS_SUCCESS
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_push_sample (ed247_stream_t stream,
const void * sample_data,
uint32_t sample_data_size,
const ed247_timestamp_tdata_timestamp,
bool * full 
)
+
+ +

Write and push a single sample in the samples stack of the stream.

+

Data will be effectively sent by ed247_send_pushed_samples().
+ If internal stack is full, the oldest sample will be silently dropped. This is not an error.

+
Parameters
+ + + + + + +
[in]streamStream identifier
[in]sample_dataSample data to write, copied internally
[in]sample_data_sizeSize of the sample data to write, in bytes
[in]data_timestampeither NULL or define the data timestamp associated with the sample.
[out]fullset to true if the internal stack is full after the push. Set to NULL if not desired.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_push_samples (ed247_stream_t stream,
const void * samples_data,
const uint32_t * samples_size,
uint32_t samples_number,
const ed247_timestamp_tdata_timestamp,
bool * full 
)
+
+ +

Write and push several samples in the samples stack of the stream.

+

Data will be effectively sent by ed247_send_pushed_samples().
+ If internal stack is full, the oldest samples will be silently dropped. This is not an error.

+
Parameters
+ + + + + + + +
[in]streamStream identifier
[in]samples_dataArray of samples to be pushed
[in]samples_sizeArray of sample sizes (one size for each sample in samples_data)
[in]samples_numberNumber of samples to write. It must correspond to the number of elements in samples_data & samples_size
[in]data_timestampeither NULL or define the data timestamp associated with the samples.
[out]fullSet to true if the internal stack is full after the push. Set to NULL if not desired.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_pop_sample (ed247_stream_t stream,
const void ** sample_data,
uint32_t * sample_size,
const ed247_timestamp_t ** data_timestamp,
const ed247_timestamp_t ** recv_timestamp,
const ed247_sample_details_t ** sample_details,
bool * empty 
)
+
+ +

Pop a sample from stream samples stack.

+

Argument empty, if not NULL, will be set to false if the samples stack is empty after the pop.
+ Return value will be ED247_STATUS_NODATA if the samples stack is empty before the pop.
+

+
Parameters
+ + + + + + + + +
[in]streamStream identifier
[out]sample_dataPointer on the internal stream buffer sample. Do not free it!
[out]sample_sizeSize of the received sample data
[out]data_timestampif not NULL, filed with the data timestamp associated with the sample.
[out]recv_timestampif not NULL, filed with the receive timestamp. See ed247_get_receive_timestamp().
[out]sample_detailsStream sample details (ECID, S/N, TTS).
[out]emptyset to true if the internal stack is empty after the pop.
+
+
+
Return values
+ + + + +
ED247_STATUS_SUCCESS
ED247_STATUS_NODATAReceive stack is empty before the pop.
ED247_STATUS_FAILURE
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__stream__io.js b/docs/group__stream__io.js new file mode 100644 index 00000000..f73df40a --- /dev/null +++ b/docs/group__stream__io.js @@ -0,0 +1,10 @@ +var group__stream__io = +[ + [ "ed247_stream_get_assistant", "group__stream__io.html#ga3907463be59d8d3cc80caf0dd06e4af9", null ], + [ "ed247_stream_allocate_sample", "group__stream__io.html#gaadee13cb903d84e40b842236e54f860b", null ], + [ "ed247_stream_free_sample", "group__stream__io.html#ga9028da1b5b1079e543c1b953331547a4", null ], + [ "ed247_stream_samples_number", "group__stream__io.html#gaea2b91416c53476460a3532791fca253", null ], + [ "ed247_stream_push_sample", "group__stream__io.html#ga0ab4d03c9f10330e1c590e1df1771976", null ], + [ "ed247_stream_push_samples", "group__stream__io.html#gaa69b69420d895fbbf3ac7f7fb0529e26", null ], + [ "ed247_stream_pop_sample", "group__stream__io.html#gad66beca5d4ad1f4e9c9257396e56bdf1", null ] +]; \ No newline at end of file diff --git a/docs/group__stream__io_ga3907463be59d8d3cc80caf0dd06e4af9_icgraph.map b/docs/group__stream__io_ga3907463be59d8d3cc80caf0dd06e4af9_icgraph.map new file mode 100644 index 00000000..a652a3a3 --- /dev/null +++ b/docs/group__stream__io_ga3907463be59d8d3cc80caf0dd06e4af9_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__stream__io_ga3907463be59d8d3cc80caf0dd06e4af9_icgraph.md5 b/docs/group__stream__io_ga3907463be59d8d3cc80caf0dd06e4af9_icgraph.md5 new file mode 100644 index 00000000..735f3280 --- /dev/null +++ b/docs/group__stream__io_ga3907463be59d8d3cc80caf0dd06e4af9_icgraph.md5 @@ -0,0 +1 @@ +50a23a85af0348f247d656021684f8bd \ No newline at end of file diff --git a/docs/group__stream__io_ga3907463be59d8d3cc80caf0dd06e4af9_icgraph.png b/docs/group__stream__io_ga3907463be59d8d3cc80caf0dd06e4af9_icgraph.png new file mode 100644 index 00000000..6e8f9eaf Binary files /dev/null and b/docs/group__stream__io_ga3907463be59d8d3cc80caf0dd06e4af9_icgraph.png differ diff --git a/docs/group__stream__list.html b/docs/group__stream__list.html new file mode 100644 index 00000000..75cea580 --- /dev/null +++ b/docs/group__stream__list.html @@ -0,0 +1,260 @@ + + + + + + +ED247 Library: Stream list + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Stream list
+
+
+

Detailed Description

+ + + + + +

+Typedefs

+typedef struct ed247_internal_stream_list_ted247_stream_list_t
 Stream list identifier.
 
+ + + + + + + + + + +

+Functions

LIBED247_EXPORT ed247_status_t ed247_stream_list_size (ed247_stream_list_t streams, uint32_t *size)
 Get the size of the list. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_list_next (ed247_stream_list_t streams, ed247_stream_t *stream)
 Iterate over a stream identifier list. More...
 
LIBED247_EXPORT ed247_status_t ed247_stream_list_free (ed247_stream_list_t streams)
 Free stream list. More...
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_list_size (ed247_stream_list_t streams,
uint32_t * size 
)
+
+ +

Get the size of the list.

+
Parameters
+ + + +
[in]streamsThe stream list
[out]sizeThe size of the list
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_list_next (ed247_stream_list_t streams,
ed247_stream_tstream 
)
+
+ +

Iterate over a stream identifier list.

+

A null value is set when the end of the list is reached. Return value is ED247_STATUS_SUCCESS. The next call will return the pointer to the first item of the list.

+
Parameters
+ + + +
[in,out]streamsThe stream list
[out]streamA pointer to the current item in the list.
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESSOperation completed successfully even if end of list may be reached
ED247_STATUS_FAILUREInvalid parameter provided or internal error
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_status_t ed247_stream_list_free (ed247_stream_list_t streams)
+
+ +

Free stream list.

+
Parameters
+ + +
[in]streamsThe stream list
+
+
+
Return values
+ + + +
ED247_STATUS_SUCCESS
ED247_STATUS_FAILURE
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__stream__list.js b/docs/group__stream__list.js new file mode 100644 index 00000000..29d42c3c --- /dev/null +++ b/docs/group__stream__list.js @@ -0,0 +1,7 @@ +var group__stream__list = +[ + [ "ed247_stream_list_t", "group__stream__list.html#gaa72d56d61f93bbd4b2914a6ed42aecda", null ], + [ "ed247_stream_list_size", "group__stream__list.html#gafda0491b51ab1a5e4d688dd6f3997492", null ], + [ "ed247_stream_list_next", "group__stream__list.html#ga01d85b5802d270b8209779242cc84099", null ], + [ "ed247_stream_list_free", "group__stream__list.html#gae9924ae2410a826448e80290ac604f1e", null ] +]; \ No newline at end of file diff --git a/docs/group__stream_gaa668871ce72a8f707a2513a98fd9b6fb_icgraph.map b/docs/group__stream_gaa668871ce72a8f707a2513a98fd9b6fb_icgraph.map new file mode 100644 index 00000000..3b2fa329 --- /dev/null +++ b/docs/group__stream_gaa668871ce72a8f707a2513a98fd9b6fb_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__stream_gaa668871ce72a8f707a2513a98fd9b6fb_icgraph.md5 b/docs/group__stream_gaa668871ce72a8f707a2513a98fd9b6fb_icgraph.md5 new file mode 100644 index 00000000..7329e1fd --- /dev/null +++ b/docs/group__stream_gaa668871ce72a8f707a2513a98fd9b6fb_icgraph.md5 @@ -0,0 +1 @@ +64702d29d7e1a68f760782b16ecd3713 \ No newline at end of file diff --git a/docs/group__stream_gaa668871ce72a8f707a2513a98fd9b6fb_icgraph.png b/docs/group__stream_gaa668871ce72a8f707a2513a98fd9b6fb_icgraph.png new file mode 100644 index 00000000..1b619f4c Binary files /dev/null and b/docs/group__stream_gaa668871ce72a8f707a2513a98fd9b6fb_icgraph.png differ diff --git a/docs/group__stream_gaa7b437eeeee13b7313536572962aef4e_icgraph.map b/docs/group__stream_gaa7b437eeeee13b7313536572962aef4e_icgraph.map new file mode 100644 index 00000000..3d250b6f --- /dev/null +++ b/docs/group__stream_gaa7b437eeeee13b7313536572962aef4e_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__stream_gaa7b437eeeee13b7313536572962aef4e_icgraph.md5 b/docs/group__stream_gaa7b437eeeee13b7313536572962aef4e_icgraph.md5 new file mode 100644 index 00000000..a7576049 --- /dev/null +++ b/docs/group__stream_gaa7b437eeeee13b7313536572962aef4e_icgraph.md5 @@ -0,0 +1 @@ +dacd33afc78ed1de0c845e48b2ff1392 \ No newline at end of file diff --git a/docs/group__stream_gaa7b437eeeee13b7313536572962aef4e_icgraph.png b/docs/group__stream_gaa7b437eeeee13b7313536572962aef4e_icgraph.png new file mode 100644 index 00000000..07628c08 Binary files /dev/null and b/docs/group__stream_gaa7b437eeeee13b7313536572962aef4e_icgraph.png differ diff --git a/docs/group__stream_gaf3e09d9f1fbf1436e2361a3087eef708_icgraph.map b/docs/group__stream_gaf3e09d9f1fbf1436e2361a3087eef708_icgraph.map new file mode 100644 index 00000000..97e0c6d7 --- /dev/null +++ b/docs/group__stream_gaf3e09d9f1fbf1436e2361a3087eef708_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__stream_gaf3e09d9f1fbf1436e2361a3087eef708_icgraph.md5 b/docs/group__stream_gaf3e09d9f1fbf1436e2361a3087eef708_icgraph.md5 new file mode 100644 index 00000000..8fa04630 --- /dev/null +++ b/docs/group__stream_gaf3e09d9f1fbf1436e2361a3087eef708_icgraph.md5 @@ -0,0 +1 @@ +427949802cbb99c26bddfe516573611a \ No newline at end of file diff --git a/docs/group__stream_gaf3e09d9f1fbf1436e2361a3087eef708_icgraph.png b/docs/group__stream_gaf3e09d9f1fbf1436e2361a3087eef708_icgraph.png new file mode 100644 index 00000000..6a7e1e97 Binary files /dev/null and b/docs/group__stream_gaf3e09d9f1fbf1436e2361a3087eef708_icgraph.png differ diff --git a/docs/group__stream_gaf6068982b942ae3009d30a4838b8d7dc_icgraph.map b/docs/group__stream_gaf6068982b942ae3009d30a4838b8d7dc_icgraph.map new file mode 100644 index 00000000..68d14f3d --- /dev/null +++ b/docs/group__stream_gaf6068982b942ae3009d30a4838b8d7dc_icgraph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/group__stream_gaf6068982b942ae3009d30a4838b8d7dc_icgraph.md5 b/docs/group__stream_gaf6068982b942ae3009d30a4838b8d7dc_icgraph.md5 new file mode 100644 index 00000000..7e5762c0 --- /dev/null +++ b/docs/group__stream_gaf6068982b942ae3009d30a4838b8d7dc_icgraph.md5 @@ -0,0 +1 @@ +ff7c7b9e1fb805b6a58b34b3330e154a \ No newline at end of file diff --git a/docs/group__stream_gaf6068982b942ae3009d30a4838b8d7dc_icgraph.png b/docs/group__stream_gaf6068982b942ae3009d30a4838b8d7dc_icgraph.png new file mode 100644 index 00000000..309adea1 Binary files /dev/null and b/docs/group__stream_gaf6068982b942ae3009d30a4838b8d7dc_icgraph.png differ diff --git a/docs/group__strings.html b/docs/group__strings.html new file mode 100644 index 00000000..896d2539 --- /dev/null +++ b/docs/group__strings.html @@ -0,0 +1,548 @@ + + + + + + +ED247 Library: String conversion + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
String conversion
+
+
+

Detailed Description

+

Helper to convert type to/from strings.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

LIBED247_EXPORT const char * ed247_status_string (ed247_status_t status)
 ed247_status_t to string conversion More...
 
LIBED247_EXPORT const char * ed247_standard_string (ed247_standard_t standard)
 ed247_standard_t to string conversion More...
 
LIBED247_EXPORT ed247_standard_t ed247_standard_from_string (const char *standard)
 ed247_standard_t from string conversion More...
 
LIBED247_EXPORT const char * ed247_direction_string (ed247_direction_t direction)
 ed247_direction_t to string conversion More...
 
LIBED247_EXPORT ed247_direction_t ed247_direction_from_string (const char *direction)
 ed247_direction_t from string conversion More...
 
LIBED247_EXPORT const char * ed247_yesno_string (ed247_yesno_t yesno)
 ed247_yesno_t to string conversion More...
 
LIBED247_EXPORT ed247_yesno_t ed247_yesno_from_string (const char *yesno)
 ed247_yesno_t from string conversion More...
 
LIBED247_EXPORT const char * ed247_component_type_string (ed247_component_type_t component_type)
 ed247_component_type_t to string conversion More...
 
LIBED247_EXPORT ed247_component_type_t ed247_component_type_from_string (const char *component_type)
 ed247_component_type_t from string conversion More...
 
LIBED247_EXPORT const char * ed247_stream_type_string (ed247_stream_type_t stream_type)
 ed247_stream_type_t to string conversion More...
 
LIBED247_EXPORT ed247_stream_type_t ed247_stream_type_from_string (const char *stream_type)
 ed247_stream_type_t from string conversion More...
 
LIBED247_EXPORT const char * ed247_signal_type_string (ed247_signal_type_t signal_type)
 ed247_signal_type_t to string conversion More...
 
LIBED247_EXPORT ed247_signal_type_t ed247_signal_type_from_string (const char *signal_type)
 ed247_signal_type_t from string conversion More...
 
LIBED247_EXPORT const char * ed247_nad_type_string (ed247_nad_type_t nad_type)
 ed247_nad_type_t to string conversion More...
 
LIBED247_EXPORT ed247_nad_type_t ed247_nad_type_from_string (const char *nad_type)
 ed247_nad_type_t from string conversion More...
 
+

Function Documentation

+ +
+
+ + + + + + + + +
LIBED247_EXPORT const char* ed247_status_string (ed247_status_t status)
+
+ +

ed247_status_t to string conversion

+
Parameters
+ + +
[in]statusThe value to convert
+
+
+
Returns
The corresponding string
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT const char* ed247_standard_string (ed247_standard_t standard)
+
+ +

ed247_standard_t to string conversion

+
Parameters
+ + +
[in]standardThe value to convert
+
+
+
Returns
The corresponding string
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_standard_t ed247_standard_from_string (const char * standard)
+
+ +

ed247_standard_t from string conversion

+
Parameters
+ + +
[in]standardThe string to convert
+
+
+
Returns
The corresponding ed247_standard_t value
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT const char* ed247_direction_string (ed247_direction_t direction)
+
+ +

ed247_direction_t to string conversion

+
Parameters
+ + +
[in]directionThe value to convert
+
+
+
Returns
The corresponding string
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_direction_t ed247_direction_from_string (const char * direction)
+
+ +

ed247_direction_t from string conversion

+
Parameters
+ + +
[in]directionThe string to convert
+
+
+
Returns
The corresponding ed247_direction_t value
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT const char* ed247_yesno_string (ed247_yesno_t yesno)
+
+ +

ed247_yesno_t to string conversion

+
Parameters
+ + +
[in]yesnoThe value to convert
+
+
+
Returns
The corresponding string
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_yesno_t ed247_yesno_from_string (const char * yesno)
+
+ +

ed247_yesno_t from string conversion

+
Parameters
+ + +
[in]yesnoThe string to convert
+
+
+
Returns
The corresponding ed247_yesno_t value
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT const char* ed247_component_type_string (ed247_component_type_t component_type)
+
+ +

ed247_component_type_t to string conversion

+
Parameters
+ + +
[in]component_typeThe value to convert
+
+
+
Returns
The corresponding string
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_component_type_t ed247_component_type_from_string (const char * component_type)
+
+ +

ed247_component_type_t from string conversion

+
Parameters
+ + +
[in]component_typeThe string to convert
+
+
+
Returns
The corresponding ed247_component_type_t value
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT const char* ed247_stream_type_string (ed247_stream_type_t stream_type)
+
+ +

ed247_stream_type_t to string conversion

+
Parameters
+ + +
[in]stream_typeThe value to convert
+
+
+
Returns
The corresponding string
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_stream_type_t ed247_stream_type_from_string (const char * stream_type)
+
+ +

ed247_stream_type_t from string conversion

+
Parameters
+ + +
[in]stream_typeThe string to convert
+
+
+
Returns
The corresponding ed247_stream_type_t value
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT const char* ed247_signal_type_string (ed247_signal_type_t signal_type)
+
+ +

ed247_signal_type_t to string conversion

+
Parameters
+ + +
[in]signal_typeThe value to convert
+
+
+
Returns
The corresponding string
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_signal_type_t ed247_signal_type_from_string (const char * signal_type)
+
+ +

ed247_signal_type_t from string conversion

+
Parameters
+ + +
[in]signal_typeThe string to convert
+
+
+
Returns
The corresponding ed247_signal_type_t value
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT const char* ed247_nad_type_string (ed247_nad_type_t nad_type)
+
+ +

ed247_nad_type_t to string conversion

+
Parameters
+ + +
[in]nad_typeThe value to convert
+
+
+
Returns
The corresponding string
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT ed247_nad_type_t ed247_nad_type_from_string (const char * nad_type)
+
+ +

ed247_nad_type_t from string conversion

+
Parameters
+ + +
[in]nad_typeThe string to convert
+
+
+
Returns
The corresponding ed247_nad_type_t value
+ +
+
+
+
+ + + + diff --git a/docs/group__strings.js b/docs/group__strings.js new file mode 100644 index 00000000..838fea87 --- /dev/null +++ b/docs/group__strings.js @@ -0,0 +1,18 @@ +var group__strings = +[ + [ "ed247_status_string", "group__strings.html#ga17d99d52dd4f168222422aa2b1999598", null ], + [ "ed247_standard_string", "group__strings.html#ga509d237f65018a7462a98481616d673c", null ], + [ "ed247_standard_from_string", "group__strings.html#gadf4f1c7eb26081cfcc060f9f81e84a3c", null ], + [ "ed247_direction_string", "group__strings.html#ga41b7737dcdd6c58ecf0e7455fd87e106", null ], + [ "ed247_direction_from_string", "group__strings.html#ga543607a06ff57d0b53151f36811c455c", null ], + [ "ed247_yesno_string", "group__strings.html#ga4b73efe63062b044e682c02d72d0c99c", null ], + [ "ed247_yesno_from_string", "group__strings.html#ga8422cdbc9258d69f8592b9af1c08d6a7", null ], + [ "ed247_component_type_string", "group__strings.html#gadfa22b5fe771535e20609ea96ed42dc9", null ], + [ "ed247_component_type_from_string", "group__strings.html#gaff5276910e5a9f9f12f2893067c9c368", null ], + [ "ed247_stream_type_string", "group__strings.html#gad58ef50861feff516712dcc45f716a34", null ], + [ "ed247_stream_type_from_string", "group__strings.html#ga860bf3f61b62851b7a70a6320c6f3b8c", null ], + [ "ed247_signal_type_string", "group__strings.html#ga1c8a30f8c6132e3626cd0c63fc38590f", null ], + [ "ed247_signal_type_from_string", "group__strings.html#gac17b81c45ca7ef0c5606eef9802d799a", null ], + [ "ed247_nad_type_string", "group__strings.html#ga0da47bc91d3ae514596f170b83aea01f", null ], + [ "ed247_nad_type_from_string", "group__strings.html#ga820562cc9b8fdcc76eefcc70ffcf240c", null ] +]; \ No newline at end of file diff --git a/docs/group__time.html b/docs/group__time.html new file mode 100644 index 00000000..32473daf --- /dev/null +++ b/docs/group__time.html @@ -0,0 +1,286 @@ + + + + + + +ED247 Library: Time management + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Time management
+
+
+

Detailed Description

+

Functions to set simulation time for receive timestamp

+ + + + + +

+Typedefs

+typedef void(* ed247_get_time_t) (ed247_timestamp_t *timestamp)
 Prototype of a function to get time.
 
+ + + + + + + + + + + + + + + + +

+Functions

LIBED247_EXPORT void ed247_get_time (ed247_timestamp_t *timestamp)
 Return the current time. More...
 
LIBED247_EXPORT void ed247_set_transport_timestamp_callback (ed247_get_time_t callback)
 Set the function to use to timestamp the transport (aka emit date) More...
 
LIBED247_EXPORT void ed247_set_receive_timestamp_callback (ed247_get_time_t callback)
 Set the function to use to timestamp the incoming streams (aka receive date) More...
 
LIBED247_EXPORT void ed247_get_transport_timestamp (ed247_timestamp_t *timestamp)
 Return the time to timestamp the transport. More...
 
LIBED247_EXPORT void ed247_get_receive_timestamp (ed247_timestamp_t *timestamp)
 Return the time to timestamp the incoming streams. More...
 
+

Function Documentation

+ +
+
+ + + + + + + + +
LIBED247_EXPORT void ed247_get_time (ed247_timestamp_ttimestamp)
+
+ +

Return the current time.

+

This implementation use an internal and system-specific implementation.
+ This is the default function used to fill transport timestamp and receive timestamp.

+

You may want to provide your own implementation with the methods:

    +
  • ed247_register_transport_timestamp_callback()
  • +
  • ed247_register_receive_timestamp_callback()
  • +
+
Parameters
+ + +
[out]timestampFilled with current time
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT void ed247_set_transport_timestamp_callback (ed247_get_time_t callback)
+
+ +

Set the function to use to timestamp the transport (aka emit date)

+

The default function is ed247_get_time().
+ The emmiter will wrote the TTS only if enabled by ECIC file.
+ The receiver can read the value in the field ed247_sample_details_t->transport_timestamp returned by ed247_stream_pop_sample() and ed247_stream_assistant_pop_sample() functions.

+
Parameters
+ + +
[in]callbackFunction that will provide current time
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT void ed247_set_receive_timestamp_callback (ed247_get_time_t callback)
+
+ +

Set the function to use to timestamp the incoming streams (aka receive date)

+

The default function is ed247_get_time().
+ The library will date incoming stream during the call of ed247_wait_frame() and ed247_wait_during() methods.
+ It will provide the value in the recv_timestamp field of ed247_stream_pop_sample() and ed247_stream_assistant_pop_sample() functions.
+

+
Parameters
+ + +
[in]callbackFunction that will provide current time
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT void ed247_get_transport_timestamp (ed247_timestamp_ttimestamp)
+
+ +

Return the time to timestamp the transport.

+

Call either ed247_get_time() or the function set by ed247_set_transport_timestamp_callback()

+
Parameters
+ + +
[out]timestampFilled with the appropriate time
+
+
+ +
+
+ +
+
+ + + + + + + + +
LIBED247_EXPORT void ed247_get_receive_timestamp (ed247_timestamp_ttimestamp)
+
+ +

Return the time to timestamp the incoming streams.

+

Call either ed247_get_time() or the function set by ed247_set_receive_timestamp_callback()

+
Parameters
+ + +
[out]timestampFilled with the appropriate time
+
+
+ +
+
+
+
+ + + + diff --git a/docs/group__time.js b/docs/group__time.js new file mode 100644 index 00000000..f07b2bf3 --- /dev/null +++ b/docs/group__time.js @@ -0,0 +1,9 @@ +var group__time = +[ + [ "ed247_get_time_t", "group__time.html#gabeba8f9370a3394931eb4f957708d9f4", null ], + [ "ed247_get_time", "group__time.html#gabc1751506aa054d415e50c2eaaeb535e", null ], + [ "ed247_set_transport_timestamp_callback", "group__time.html#gaa26a0294ae76c6627e6a038685f6bce7", null ], + [ "ed247_set_receive_timestamp_callback", "group__time.html#gaf7c519dc3a6ddda134ded061bc9031e2", null ], + [ "ed247_get_transport_timestamp", "group__time.html#ga05acbf08986fcf5d93fb3f9d32af7f5a", null ], + [ "ed247_get_receive_timestamp", "group__time.html#gaa58caf17fb3a69ee8028d5184079ef95", null ] +]; \ No newline at end of file diff --git a/docs/hierarchy.html b/docs/hierarchy.html new file mode 100644 index 00000000..15f9fb92 --- /dev/null +++ b/docs/hierarchy.html @@ -0,0 +1,208 @@ + + + + + + +ED247 Library: Class Hierarchy + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Class Hierarchy
+
+
+
+

Go to the graphical class hierarchy

+This inheritance list is sorted roughly, but not completely, alphabetically:
+
[detail level 1234]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 CCBaseList
 Ced247::client_list< CBaseList, T >
 Ced247::client_list_container< CBaseList, T, Container, context_owned >
 Ced247::ClientStreamListWithData
 Ced247::ChannelSet
 Ced247::udp::ComInterface
 Ced247_internal_channel_list_t
 Ced247_internal_channel_t
 Ced247::Channel
 Ced247_internal_context_t
 Ced247::Context
 Ced247_internal_signal_list_t
 Ced247_internal_signal_t
 Ced247::Signal
 Ced247_internal_stream_assistant_t
 Ced247::StreamAssistant
 Ced247::FixedStreamAssistant
 Ced247::VNADStreamAssistant
 Ced247_internal_stream_list_t
 Ced247_internal_stream_t
 Ced247::Stream
 Ced247::StreamSignals
 Ced247_sample_details_sSample Details
 Ced247_timestamp_tTimestamp structure, seconds from EPOCH (January 1st 1970) and nanoseconds offset with reference to previous field
 Cexception
 Ced247::exception
 Ced247::xml::exception
 Cfalse_type
 Ced247::is_pair< typename >
 Ced247::udp::Receiver::frame_t
 Ced247::FrameHeader
 Chex_stream
 Clibed247_runtime_metrics_t
 Ced247::log
 Ced247::xml::Node
 Ced247::xml::Channel
 Ced247::xml::ComInterface
 Ced247::xml::Component
 Ced247::xml::DataTimestamp
 Ced247::xml::Errors
 Ced247::xml::Header
 Ced247::xml::Signal
 Ced247::xml::ANASignal
 Ced247::xml::DISSignal
 Ced247::xml::NADSignal
 Ced247::xml::VNADSignal
 Ced247::xml::Stream
 Ced247::xml::StreamProtocoled
 Ced247::xml::A429Stream
 Ced247::xml::A664Stream
 Ced247::xml::A825Stream
 Ced247::xml::ETHStream
 Ced247::xml::SERIALStream
 Ced247::xml::StreamSignals
 Ced247::xml::ANAStream
 Ced247::xml::DISStream
 Ced247::xml::NADStream
 Ced247::xml::VNADStream
 Ced247::xml::UdpSocket
 Ced247::udp::ReceiverSet
 Ced247::Sample
 Ced247::StreamSample
 Ced247::SignalSet
 Csockaddr_in
 Ced247::udp::socket_address_t
 Ced247::udp::socket_address_equal_to
 Ced247::udp::socket_address_hash
 Ced247::StreamSampleRingBuffer
 Ced247::StreamSet
 Cstrize
 Ced247::udp::system_socket_map_t
 Ced247::udp::Transceiver
 Ced247::udp::Emitter
 Ced247::udp::Receiver
 Ctrue_type
 Ced247::is_pair< std::pair< T, U > >
+
+
+
+ + + + diff --git a/docs/hierarchy.js b/docs/hierarchy.js new file mode 100644 index 00000000..bac8487f --- /dev/null +++ b/docs/hierarchy.js @@ -0,0 +1,101 @@ +var hierarchy = +[ + [ "CBaseList", "class_c_base_list.html", [ + [ "ed247::client_list< CBaseList, T >", "structed247_1_1client__list.html", [ + [ "ed247::client_list_container< CBaseList, T, Container, context_owned >", "structed247_1_1client__list__container.html", [ + [ "ed247::ClientStreamListWithData", "structed247_1_1_client_stream_list_with_data.html", null ] + ] ] + ] ] + ] ], + [ "ed247::ChannelSet", "classed247_1_1_channel_set.html", null ], + [ "ed247::udp::ComInterface", "classed247_1_1udp_1_1_com_interface.html", null ], + [ "ed247_internal_channel_list_t", "structed247__internal__channel__list__t.html", null ], + [ "ed247_internal_channel_t", "structed247__internal__channel__t.html", [ + [ "ed247::Channel", "classed247_1_1_channel.html", null ] + ] ], + [ "ed247_internal_context_t", "structed247__internal__context__t.html", [ + [ "ed247::Context", "classed247_1_1_context.html", null ] + ] ], + [ "ed247_internal_signal_list_t", "structed247__internal__signal__list__t.html", null ], + [ "ed247_internal_signal_t", "structed247__internal__signal__t.html", [ + [ "ed247::Signal", "classed247_1_1_signal.html", null ] + ] ], + [ "ed247_internal_stream_assistant_t", "structed247__internal__stream__assistant__t.html", [ + [ "ed247::StreamAssistant", "classed247_1_1_stream_assistant.html", [ + [ "ed247::FixedStreamAssistant", "classed247_1_1_fixed_stream_assistant.html", null ], + [ "ed247::VNADStreamAssistant", "classed247_1_1_v_n_a_d_stream_assistant.html", null ] + ] ] + ] ], + [ "ed247_internal_stream_list_t", "structed247__internal__stream__list__t.html", null ], + [ "ed247_internal_stream_t", "structed247__internal__stream__t.html", [ + [ "ed247::Stream", "classed247_1_1_stream.html", [ + [ "ed247::StreamSignals", "structed247_1_1_stream_signals.html", null ] + ] ] + ] ], + [ "ed247_sample_details_s", "structed247__sample__details__s.html", null ], + [ "ed247_timestamp_t", "structed247__timestamp__t.html", null ], + [ "exception", null, [ + [ "ed247::exception", "classed247_1_1exception.html", [ + [ "ed247::xml::exception", "classed247_1_1xml_1_1exception.html", null ] + ] ] + ] ], + [ "false_type", null, [ + [ "ed247::is_pair< typename >", "structed247_1_1is__pair.html", null ] + ] ], + [ "ed247::udp::Receiver::frame_t", "structed247_1_1udp_1_1_receiver_1_1frame__t.html", null ], + [ "ed247::FrameHeader", "classed247_1_1_frame_header.html", null ], + [ "hex_stream", "classhex__stream.html", null ], + [ "libed247_runtime_metrics_t", "structlibed247__runtime__metrics__t.html", null ], + [ "ed247::log", "structed247_1_1log.html", null ], + [ "ed247::xml::Node", "structed247_1_1xml_1_1_node.html", [ + [ "ed247::xml::Channel", "structed247_1_1xml_1_1_channel.html", null ], + [ "ed247::xml::ComInterface", "structed247_1_1xml_1_1_com_interface.html", null ], + [ "ed247::xml::Component", "structed247_1_1xml_1_1_component.html", null ], + [ "ed247::xml::DataTimestamp", "structed247_1_1xml_1_1_data_timestamp.html", null ], + [ "ed247::xml::Errors", "structed247_1_1xml_1_1_errors.html", null ], + [ "ed247::xml::Header", "structed247_1_1xml_1_1_header.html", null ], + [ "ed247::xml::Signal", "structed247_1_1xml_1_1_signal.html", [ + [ "ed247::xml::ANASignal", "structed247_1_1xml_1_1_a_n_a_signal.html", null ], + [ "ed247::xml::DISSignal", "structed247_1_1xml_1_1_d_i_s_signal.html", null ], + [ "ed247::xml::NADSignal", "structed247_1_1xml_1_1_n_a_d_signal.html", null ], + [ "ed247::xml::VNADSignal", "structed247_1_1xml_1_1_v_n_a_d_signal.html", null ] + ] ], + [ "ed247::xml::Stream", "structed247_1_1xml_1_1_stream.html", [ + [ "ed247::xml::StreamProtocoled", "structed247_1_1xml_1_1_stream_protocoled.html", [ + [ "ed247::xml::A429Stream", "structed247_1_1xml_1_1_a429_stream.html", null ], + [ "ed247::xml::A664Stream", "structed247_1_1xml_1_1_a664_stream.html", null ], + [ "ed247::xml::A825Stream", "structed247_1_1xml_1_1_a825_stream.html", null ], + [ "ed247::xml::ETHStream", "structed247_1_1xml_1_1_e_t_h_stream.html", null ], + [ "ed247::xml::SERIALStream", "structed247_1_1xml_1_1_s_e_r_i_a_l_stream.html", null ] + ] ], + [ "ed247::xml::StreamSignals", "structed247_1_1xml_1_1_stream_signals.html", [ + [ "ed247::xml::ANAStream", "structed247_1_1xml_1_1_a_n_a_stream.html", null ], + [ "ed247::xml::DISStream", "structed247_1_1xml_1_1_d_i_s_stream.html", null ], + [ "ed247::xml::NADStream", "structed247_1_1xml_1_1_n_a_d_stream.html", null ], + [ "ed247::xml::VNADStream", "structed247_1_1xml_1_1_v_n_a_d_stream.html", null ] + ] ] + ] ], + [ "ed247::xml::UdpSocket", "structed247_1_1xml_1_1_udp_socket.html", null ] + ] ], + [ "ed247::udp::ReceiverSet", "classed247_1_1udp_1_1_receiver_set.html", null ], + [ "ed247::Sample", "classed247_1_1_sample.html", [ + [ "ed247::StreamSample", "classed247_1_1_stream_sample.html", null ] + ] ], + [ "ed247::SignalSet", "classed247_1_1_signal_set.html", null ], + [ "sockaddr_in", "classsockaddr__in.html", [ + [ "ed247::udp::socket_address_t", "structed247_1_1udp_1_1socket__address__t.html", null ] + ] ], + [ "ed247::udp::socket_address_equal_to", "structed247_1_1udp_1_1socket__address__equal__to.html", null ], + [ "ed247::udp::socket_address_hash", "structed247_1_1udp_1_1socket__address__hash.html", null ], + [ "ed247::StreamSampleRingBuffer", "classed247_1_1_stream_sample_ring_buffer.html", null ], + [ "ed247::StreamSet", "classed247_1_1_stream_set.html", null ], + [ "strize", "structstrize.html", null ], + [ "ed247::udp::system_socket_map_t", "structed247_1_1udp_1_1system__socket__map__t.html", null ], + [ "ed247::udp::Transceiver", "classed247_1_1udp_1_1_transceiver.html", [ + [ "ed247::udp::Emitter", "classed247_1_1udp_1_1_emitter.html", null ], + [ "ed247::udp::Receiver", "classed247_1_1udp_1_1_receiver.html", null ] + ] ], + [ "true_type", null, [ + [ "ed247::is_pair< std::pair< T, U > >", "structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4.html", null ] + ] ] +]; \ No newline at end of file diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 00000000..23741093 --- /dev/null +++ b/docs/index.html @@ -0,0 +1,218 @@ + + + + + + +ED247 Library: Introduction + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Introduction
+
+
+

Introduction

+

The ED247 LIBRARY is an example of implementation of the ED247A communication standard, standardized by the EUROCAE WG-97.

+

Doxygen documnetation is available here: https://airbus.github.io/ED247_LIBRARY/

+

License

+

Refer to ./LICENSE.md "LICENCE" file.

+

Limitations

+
    +
  • ED247 Packetization strategy mechanism is not implemented.
  • +
  • ED247 Error handling is not implemented.
  • +
  • The implementation is compliant only with A664, A429, A825, SERIAL, ETH, ANALOG, DISCRETE, NAD & VNAD protocols.
  • +
+

Operating system and compilers

+

The ED247 LIBRARY / LIBED247 can be built for the following operating systems and compilers:

+
    +
  • Linux 32 bits (RHEL7)
  • +
  • Linux 64 bits (RHEL7)
  • +
  • Windows 10 MinGW 32 bits
  • +
  • Windows 10 MinGW 64 bits
  • +
+

Dependencies

+

Runtime

+ + + + + +
Library Purpose Release
LIBXML2 Required 2.9.1
+

Building

+ + + + + + + + + +
Tool Purpose Release
CMAKE Compilation framework 3.22.0
GTEST Tests only 1.10.0
DOXYGEN Documentation generation 1.8.11
+

Logging

+

The logging strategy can be controlled through the API with ed247_set_log_level() or with following environment variables:

+ + + + + + + +
Environment Variable Purpose
ED247_LOG_LEVEL Set the level of logs (see ed247_log_level_t())
ED247_LOG_FILEPATH Set the filepath of the logging file, if necessary
+

Compilation

+

Useful targets

+ + + + + + + + + + + + + + + + + + + +
target Purpose
all Build everything. This is the default target.
ed247 Only build the library.
utils Build utils and their dependencies.
tests Build all tests and theirs dependencies.
run_tests Build all tests and excute them.
<test_name> Build only test <test_name>. See tests section below.
doc Build documentation.
install Delivery.
+

Handle version

+

The target version shall be specified in CMakeLists.txt on project() line. It will be used for Product Delivery Note.
+ The real version will be computed according to git tag description. This value will be hard-coded in the binary in order to to really know where it come from.
+ IMPORTANT: You shall re-run CMake and rebuild before delivering to update the version, especially if you have create a git tag.**

+

The version format is:

<last tag>[-<commit info>][-dirty]

So, if you just have create a tag, the version will be exactly the tag name.
+ Else, the version will contain information to know from which commit the binary come from.

+

Tests debugging

+

Test use multicast IPs and you may need to create a specific route to make them working:

sudo route add -net 224.0.0.0 netmask 240.0.0.0 dev lo

The tests are the subfolders of tests/ folder. A single test can be rebuild by calling the target <test_name>.

+

A single test can be ran with:

cd <build_dir>
ctest -R '^<test_name>$' -VV

Since most tests needs two binaries (client/server) and each one have its own output, there is no "test output". The output of each binary is available in tests/<test_name>/<binary_name>.log.
+ When a test binary fail, the test will display the path to its log file.

+

You also can run yourself the two binaries of the test in two separate consoles. You will have their output directly in the consoles. This is the only way to use specific tools like gdb or valgrind.

+

Build with CMake (quick CMake help)

+

First, configure your environment:

mkdir my_build
cd my_build
cmake <GIT_ROOT> [cmake options]

To force the use of Ninja (it has to be in your path):

cmake <GIT_ROOT> -G "Ninja" [cmake options]

Cmake options can be provided with the syntax -D<option>=<value>

+ + + + + + + + + + + + + + + +
CMake option Purpose
CMAKE_BUILD_TYPE The default is RelWithDebInfo. You may want to use Debug to disable optimization.
CMAKE_TOOLCHAIN_FILE Needed to build in 32-bits or cross-compile. See examples in cmake/toolchains.
CMAKE_PREFIX_PATH List of paths to search for dependencies.
GTest_ROOT Path to GTest.
Doxygen_ROOT Path to Doxygen.
CMAKE_INSTALL_PREFIX install path. (Can also be set with option –prefix. See install below.)
+

Then, run the target you want (see Useful targets upside):

cmake --build <build_root> --target <target>

Run tests and install (use CMAKE_INSTALL_PREFIX or overwrite with –prefix):

cmake --build <build_root> --target run_tests
cmake --install <build_root> [--prefix /where/to/install ]
+
+ + + + diff --git a/docs/inherit_graph_0.map b/docs/inherit_graph_0.map new file mode 100644 index 00000000..95ca579a --- /dev/null +++ b/docs/inherit_graph_0.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/inherit_graph_0.md5 b/docs/inherit_graph_0.md5 new file mode 100644 index 00000000..89d156d1 --- /dev/null +++ b/docs/inherit_graph_0.md5 @@ -0,0 +1 @@ +b4e8b189d6b27a92fe6ebef894d928b0 \ No newline at end of file diff --git a/docs/inherit_graph_0.png b/docs/inherit_graph_0.png new file mode 100644 index 00000000..a60322d5 Binary files /dev/null and b/docs/inherit_graph_0.png differ diff --git a/docs/inherit_graph_1.map b/docs/inherit_graph_1.map new file mode 100644 index 00000000..0e3e0c2e --- /dev/null +++ b/docs/inherit_graph_1.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_1.md5 b/docs/inherit_graph_1.md5 new file mode 100644 index 00000000..8bee688c --- /dev/null +++ b/docs/inherit_graph_1.md5 @@ -0,0 +1 @@ +f2c44c4e9c49bd8182fff6ae2e68b41a \ No newline at end of file diff --git a/docs/inherit_graph_1.png b/docs/inherit_graph_1.png new file mode 100644 index 00000000..9c907194 Binary files /dev/null and b/docs/inherit_graph_1.png differ diff --git a/docs/inherit_graph_10.map b/docs/inherit_graph_10.map new file mode 100644 index 00000000..8a4af619 --- /dev/null +++ b/docs/inherit_graph_10.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_10.md5 b/docs/inherit_graph_10.md5 new file mode 100644 index 00000000..704bebf9 --- /dev/null +++ b/docs/inherit_graph_10.md5 @@ -0,0 +1 @@ +b706d0e10e0865926f912edbd8eb9cb9 \ No newline at end of file diff --git a/docs/inherit_graph_10.png b/docs/inherit_graph_10.png new file mode 100644 index 00000000..e51aceac Binary files /dev/null and b/docs/inherit_graph_10.png differ diff --git a/docs/inherit_graph_11.map b/docs/inherit_graph_11.map new file mode 100644 index 00000000..201e6ca6 --- /dev/null +++ b/docs/inherit_graph_11.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_11.md5 b/docs/inherit_graph_11.md5 new file mode 100644 index 00000000..b5b06359 --- /dev/null +++ b/docs/inherit_graph_11.md5 @@ -0,0 +1 @@ +649aad7e2b566d0fd7cc0153e82f8da0 \ No newline at end of file diff --git a/docs/inherit_graph_11.png b/docs/inherit_graph_11.png new file mode 100644 index 00000000..6f9dfd9b Binary files /dev/null and b/docs/inherit_graph_11.png differ diff --git a/docs/inherit_graph_12.map b/docs/inherit_graph_12.map new file mode 100644 index 00000000..857f908a --- /dev/null +++ b/docs/inherit_graph_12.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_12.md5 b/docs/inherit_graph_12.md5 new file mode 100644 index 00000000..5bc64a0a --- /dev/null +++ b/docs/inherit_graph_12.md5 @@ -0,0 +1 @@ +f3addcc917f14a7d961e1d11688f6edd \ No newline at end of file diff --git a/docs/inherit_graph_12.png b/docs/inherit_graph_12.png new file mode 100644 index 00000000..cc2f6170 Binary files /dev/null and b/docs/inherit_graph_12.png differ diff --git a/docs/inherit_graph_13.map b/docs/inherit_graph_13.map new file mode 100644 index 00000000..5ee69c7a --- /dev/null +++ b/docs/inherit_graph_13.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_13.md5 b/docs/inherit_graph_13.md5 new file mode 100644 index 00000000..a9190c63 --- /dev/null +++ b/docs/inherit_graph_13.md5 @@ -0,0 +1 @@ +e906e61c46eab1128b35de2481b532aa \ No newline at end of file diff --git a/docs/inherit_graph_13.png b/docs/inherit_graph_13.png new file mode 100644 index 00000000..1ed84cfd Binary files /dev/null and b/docs/inherit_graph_13.png differ diff --git a/docs/inherit_graph_14.map b/docs/inherit_graph_14.map new file mode 100644 index 00000000..d9700dd5 --- /dev/null +++ b/docs/inherit_graph_14.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_14.md5 b/docs/inherit_graph_14.md5 new file mode 100644 index 00000000..ed9ebfd0 --- /dev/null +++ b/docs/inherit_graph_14.md5 @@ -0,0 +1 @@ +3e60b7f31ff111992673912dcc287f20 \ No newline at end of file diff --git a/docs/inherit_graph_14.png b/docs/inherit_graph_14.png new file mode 100644 index 00000000..4bcdba57 Binary files /dev/null and b/docs/inherit_graph_14.png differ diff --git a/docs/inherit_graph_15.map b/docs/inherit_graph_15.map new file mode 100644 index 00000000..c39b33a3 --- /dev/null +++ b/docs/inherit_graph_15.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_15.md5 b/docs/inherit_graph_15.md5 new file mode 100644 index 00000000..b36dd19c --- /dev/null +++ b/docs/inherit_graph_15.md5 @@ -0,0 +1 @@ +3ecc5141d443daff8846a6f83d6a04ed \ No newline at end of file diff --git a/docs/inherit_graph_15.png b/docs/inherit_graph_15.png new file mode 100644 index 00000000..ece83425 Binary files /dev/null and b/docs/inherit_graph_15.png differ diff --git a/docs/inherit_graph_16.map b/docs/inherit_graph_16.map new file mode 100644 index 00000000..240a8b10 --- /dev/null +++ b/docs/inherit_graph_16.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_16.md5 b/docs/inherit_graph_16.md5 new file mode 100644 index 00000000..fa3574e8 --- /dev/null +++ b/docs/inherit_graph_16.md5 @@ -0,0 +1 @@ +6d3bd24b2253a4d123c462791487b8c7 \ No newline at end of file diff --git a/docs/inherit_graph_16.png b/docs/inherit_graph_16.png new file mode 100644 index 00000000..7d39daaf Binary files /dev/null and b/docs/inherit_graph_16.png differ diff --git a/docs/inherit_graph_17.map b/docs/inherit_graph_17.map new file mode 100644 index 00000000..84e516d0 --- /dev/null +++ b/docs/inherit_graph_17.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/inherit_graph_17.md5 b/docs/inherit_graph_17.md5 new file mode 100644 index 00000000..a826f221 --- /dev/null +++ b/docs/inherit_graph_17.md5 @@ -0,0 +1 @@ +e0a2de7181dafb411020b13fec459c49 \ No newline at end of file diff --git a/docs/inherit_graph_17.png b/docs/inherit_graph_17.png new file mode 100644 index 00000000..e10d6860 Binary files /dev/null and b/docs/inherit_graph_17.png differ diff --git a/docs/inherit_graph_18.map b/docs/inherit_graph_18.map new file mode 100644 index 00000000..3b30ba84 --- /dev/null +++ b/docs/inherit_graph_18.map @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/inherit_graph_18.md5 b/docs/inherit_graph_18.md5 new file mode 100644 index 00000000..86bb5546 --- /dev/null +++ b/docs/inherit_graph_18.md5 @@ -0,0 +1 @@ +b76ffc6c2392cba7f3b0d5fda2e815d2 \ No newline at end of file diff --git a/docs/inherit_graph_18.png b/docs/inherit_graph_18.png new file mode 100644 index 00000000..cd1f0c8f Binary files /dev/null and b/docs/inherit_graph_18.png differ diff --git a/docs/inherit_graph_19.map b/docs/inherit_graph_19.map new file mode 100644 index 00000000..0c01489f --- /dev/null +++ b/docs/inherit_graph_19.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_19.md5 b/docs/inherit_graph_19.md5 new file mode 100644 index 00000000..7cddd237 --- /dev/null +++ b/docs/inherit_graph_19.md5 @@ -0,0 +1 @@ +1c6fe603f7d71dc34e0b6a0599cc9df1 \ No newline at end of file diff --git a/docs/inherit_graph_19.png b/docs/inherit_graph_19.png new file mode 100644 index 00000000..ee0078e2 Binary files /dev/null and b/docs/inherit_graph_19.png differ diff --git a/docs/inherit_graph_2.map b/docs/inherit_graph_2.map new file mode 100644 index 00000000..5d186698 --- /dev/null +++ b/docs/inherit_graph_2.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/inherit_graph_2.md5 b/docs/inherit_graph_2.md5 new file mode 100644 index 00000000..973043d1 --- /dev/null +++ b/docs/inherit_graph_2.md5 @@ -0,0 +1 @@ +9bee5caa2632cab018aacf1d4e857f3e \ No newline at end of file diff --git a/docs/inherit_graph_2.png b/docs/inherit_graph_2.png new file mode 100644 index 00000000..c96ed008 Binary files /dev/null and b/docs/inherit_graph_2.png differ diff --git a/docs/inherit_graph_20.map b/docs/inherit_graph_20.map new file mode 100644 index 00000000..32c862ed --- /dev/null +++ b/docs/inherit_graph_20.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/inherit_graph_20.md5 b/docs/inherit_graph_20.md5 new file mode 100644 index 00000000..5c441d13 --- /dev/null +++ b/docs/inherit_graph_20.md5 @@ -0,0 +1 @@ +a6fbec5484ce048cf16c5bd5b6603f14 \ No newline at end of file diff --git a/docs/inherit_graph_20.png b/docs/inherit_graph_20.png new file mode 100644 index 00000000..11c7e8b3 Binary files /dev/null and b/docs/inherit_graph_20.png differ diff --git a/docs/inherit_graph_21.map b/docs/inherit_graph_21.map new file mode 100644 index 00000000..69637852 --- /dev/null +++ b/docs/inherit_graph_21.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/inherit_graph_21.md5 b/docs/inherit_graph_21.md5 new file mode 100644 index 00000000..845e50d6 --- /dev/null +++ b/docs/inherit_graph_21.md5 @@ -0,0 +1 @@ +dedf87322b82a577dc2530cf47267973 \ No newline at end of file diff --git a/docs/inherit_graph_21.png b/docs/inherit_graph_21.png new file mode 100644 index 00000000..8a26869f Binary files /dev/null and b/docs/inherit_graph_21.png differ diff --git a/docs/inherit_graph_22.map b/docs/inherit_graph_22.map new file mode 100644 index 00000000..6bfb5ac7 --- /dev/null +++ b/docs/inherit_graph_22.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_22.md5 b/docs/inherit_graph_22.md5 new file mode 100644 index 00000000..3bb23f51 --- /dev/null +++ b/docs/inherit_graph_22.md5 @@ -0,0 +1 @@ +6001bceba3d329fd9d61baaacb562521 \ No newline at end of file diff --git a/docs/inherit_graph_22.png b/docs/inherit_graph_22.png new file mode 100644 index 00000000..d742b19b Binary files /dev/null and b/docs/inherit_graph_22.png differ diff --git a/docs/inherit_graph_23.map b/docs/inherit_graph_23.map new file mode 100644 index 00000000..7e4876a0 --- /dev/null +++ b/docs/inherit_graph_23.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/inherit_graph_23.md5 b/docs/inherit_graph_23.md5 new file mode 100644 index 00000000..2ae7460b --- /dev/null +++ b/docs/inherit_graph_23.md5 @@ -0,0 +1 @@ +82b47d33227d62877800c2f4ef1f8c7d \ No newline at end of file diff --git a/docs/inherit_graph_23.png b/docs/inherit_graph_23.png new file mode 100644 index 00000000..43e2cf77 Binary files /dev/null and b/docs/inherit_graph_23.png differ diff --git a/docs/inherit_graph_24.map b/docs/inherit_graph_24.map new file mode 100644 index 00000000..cdb8f4a8 --- /dev/null +++ b/docs/inherit_graph_24.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/inherit_graph_24.md5 b/docs/inherit_graph_24.md5 new file mode 100644 index 00000000..15e87606 --- /dev/null +++ b/docs/inherit_graph_24.md5 @@ -0,0 +1 @@ +41d6545fa4dd210fecaa8e41487493da \ No newline at end of file diff --git a/docs/inherit_graph_24.png b/docs/inherit_graph_24.png new file mode 100644 index 00000000..daac7ce0 Binary files /dev/null and b/docs/inherit_graph_24.png differ diff --git a/docs/inherit_graph_25.map b/docs/inherit_graph_25.map new file mode 100644 index 00000000..57e7680e --- /dev/null +++ b/docs/inherit_graph_25.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_25.md5 b/docs/inherit_graph_25.md5 new file mode 100644 index 00000000..b729350f --- /dev/null +++ b/docs/inherit_graph_25.md5 @@ -0,0 +1 @@ +49aba37959c4058c37a1479356a40699 \ No newline at end of file diff --git a/docs/inherit_graph_25.png b/docs/inherit_graph_25.png new file mode 100644 index 00000000..20e6e3b1 Binary files /dev/null and b/docs/inherit_graph_25.png differ diff --git a/docs/inherit_graph_26.map b/docs/inherit_graph_26.map new file mode 100644 index 00000000..40fe5237 --- /dev/null +++ b/docs/inherit_graph_26.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/inherit_graph_26.md5 b/docs/inherit_graph_26.md5 new file mode 100644 index 00000000..b86404d5 --- /dev/null +++ b/docs/inherit_graph_26.md5 @@ -0,0 +1 @@ +2d67012e657aef4db044fef11987b5a3 \ No newline at end of file diff --git a/docs/inherit_graph_26.png b/docs/inherit_graph_26.png new file mode 100644 index 00000000..029af921 Binary files /dev/null and b/docs/inherit_graph_26.png differ diff --git a/docs/inherit_graph_27.map b/docs/inherit_graph_27.map new file mode 100644 index 00000000..88c651fb --- /dev/null +++ b/docs/inherit_graph_27.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_27.md5 b/docs/inherit_graph_27.md5 new file mode 100644 index 00000000..27febcf7 --- /dev/null +++ b/docs/inherit_graph_27.md5 @@ -0,0 +1 @@ +405b89bc3283b9b252221c63cff5c055 \ No newline at end of file diff --git a/docs/inherit_graph_27.png b/docs/inherit_graph_27.png new file mode 100644 index 00000000..50f9ef8d Binary files /dev/null and b/docs/inherit_graph_27.png differ diff --git a/docs/inherit_graph_28.map b/docs/inherit_graph_28.map new file mode 100644 index 00000000..e34508ef --- /dev/null +++ b/docs/inherit_graph_28.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_28.md5 b/docs/inherit_graph_28.md5 new file mode 100644 index 00000000..6f81d576 --- /dev/null +++ b/docs/inherit_graph_28.md5 @@ -0,0 +1 @@ +ba4253d34f41e0613b7a9f8608c66194 \ No newline at end of file diff --git a/docs/inherit_graph_28.png b/docs/inherit_graph_28.png new file mode 100644 index 00000000..19f4ccea Binary files /dev/null and b/docs/inherit_graph_28.png differ diff --git a/docs/inherit_graph_29.map b/docs/inherit_graph_29.map new file mode 100644 index 00000000..698b8dc2 --- /dev/null +++ b/docs/inherit_graph_29.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_29.md5 b/docs/inherit_graph_29.md5 new file mode 100644 index 00000000..af0d4995 --- /dev/null +++ b/docs/inherit_graph_29.md5 @@ -0,0 +1 @@ +ebac18aa3db03f3055f3150b0ca6aa10 \ No newline at end of file diff --git a/docs/inherit_graph_29.png b/docs/inherit_graph_29.png new file mode 100644 index 00000000..f68c616d Binary files /dev/null and b/docs/inherit_graph_29.png differ diff --git a/docs/inherit_graph_3.map b/docs/inherit_graph_3.map new file mode 100644 index 00000000..ae4a4978 --- /dev/null +++ b/docs/inherit_graph_3.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_3.md5 b/docs/inherit_graph_3.md5 new file mode 100644 index 00000000..6549cd06 --- /dev/null +++ b/docs/inherit_graph_3.md5 @@ -0,0 +1 @@ +aead050755980b25333a42ac722a7280 \ No newline at end of file diff --git a/docs/inherit_graph_3.png b/docs/inherit_graph_3.png new file mode 100644 index 00000000..94c74bd0 Binary files /dev/null and b/docs/inherit_graph_3.png differ diff --git a/docs/inherit_graph_30.map b/docs/inherit_graph_30.map new file mode 100644 index 00000000..b305067b --- /dev/null +++ b/docs/inherit_graph_30.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_30.md5 b/docs/inherit_graph_30.md5 new file mode 100644 index 00000000..a432b146 --- /dev/null +++ b/docs/inherit_graph_30.md5 @@ -0,0 +1 @@ +b1f10fb9cb8920838d4a0967f975045c \ No newline at end of file diff --git a/docs/inherit_graph_30.png b/docs/inherit_graph_30.png new file mode 100644 index 00000000..ebd495c4 Binary files /dev/null and b/docs/inherit_graph_30.png differ diff --git a/docs/inherit_graph_31.map b/docs/inherit_graph_31.map new file mode 100644 index 00000000..cfe50dfb --- /dev/null +++ b/docs/inherit_graph_31.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/inherit_graph_31.md5 b/docs/inherit_graph_31.md5 new file mode 100644 index 00000000..9c955506 --- /dev/null +++ b/docs/inherit_graph_31.md5 @@ -0,0 +1 @@ +aee116c140b5ab68112221134df48ed9 \ No newline at end of file diff --git a/docs/inherit_graph_31.png b/docs/inherit_graph_31.png new file mode 100644 index 00000000..9950a3ca Binary files /dev/null and b/docs/inherit_graph_31.png differ diff --git a/docs/inherit_graph_32.map b/docs/inherit_graph_32.map new file mode 100644 index 00000000..84c3869f --- /dev/null +++ b/docs/inherit_graph_32.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_32.md5 b/docs/inherit_graph_32.md5 new file mode 100644 index 00000000..7fcabff9 --- /dev/null +++ b/docs/inherit_graph_32.md5 @@ -0,0 +1 @@ +779a2fbf4b921350339213cd250d8b11 \ No newline at end of file diff --git a/docs/inherit_graph_32.png b/docs/inherit_graph_32.png new file mode 100644 index 00000000..a1c27e55 Binary files /dev/null and b/docs/inherit_graph_32.png differ diff --git a/docs/inherit_graph_4.map b/docs/inherit_graph_4.map new file mode 100644 index 00000000..8fbfc2b0 --- /dev/null +++ b/docs/inherit_graph_4.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_4.md5 b/docs/inherit_graph_4.md5 new file mode 100644 index 00000000..e747e26f --- /dev/null +++ b/docs/inherit_graph_4.md5 @@ -0,0 +1 @@ +13bc6e6ea6ef5771bcd5e9c8dbd53207 \ No newline at end of file diff --git a/docs/inherit_graph_4.png b/docs/inherit_graph_4.png new file mode 100644 index 00000000..8fa1ac37 Binary files /dev/null and b/docs/inherit_graph_4.png differ diff --git a/docs/inherit_graph_5.map b/docs/inherit_graph_5.map new file mode 100644 index 00000000..d43327e1 --- /dev/null +++ b/docs/inherit_graph_5.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_5.md5 b/docs/inherit_graph_5.md5 new file mode 100644 index 00000000..312c5732 --- /dev/null +++ b/docs/inherit_graph_5.md5 @@ -0,0 +1 @@ +12332aec02a21aa927f918bd2f1eb4f7 \ No newline at end of file diff --git a/docs/inherit_graph_5.png b/docs/inherit_graph_5.png new file mode 100644 index 00000000..3002e755 Binary files /dev/null and b/docs/inherit_graph_5.png differ diff --git a/docs/inherit_graph_6.map b/docs/inherit_graph_6.map new file mode 100644 index 00000000..ab2ab749 --- /dev/null +++ b/docs/inherit_graph_6.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_6.md5 b/docs/inherit_graph_6.md5 new file mode 100644 index 00000000..358aff62 --- /dev/null +++ b/docs/inherit_graph_6.md5 @@ -0,0 +1 @@ +ae1245fb8ac363453aeb6add3cf1b2c5 \ No newline at end of file diff --git a/docs/inherit_graph_6.png b/docs/inherit_graph_6.png new file mode 100644 index 00000000..f67a0515 Binary files /dev/null and b/docs/inherit_graph_6.png differ diff --git a/docs/inherit_graph_7.map b/docs/inherit_graph_7.map new file mode 100644 index 00000000..524b8390 --- /dev/null +++ b/docs/inherit_graph_7.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/inherit_graph_7.md5 b/docs/inherit_graph_7.md5 new file mode 100644 index 00000000..98bf1dd5 --- /dev/null +++ b/docs/inherit_graph_7.md5 @@ -0,0 +1 @@ +f822a93fe620175f73af5fafad87f915 \ No newline at end of file diff --git a/docs/inherit_graph_7.png b/docs/inherit_graph_7.png new file mode 100644 index 00000000..8a43b09b Binary files /dev/null and b/docs/inherit_graph_7.png differ diff --git a/docs/inherit_graph_8.map b/docs/inherit_graph_8.map new file mode 100644 index 00000000..44fb6cc7 --- /dev/null +++ b/docs/inherit_graph_8.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_8.md5 b/docs/inherit_graph_8.md5 new file mode 100644 index 00000000..c15ee0c0 --- /dev/null +++ b/docs/inherit_graph_8.md5 @@ -0,0 +1 @@ +24adf493a697abeba536faba8fdfad62 \ No newline at end of file diff --git a/docs/inherit_graph_8.png b/docs/inherit_graph_8.png new file mode 100644 index 00000000..d81d956e Binary files /dev/null and b/docs/inherit_graph_8.png differ diff --git a/docs/inherit_graph_9.map b/docs/inherit_graph_9.map new file mode 100644 index 00000000..2fb8132f --- /dev/null +++ b/docs/inherit_graph_9.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/inherit_graph_9.md5 b/docs/inherit_graph_9.md5 new file mode 100644 index 00000000..3fe153d0 --- /dev/null +++ b/docs/inherit_graph_9.md5 @@ -0,0 +1 @@ +bfd6d26dc1b2fc644a657520d1a09e50 \ No newline at end of file diff --git a/docs/inherit_graph_9.png b/docs/inherit_graph_9.png new file mode 100644 index 00000000..60a0a1e1 Binary files /dev/null and b/docs/inherit_graph_9.png differ diff --git a/docs/inherits.html b/docs/inherits.html new file mode 100644 index 00000000..70261743 --- /dev/null +++ b/docs/inherits.html @@ -0,0 +1,335 @@ + + + + + + +ED247 Library: Class Hierarchy + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Class Hierarchy
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + +
+ + + +
+ + + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + + +
+ + + + +
+ + + +
+ + + + +
+ + + + + + +
+ + + +
+ + + + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + + +
+ + + +
+
+
+ + + + diff --git a/docs/jquery.js b/docs/jquery.js new file mode 100644 index 00000000..1f4d0b47 --- /dev/null +++ b/docs/jquery.js @@ -0,0 +1,68 @@ +/*! + * jQuery JavaScript Library v1.7.1 + * http://jquery.com/ + * + * Copyright 2011, John Resig + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * + * Date: Mon Nov 21 21:11:03 2011 -0500 + */ +(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv
a";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="
";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="
t
";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}}); +/*! + * Sizzle CSS Selector Engine + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * More information: http://sizzlejs.com/ + */ +(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},ac=a(av);ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
","
"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b})}})(window);/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/*! + * jQuery UI Widget 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Widget + */ +(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/*! + * jQuery UI Mouse 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Mouse + * + * Depends: + * jquery.ui.widget.js + */ +(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('
').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g
');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(hl.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null;p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/*! + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
+
+
Modules
+
+
+
Here is a list of all modules:
+
[detail level 12]
+ + + + + + + + + + + + + + + + + + +
 Global resources
 ED247 Context
 Initialization
 General information
 Read configuration
 Receive and send
 Receive and send callbacks
 Time management
 Channel
 Channel list
 Stream
 Read and Write
 Stream list
 Signal
 Signal list
 Stream Assistant (read/write signals)
 String conversion
 Deprecated
+ + + + + + + diff --git a/docs/modules.js b/docs/modules.js new file mode 100644 index 00000000..8acdfc0b --- /dev/null +++ b/docs/modules.js @@ -0,0 +1,12 @@ +var modules = +[ + [ "Global resources", "group__global.html", "group__global" ], + [ "ED247 Context", "group__context.html", "group__context" ], + [ "Time management", "group__time.html", "group__time" ], + [ "Channel", "group__channel.html", "group__channel" ], + [ "Stream", "group__stream.html", "group__stream" ], + [ "Signal", "group__signal.html", "group__signal" ], + [ "Stream Assistant (read/write signals)", "group__stream__assistant.html", "group__stream__assistant" ], + [ "String conversion", "group__strings.html", "group__strings" ], + [ "Deprecated", "group__deprecated.html", "group__deprecated" ] +]; \ No newline at end of file diff --git a/docs/nav_f.png b/docs/nav_f.png new file mode 100644 index 00000000..72a58a52 Binary files /dev/null and b/docs/nav_f.png differ diff --git a/docs/nav_g.png b/docs/nav_g.png new file mode 100644 index 00000000..2093a237 Binary files /dev/null and b/docs/nav_g.png differ diff --git a/docs/nav_h.png b/docs/nav_h.png new file mode 100644 index 00000000..33389b10 Binary files /dev/null and b/docs/nav_h.png differ diff --git a/docs/navtree.css b/docs/navtree.css new file mode 100644 index 00000000..1a868b3f --- /dev/null +++ b/docs/navtree.css @@ -0,0 +1,143 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; + outline:none; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:#fff; +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + background-color: #FAFAFF; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: 250px; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background:url("splitbar.png") repeat scroll right center transparent; + cursor:e-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/docs/navtree.js b/docs/navtree.js new file mode 100644 index 00000000..9df45a7d --- /dev/null +++ b/docs/navtree.js @@ -0,0 +1,523 @@ +var navTreeSubIndices = new Array(); + +function getData(varName) +{ + var i = varName.lastIndexOf('/'); + var n = i>=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function hashValue() +{ + return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,''); +} + +function hashUrl() +{ + return '#'+hashValue(); +} + +function pathName() +{ + return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, ''); +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func,show) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + if ($.browser.msie && $.browser.version<=8) { + // script.onload does not work with older versions of IE + script.onreadystatechange = function() { + if (script.readyState=='complete' || script.readyState=='loaded') { + func(); if (show) showRoot(); + } + } + } + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + var level=-1; + var n = node; + while (n.parentNode) { level++; n=n.parentNode; } + if (node.childrenData) { + var imgNode = document.createElement("img"); + imgNode.style.paddingLeft=(16*level).toString()+'px'; + imgNode.width = 16; + imgNode.height = 22; + imgNode.border = 0; + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + node.plus_img.src = node.relpath+"arrowright.png"; + node.expanded = false; + } else { + expandNode(o, node, false, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + imgNode.src = node.relpath+"arrowright.png"; + } else { + var span = document.createElement("span"); + span.style.display = 'inline-block'; + span.style.width = 16*(level+1)+'px'; + span.style.height = '22px'; + span.innerHTML = ' '; + domNode.appendChild(span); + } +} + +var animationInProgress = false; + +function gotoAnchor(anchor,aname,updateLocation) +{ + var pos, docContent = $('#doc-content'); + var ancParent = $(anchor.parent()); + if (ancParent.hasClass('memItemLeft') || + ancParent.hasClass('fieldname') || + ancParent.hasClass('fieldtype') || + ancParent.is(':header')) + { + pos = ancParent.position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + animationInProgress=true; + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + if (updateLocation) window.location.href=aname; + animationInProgress=false; + }); + } +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath(pathName()); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : "javascript:void(0)"; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var anchor = $(aname); + gotoAnchor(anchor,aname,true); + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',0,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, showRoot) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, showRoot); + }, showRoot); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } if (imm || ($.browser.msie && $.browser.version>8)) { + // somehow slideDown jumps to the start of tree for IE9 :-( + $(node.getChildrenUL()).show(); + } else { + $(node.getChildrenUL()).slideDown("fast"); + } + if (node.isLast) { + node.plus_img.src = node.relpath+"arrowdown.png"; + } else { + node.plus_img.src = node.relpath+"arrowdown.png"; + } + node.expanded = true; + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var aname = hashUrl(); + var anchor = $(aname); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+hashValue()+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parent().attr('class')=='fieldname'){ + glowEffect(anchor.parent().parent(),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } + gotoAnchor(anchor,aname,false); +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath(pathName())+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + if ($('#nav-tree-contents .item:first').hasClass('selected')) { + $('#nav-sync').css('top','30px'); + } else { + $('#nav-sync').css('top','5px'); + } + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + },true); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).css({'display':'block'}); + node.plus_img.src = node.relpath+"arrowdown.png"; + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1].replace(/[^\w\-]/g,''); + else hash=''; + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + },true); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2(pathName())+hashUrl()); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("img"); + o.node.plus_img.src = relpath+"arrowright.png"; + o.node.plus_img.width = 16; + o.node.plus_img.height = 22; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + $(window).load(function(){ + navTo(o,toroot,hashUrl(),relpath); + showRoot(); + }); + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath(pathName())+':'+hashValue(); + a=$('.item a[class$="'+clslink.replace(/ + + + + + +ED247 Library: License + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
License
+
+
+

ED247_LIBRARY / LIBED247 is licensed under the terms of:

+
The MIT License
Copyright (c) 2021 Airbus Operations S.A.S
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

This license does not grant any right on the commercial off-the-shelf ("COTS") listed below or listed in any other document prior to dowload the Software. The Sofware shall be used in compliance with the COTS editor’s terms and conditions of use.

+

Neither the name of Airbus Operations S.A.S nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

+

The ED247_LIBRARY / LIBED247 license applies to all parts of LIBED247 that are not externally maintained libraries.

+

The externally maintained libraries used by LIBED247 during runtime are:

+
    +
  • LIBXML2, licensed as follow:
  • +
+
Except where otherwise noted in the source code (e.g. the files hash.c,
list.c and the trio files, which are covered by a similar licence but
with different Copyright notices) all the files are:
Copyright (C) 1998-2012 Daniel Veillard. All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is fur-
nished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FIT-
NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

The other softwares or libraries used for compilation or testing purposes only are listed on the main page of the documentation file. The license of these products can be found in their respective source code repository.

+
+
+ + + + diff --git a/docs/page_utils.html b/docs/page_utils.html new file mode 100644 index 00000000..9c181b06 --- /dev/null +++ b/docs/page_utils.html @@ -0,0 +1,125 @@ + + + + + + +ED247 Library: Tools + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Tools
+
+
+

+loadonly

+

Load ECIC to check its validity.

1 loadonly <ecic_filepath>

+chatbot

+

Load an ECIC file and sends as many dummy messages as possible regarding the sample max number of associated stream.

1 chatbot <ecic_filepath> <timestep_ms> <loop_count>

+dumper

+

Dump received messages into a CSV file (or stdout). The first line of the file contains the header of recorded data.

1 dumper <ecic_filepath> <dump_filepath> <timeout_ms>
2 dumper <ecic_filepath> <timeout_ms>
+
+ + + + diff --git a/docs/pages.html b/docs/pages.html new file mode 100644 index 00000000..7af40d85 --- /dev/null +++ b/docs/pages.html @@ -0,0 +1,126 @@ + + + + + + +ED247 Library: Related Pages + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Related Pages
+
+
+
Here is a list of all related documentation pages:
+
+
+ + + + diff --git a/docs/resize.js b/docs/resize.js new file mode 100644 index 00000000..2b86c36c --- /dev/null +++ b/docs/resize.js @@ -0,0 +1,97 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).outerWidth(); + content.css({marginLeft:parseInt(sidenavWidth)+"px"}); + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.outerHeight(); + var footerHeight = footer.outerHeight(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(document).bind('touchmove',function(e){ + var device = navigator.userAgent.toLowerCase(); + var ios = device.match(/(iphone|ipod|ipad)/); + if (ios) { + try { + var target = e.target; + while (target) { + if ($(target).css('-webkit-overflow-scrolling')=='touch') return; + target = target.parentNode; + } + e.preventDefault(); + } catch(err) { + e.preventDefault(); + } + } + }); +} + + diff --git a/docs/schemas.html b/docs/schemas.html new file mode 100644 index 00000000..0f193469 --- /dev/null +++ b/docs/schemas.html @@ -0,0 +1,123 @@ + + + + + + +ED247 Library: Configuration files + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Configuration files
+
+
+

+ECD XSD file

+
1 <?xml version="1.0" encoding="UTF-8"?>
2 
3 <!--
4 The MIT Licence
5 
6 Copyright (c) 2021 Airbus Operations S.A.S
7 
8 Permission is hereby granted, free of charge, to any person obtaining a
9 copy of this software and associated documentation files (the "Software"),
10 to deal in the Software without restriction, including without limitation
11 the rights to use, copy, modify, merge, publish, distribute, sublicense,
12 and/or sell copies of the Software, and to permit persons to whom the
13 Software is furnished to do so, subject to the following conditions:
14 
15 The above copyright notice and this permission notice shall be included
16 in all copies or substantial portions of the Software.
17 
18 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
24 DEALINGS IN THE SOFTWARE.
25 -->
26 
27 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified" attributeFormDefault="unqualified" version="1.0.0">
28 
29  <!-- Atomic types -->
30 
31  <xs:simpleType name="component_type_type">
32  <xs:restriction base="xs:normalizedString">
33  <xs:enumeration value="Virtual"/>
34  <xs:enumeration value="Bridge"/>
35  </xs:restriction>
36  </xs:simpleType>
37 
38  <xs:simpleType name="standard_revision_type">
39  <xs:restriction base="xs:normalizedString">
40  <xs:enumeration value="-"/>
41  <xs:enumeration value="A"/>
42  </xs:restriction>
43  </xs:simpleType>
44 
45  <xs:simpleType name="ip_address_type">
46  <xs:restriction base="xs:normalizedString">
47  <xs:pattern value="(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"/>
48  </xs:restriction>
49  </xs:simpleType>
50 
51  <xs:simpleType name="empty_or_ip_address_type">
52  <xs:restriction base="xs:normalizedString">
53  <xs:pattern value="((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))?"/>
54  </xs:restriction>
55  </xs:simpleType>
56 
57  <xs:simpleType name="ip_port_type">
58  <xs:restriction base="xs:nonNegativeInteger">
59  <xs:minInclusive value="1"/>
60  <xs:maxInclusive value="65535"/>
61  </xs:restriction>
62  </xs:simpleType>
63 
64  <xs:simpleType name="null_or_ip_port_type">
65  <xs:restriction base="xs:nonNegativeInteger">
66  <xs:minInclusive value="0"/>
67  <xs:maxInclusive value="65535"/>
68  </xs:restriction>
69  </xs:simpleType>
70 
71  <xs:simpleType name="yes_no_type">
72  <xs:restriction base="xs:normalizedString">
73  <xs:enumeration value="Yes"/>
74  <xs:enumeration value="No"/>
75  </xs:restriction>
76  </xs:simpleType>
77 
78  <xs:simpleType name="direction_single_type">
79  <xs:restriction base="xs:normalizedString">
80  <xs:enumeration value="In"/>
81  <xs:enumeration value="Out"/>
82  </xs:restriction>
83  </xs:simpleType>
84 
85  <xs:simpleType name="direction_bidir_type">
86  <xs:restriction base="xs:normalizedString">
87  <xs:enumeration value="In"/>
88  <xs:enumeration value="Out"/>
89  <xs:enumeration value="InOut"/>
90  </xs:restriction>
91  </xs:simpleType>
92 
93  <xs:simpleType name="a429_label_type">
94  <xs:restriction base="xs:normalizedString">
95  </xs:restriction>
96  </xs:simpleType>
97 
98  <xs:simpleType name="a429_sdi_type">
99  <xs:restriction base="xs:normalizedString">
100  <xs:enumeration value="00"/>
101  <xs:enumeration value="01"/>
102  <xs:enumeration value="10"/>
103  <xs:enumeration value="11"/>
104  <xs:enumeration value="Any"/>
105  </xs:restriction>
106  </xs:simpleType>
107 
108  <xs:simpleType name="a825_identifier_type">
109  <xs:restriction base="xs:normalizedString">
110  </xs:restriction>
111  </xs:simpleType>
112 
113  <xs:simpleType name="a825_lcc_type">
114  <xs:restriction base="xs:normalizedString">
115  <xs:enumeration value="000"/>
116  <xs:enumeration value="001"/>
117  <xs:enumeration value="010"/>
118  <xs:enumeration value="011"/>
119  <xs:enumeration value="100"/>
120  <xs:enumeration value="101"/>
121  <xs:enumeration value="110"/>
122  <xs:enumeration value="111"/>
123  </xs:restriction>
124  </xs:simpleType>
125 
126  <xs:simpleType name="electrical_unit_type">
127  <xs:restriction base="xs:normalizedString">
128  </xs:restriction>
129  </xs:simpleType>
130 
131  <xs:simpleType name="nad_type">
132  <xs:restriction base="xs:normalizedString">
133  <xs:enumeration value="int8"/>
134  <xs:enumeration value="int16"/>
135  <xs:enumeration value="int32"/>
136  <xs:enumeration value="int64"/>
137  <xs:enumeration value="uint8"/>
138  <xs:enumeration value="uint16"/>
139  <xs:enumeration value="uint32"/>
140  <xs:enumeration value="uint64"/>
141  <xs:enumeration value="float32"/>
142  <xs:enumeration value="float64"/>
143  </xs:restriction>
144  </xs:simpleType>
145 
146  <xs:simpleType name="dimensions_type">
147  <xs:restriction base="xs:normalizedString">
148  <xs:pattern value="([1-9][0-9]*)([xX][1-9][0-9]*)*"/>
149  </xs:restriction>
150  </xs:simpleType>
151 
152  <xs:simpleType name="m1553_address_type">
153  <xs:restriction base="xs:nonNegativeInteger">
154  <xs:maxInclusive value="31"/>
155  </xs:restriction>
156  </xs:simpleType>
157 
158  <xs:simpleType name="eth_frame_layer_type">
159  <xs:restriction base="xs:normalizedString">
160  <xs:enumeration value="Physical"/>
161  <xs:enumeration value="DataLink"/>
162  <xs:enumeration value="Network"/>
163  <xs:enumeration value="Transport"/>
164  <xs:enumeration value="Session"/>
165  <xs:enumeration value="Presentation"/>
166  <xs:enumeration value="Application"/>
167  </xs:restriction>
168  </xs:simpleType>
169 
170  <!-- Complex types -->
171 
172  <xs:complexType name="enable_type_no">
173  <xs:attribute name="Enable" type="yes_no_type" default="No"/>
174  </xs:complexType>
175 
176  <xs:complexType name="enable_type_yes">
177  <xs:attribute name="Enable" type="yes_no_type" default="Yes"/>
178  </xs:complexType>
179 
180  <xs:complexType name="capable_type_no">
181  <xs:attribute name="Capable" type="yes_no_type" default="No"/>
182  </xs:complexType>
183 
184  <xs:complexType name="capable_type_yes">
185  <xs:attribute name="Capable" type="yes_no_type" default="Yes"/>
186  </xs:complexType>
187 
188  <xs:complexType name="need_type_no">
189  <xs:attribute name="Need" type="yes_no_type" default="No"/>
190  </xs:complexType>
191 
192  <xs:complexType name="need_type_yes">
193  <xs:attribute name="Need" type="yes_no_type" default="Yes"/>
194  </xs:complexType>
195 
196  <xs:complexType name="data_timestamp_type">
197  <xs:complexContent>
198  <xs:extension base="enable_type_no">
199  <xs:attribute name="SampleDataTimestampOffset" type="yes_no_type" default="No"/>
200  </xs:extension>
201  </xs:complexContent>
202  </xs:complexType>
203 
204  <xs:complexType name="data_timestamp_capa_type">
205  <xs:complexContent>
206  <xs:extension base="capable_type_yes">
207  <xs:attribute name="SampleDataTimestampOffset" type="yes_no_type" default="No"/>
208  </xs:extension>
209  </xs:complexContent>
210  </xs:complexType>
211 
212  <xs:complexType name="data_timestamp_need_type">
213  <xs:complexContent>
214  <xs:extension base="need_type_yes">
215  <xs:attribute name="SampleDataTimestampOffset" type="yes_no_type" default="No"/>
216  </xs:extension>
217  </xs:complexContent>
218  </xs:complexType>
219 
220  <xs:complexType name="signal_abstract_type" abstract="true">
221  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
222  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
223  <xs:attribute name="Comment" type="xs:string" default=""/>
224  </xs:complexType>
225 
226  <xs:complexType name="signals_abstract_type" abstract="true">
227  <xs:attribute name="SamplingPeriodUs" type="xs:nonNegativeInteger" default="0"/>
228  </xs:complexType>
229 
230  <!-- A429 -->
231 
232  <xs:complexType name="a429_packet_strategy_type">
233  <xs:all>
234  <xs:element name="Periodic" minOccurs="0">
235  <xs:complexType>
236  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
237  </xs:complexType>
238  </xs:element>
239  <xs:element name="Gap" minOccurs="0">
240  <xs:complexType>
241  <xs:attribute name="DurationNs" type="xs:positiveInteger" use="required"/>
242  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
243  </xs:complexType>
244  </xs:element>
245  <xs:element name="TriggerWords" minOccurs="0">
246  <xs:complexType>
247  <xs:sequence>
248  <xs:element name="TriggerWord" maxOccurs="unbounded">
249  <xs:complexType>
250  <xs:attribute name="Label" type="a429_label_type" use="required"/>
251  <xs:attribute name="SDI" type="a429_sdi_type" default="Any"/>
252  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
253  </xs:complexType>
254  </xs:element>
255  </xs:sequence>
256  </xs:complexType>
257  </xs:element>
258  </xs:all>
259  </xs:complexType>
260 
261  <!-- ECD only --> <xs:complexType name="a429_packet_strategy_capa_type">
262  <xs:all>
263  <xs:element name="Gap" type="capable_type_no" minOccurs="0"/>
264  <xs:element name="TriggerWords" type="capable_type_no" minOccurs="0"/>
265  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
266  </xs:all>
267  </xs:complexType>
268 
269  <!-- ECD only --> <xs:complexType name="a429_packet_strategy_need_type">
270  <xs:all>
271  <xs:element name="Periodic" minOccurs="0">
272  <xs:complexType>
273  <xs:complexContent>
274  <xs:extension base="need_type_yes">
275  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
276  </xs:extension>
277  </xs:complexContent>
278  </xs:complexType>
279  </xs:element>
280  <xs:element name="Gap" type="need_type_no" minOccurs="0"/>
281  <xs:element name="TriggerWords" minOccurs="0">
282  <xs:complexType>
283  <xs:complexContent>
284  <xs:extension base="need_type_no">
285  <xs:sequence>
286  <xs:element name="TriggerWord" maxOccurs="unbounded">
287  <xs:complexType>
288  <xs:attribute name="Label" type="a429_label_type" use="required"/>
289  <xs:attribute name="SDI" type="a429_sdi_type" default="Any"/>
290  </xs:complexType>
291  </xs:element>
292  </xs:sequence>
293  </xs:extension>
294  </xs:complexContent>
295  </xs:complexType>
296  </xs:element>
297  </xs:all>
298  </xs:complexType>
299 
300  <xs:complexType name="a429_stream_simple_type">
301  <xs:all>
302  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
303  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
304  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
305  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
306  <!-- EDC only --> <xs:element name="ErrorsCapability" type="capable_type_no" minOccurs="0"/>
307  <!-- EDC only --> <xs:element name="ErrorsNeed" type="need_type_no" minOccurs="0"/>
308  <xs:element name="PacketStrategy" type="a429_packet_strategy_type" minOccurs="0"/>
309  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="a429_packet_strategy_capa_type" minOccurs="0"/>
310  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="a429_packet_strategy_need_type" minOccurs="0"/>
311  </xs:all>
312  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
313  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
314  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
315  <xs:attribute name="Comment" type="xs:string" default=""/>
316  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
317  </xs:complexType>
318 
319  <xs:complexType name="a429_stream_multi_type">
320  <xs:complexContent>
321  <xs:extension base="a429_stream_simple_type">
322  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
323  </xs:extension>
324  </xs:complexContent>
325  </xs:complexType>
326 
327  <!-- A825 -->
328 
329  <xs:complexType name="a825_packet_strategy_type">
330  <xs:all>
331  <xs:element name="Periodic" minOccurs="0">
332  <xs:complexType>
333  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
334  </xs:complexType>
335  </xs:element>
336  <xs:element name="Frames" minOccurs="0">
337  <xs:complexType>
338  <xs:sequence>
339  <xs:element name="Frame" minOccurs="0" maxOccurs="unbounded">
340  <xs:complexType>
341  <xs:attribute name="Identifier" type="a825_identifier_type" use="required"/>
342  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
343  </xs:complexType>
344  </xs:element>
345  <xs:element name="LCC" minOccurs="0" maxOccurs="unbounded">
346  <xs:complexType>
347  <xs:attribute name="LCC" type="a825_lcc_type" use="required"/>
348  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
349  </xs:complexType>
350  </xs:element>
351  </xs:sequence>
352  </xs:complexType>
353  </xs:element>
354  </xs:all>
355  </xs:complexType>
356 
357  <!-- ECD only --> <xs:complexType name="a825_packet_strategy_capa_type">
358  <xs:all>
359  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
360  <xs:element name="Frames" type="capable_type_no" minOccurs="0"/>
361  </xs:all>
362  </xs:complexType>
363 
364  <!-- ECD only --> <xs:complexType name="a825_packet_strategy_need_type">
365  <xs:all>
366  <xs:element name="Periodic" minOccurs="0">
367  <xs:complexType>
368  <xs:complexContent>
369  <xs:extension base="need_type_yes">
370  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
371  </xs:extension>
372  </xs:complexContent>
373  </xs:complexType>
374  </xs:element>
375  <xs:element name="Frames" minOccurs="0">
376  <xs:complexType>
377  <xs:complexContent>
378  <xs:extension base="need_type_no">
379  <xs:sequence>
380  <xs:element name="Frame" minOccurs="0" maxOccurs="unbounded">
381  <xs:complexType>
382  <xs:attribute name="Identifier" type="a825_identifier_type" use="required"/>
383  </xs:complexType>
384  </xs:element>
385  <xs:element name="LCC" minOccurs="0" maxOccurs="unbounded">
386  <xs:complexType>
387  <xs:attribute name="LCC" type="a825_lcc_type" use="required"/>
388  </xs:complexType>
389  </xs:element>
390  </xs:sequence>
391  </xs:extension>
392  </xs:complexContent>
393  </xs:complexType>
394  </xs:element>
395  </xs:all>
396  </xs:complexType>
397 
398  <xs:complexType name="a825_stream_simple_type">
399  <xs:all>
400  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
401  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
402  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
403  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
404  <!-- EDC only --> <xs:element name="ErrorsCapability" type="capable_type_no" minOccurs="0"/>
405  <!-- EDC only --> <xs:element name="ErrorsNeed" type="need_type_no" minOccurs="0"/>
406  <xs:element name="PacketStrategy" type="a825_packet_strategy_type" minOccurs="0"/>
407  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="a825_packet_strategy_capa_type" minOccurs="0"/>
408  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="a825_packet_strategy_need_type" minOccurs="0"/>
409  </xs:all>
410  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
411  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
412  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
413  <xs:attribute name="Comment" type="xs:string" default=""/>
414  </xs:complexType>
415 
416  <xs:complexType name="a825_stream_multi_type">
417  <xs:complexContent>
418  <xs:extension base="a825_stream_simple_type">
419  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
420  </xs:extension>
421  </xs:complexContent>
422  </xs:complexType>
423 
424  <!-- A664 -->
425 
426  <xs:complexType name="a664_packet_strategy_type">
427  <xs:all>
428  <xs:element name="Periodic" minOccurs="0">
429  <xs:complexType>
430  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
431  </xs:complexType>
432  </xs:element>
433  </xs:all>
434  </xs:complexType>
435 
436  <!-- ECD only --> <xs:complexType name="a664_packet_strategy_capa_type">
437  <xs:all>
438  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
439  </xs:all>
440  </xs:complexType>
441 
442  <!-- ECD only --> <xs:complexType name="a664_packet_strategy_need_type">
443  <xs:all>
444  <xs:element name="Periodic" minOccurs="0">
445  <xs:complexType>
446  <xs:complexContent>
447  <xs:extension base="need_type_yes">
448  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
449  </xs:extension>
450  </xs:complexContent>
451  </xs:complexType>
452  </xs:element>
453  </xs:all>
454  </xs:complexType>
455 
456  <xs:complexType name="a664_stream_simple_type">
457  <xs:all>
458  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
459  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
460  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
461  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
462  <!-- EDC only --> <xs:element name="ErrorsCapability" type="capable_type_no" minOccurs="0"/>
463  <!-- EDC only --> <xs:element name="ErrorsNeed" type="need_type_no" minOccurs="0"/>
464  <xs:element name="PacketStrategy" type="a664_packet_strategy_type" minOccurs="0"/>
465  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="a664_packet_strategy_capa_type" minOccurs="0"/>
466  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="a664_packet_strategy_need_type" minOccurs="0"/>
467  <xs:element name="MessageSize" type="enable_type_yes" minOccurs="0"/>
468  </xs:all>
469  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
470  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
471  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" default="1471"/>
472  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
473  <xs:attribute name="Comment" type="xs:string" default=""/>
474  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
475  </xs:complexType>
476 
477  <xs:complexType name="a664_stream_multi_type">
478  <xs:complexContent>
479  <xs:extension base="a664_stream_simple_type">
480  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
481  </xs:extension>
482  </xs:complexContent>
483  </xs:complexType>
484 
485  <!-- M1553 -->
486 
487  <xs:complexType name="m1553_packet_strategy_type">
488  <xs:all>
489  <xs:element name="Periodic" minOccurs="0">
490  <xs:complexType>
491  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
492  </xs:complexType>
493  </xs:element>
494  <xs:element name="Messages" minOccurs="0">
495  <xs:complexType>
496  <xs:sequence>
497  <xs:element name="Message" maxOccurs="unbounded">
498  <xs:complexType>
499  <xs:attribute name="CommandWord" type="xs:string" use="required"/>
500  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
501  </xs:complexType>
502  </xs:element>
503  </xs:sequence>
504  </xs:complexType>
505  </xs:element>
506  </xs:all>
507  </xs:complexType>
508 
509  <!-- ECD only --> <xs:complexType name="m1553_packet_strategy_capa_type">
510  <xs:all>
511  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
512  <xs:element name="Messages" type="capable_type_no" minOccurs="0"/>
513  </xs:all>
514  </xs:complexType>
515 
516  <!-- ECD only --> <xs:complexType name="m1553_packet_strategy_need_type">
517  <xs:all>
518  <xs:element name="Periodic" minOccurs="0">
519  <xs:complexType>
520  <xs:complexContent>
521  <xs:extension base="need_type_yes">
522  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
523  </xs:extension>
524  </xs:complexContent>
525  </xs:complexType>
526  </xs:element>
527  <xs:element name="Messages" minOccurs="0">
528  <xs:complexType>
529  <xs:complexContent>
530  <xs:extension base="need_type_no">
531  <xs:sequence>
532  <xs:element name="Message" maxOccurs="unbounded">
533  <xs:complexType>
534  <xs:attribute name="CommandWord" type="xs:string" use="required"/>
535  </xs:complexType>
536  </xs:element>
537  </xs:sequence>
538  </xs:extension>
539  </xs:complexContent>
540  </xs:complexType>
541  </xs:element>
542  </xs:all>
543  </xs:complexType>
544 
545  <xs:complexType name="m1553_stream_simple_type">
546  <xs:all>
547  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
548  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
549  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
550  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
551  <!-- EDC only --> <xs:element name="ErrorsCapability" type="capable_type_no" minOccurs="0"/>
552  <!-- EDC only --> <xs:element name="ErrorsNeed" type="need_type_no" minOccurs="0"/>
553  <xs:element name="PacketStrategy" type="m1553_packet_strategy_type" minOccurs="0"/>
554  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="m1553_packet_strategy_capa_type" minOccurs="0"/>
555  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="m1553_packet_strategy_need_type" minOccurs="0"/>
556  <xs:element name="MessageSize" type="enable_type_yes" minOccurs="0"/>
557  <xs:element name="Terminals">
558  <xs:complexType>
559  <xs:sequence>
560  <xs:element name="Terminal" minOccurs="0" maxOccurs="31">
561  <xs:complexType>
562  <xs:attribute name="Address" type="m1553_address_type" use="required"/>
563  </xs:complexType>
564  </xs:element>
565  </xs:sequence>
566  <xs:attribute name="BCCapable" type="yes_no_type" default="No"/>
567  </xs:complexType>
568  </xs:element>
569  </xs:all>
570  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
571  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
572  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
573  <xs:attribute name="Comment" type="xs:string" default=""/>
574  </xs:complexType>
575 
576  <xs:complexType name="m1553_stream_multi_type">
577  <xs:complexContent>
578  <xs:extension base="m1553_stream_simple_type">
579  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
580  </xs:extension>
581  </xs:complexContent>
582  </xs:complexType>
583 
584  <!-- SERIAL -->
585 
586  <xs:complexType name="serial_packet_strategy_type">
587  <xs:all>
588  <xs:element name="Periodic" minOccurs="0">
589  <xs:complexType>
590  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
591  </xs:complexType>
592  </xs:element>
593  <xs:element name="Gap" minOccurs="0">
594  <xs:complexType>
595  <xs:attribute name="DurationNs" type="xs:positiveInteger" use="required"/>
596  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
597  </xs:complexType>
598  </xs:element>
599  </xs:all>
600  </xs:complexType>
601 
602  <!-- EDC only --> <xs:complexType name="serial_packet_strategy_capa_type">
603  <xs:all>
604  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
605  <xs:element name="Gap" type="capable_type_no" minOccurs="0"/>
606  </xs:all>
607  </xs:complexType>
608 
609  <!-- EDC only --> <xs:complexType name="serial_packet_strategy_need_type">
610  <xs:all>
611  <xs:element name="Periodic" minOccurs="0">
612  <xs:complexType>
613  <xs:complexContent>
614  <xs:extension base="need_type_yes">
615  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
616  </xs:extension>
617  </xs:complexContent>
618  </xs:complexType>
619  </xs:element>
620  <xs:element name="Gap" type="need_type_no" minOccurs="0"/>
621  </xs:all>
622  </xs:complexType>
623 
624  <xs:complexType name="serial_stream_simple_type">
625  <xs:all>
626  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
627  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
628  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
629  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
630  <!-- EDC only --> <xs:element name="ErrorsCapability" type="capable_type_no" minOccurs="0"/>
631  <!-- EDC only --> <xs:element name="ErrorsNeed" type="need_type_no" minOccurs="0"/>
632  <xs:element name="PacketStrategy" type="serial_packet_strategy_type" minOccurs="0"/>
633  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="serial_packet_strategy_capa_type" minOccurs="0"/>
634  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="serial_packet_strategy_need_type" minOccurs="0"/>
635  </xs:all>
636  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
637  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
638  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
639  <xs:attribute name="Comment" type="xs:string" default=""/>
640  <xs:attribute name="Direction" type="direction_bidir_type" use="required"/>
641  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
642  </xs:complexType>
643 
644  <xs:complexType name="serial_stream_multi_type">
645  <xs:complexContent>
646  <xs:extension base="serial_stream_simple_type">
647  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
648  </xs:extension>
649  </xs:complexContent>
650  </xs:complexType>
651 
652  <!-- AUDIO -->
653 
654  <xs:complexType name="audio_packet_strategy_type">
655  <xs:all>
656  <xs:element name="Periodic" minOccurs="0">
657  <xs:complexType>
658  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
659  </xs:complexType>
660  </xs:element>
661  </xs:all>
662  </xs:complexType>
663 
664  <!-- EDC only --> <xs:complexType name="audio_packet_strategy_capa_type">
665  <xs:all>
666  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
667  </xs:all>
668  </xs:complexType>
669 
670  <!-- EDC only --> <xs:complexType name="audio_packet_strategy_need_type">
671  <xs:all>
672  <xs:element name="Periodic" minOccurs="0">
673  <xs:complexType>
674  <xs:complexContent>
675  <xs:extension base="need_type_yes">
676  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
677  </xs:extension>
678  </xs:complexContent>
679  </xs:complexType>
680  </xs:element>
681  </xs:all>
682  </xs:complexType>
683 
684  <xs:complexType name="audio_stream_simple_type">
685  <xs:all>
686  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
687  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
688  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
689  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
690  <!-- EDC only --> <xs:element name="ErrorsCapability" type="capable_type_no" minOccurs="0"/>
691  <!-- EDC only --> <xs:element name="ErrorsNeed" type="need_type_no" minOccurs="0"/>
692  <xs:element name="PacketStrategy" type="audio_packet_strategy_type" minOccurs="0"/>
693  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="audio_packet_strategy_capa_type" minOccurs="0"/>
694  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="audio_packet_strategy_need_type" minOccurs="0"/>
695  <xs:element name="Encoding">
696  <xs:complexType>
697  <xs:sequence>
698  <xs:element name="EncodingParameter" minOccurs="0" maxOccurs="unbounded">
699  <xs:complexType>
700  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
701  <xs:attribute name="Value" type="xs:normalizedString" use="required"/>
702  </xs:complexType>
703  </xs:element>
704  </xs:sequence>
705  <xs:attribute name="Format" type="xs:normalizedString" use="required"/>
706  </xs:complexType>
707  </xs:element>
708  </xs:all>
709  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
710  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
711  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
712  <xs:attribute name="Comment" type="xs:string" default=""/>
713  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
714  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
715  </xs:complexType>
716 
717  <xs:complexType name="audio_stream_multi_type">
718  <xs:complexContent>
719  <xs:extension base="audio_stream_simple_type">
720  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
721  </xs:extension>
722  </xs:complexContent>
723  </xs:complexType>
724 
725  <!-- VIDEO -->
726 
727  <xs:complexType name="video_packet_strategy_type">
728  <xs:all>
729  <xs:element name="Periodic" minOccurs="0">
730  <xs:complexType>
731  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
732  </xs:complexType>
733  </xs:element>
734  </xs:all>
735  </xs:complexType>
736 
737  <!-- EDC only --> <xs:complexType name="video_packet_strategy_capa_type">
738  <xs:all>
739  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
740  </xs:all>
741  </xs:complexType>
742 
743  <!-- EDC only --> <xs:complexType name="video_packet_strategy_need_type">
744  <xs:all>
745  <xs:element name="Periodic" minOccurs="0">
746  <xs:complexType>
747  <xs:complexContent>
748  <xs:extension base="need_type_yes">
749  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
750  </xs:extension>
751  </xs:complexContent>
752  </xs:complexType>
753  </xs:element>
754  </xs:all>
755  </xs:complexType>
756 
757  <xs:complexType name="video_stream_simple_type">
758  <xs:all>
759  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
760  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
761  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
762  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
763  <!-- EDC only --> <xs:element name="ErrorsCapability" type="capable_type_no" minOccurs="0"/>
764  <!-- EDC only --> <xs:element name="ErrorsNeed" type="need_type_no" minOccurs="0"/>
765  <xs:element name="PacketStrategy" type="video_packet_strategy_type" minOccurs="0"/>
766  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="video_packet_strategy_capa_type" minOccurs="0"/>
767  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="video_packet_strategy_need_type" minOccurs="0"/>
768  <xs:element name="Encoding">
769  <xs:complexType>
770  <xs:sequence>
771  <xs:element name="EncodingParameter" minOccurs="0" maxOccurs="unbounded">
772  <xs:complexType>
773  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
774  <xs:attribute name="Value" type="xs:normalizedString" use="required"/>
775  </xs:complexType>
776  </xs:element>
777  </xs:sequence>
778  <xs:attribute name="Format" type="xs:normalizedString" use="required"/>
779  <xs:attribute name="BandwidthBitsPerSec" type="xs:positiveInteger" use="required"/>
780  <xs:attribute name="FramePerSec" type="xs:positiveInteger" use="required"/>
781  <xs:attribute name="ResolutionWidthPx" type="xs:positiveInteger" use="required"/>
782  <xs:attribute name="ResolutionHeightPx" type="xs:positiveInteger" use="required"/>
783  </xs:complexType>
784  </xs:element>
785  </xs:all>
786  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
787  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
788  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
789  <xs:attribute name="Comment" type="xs:string" default=""/>
790  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
791  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
792  </xs:complexType>
793 
794  <xs:complexType name="video_stream_multi_type">
795  <xs:complexContent>
796  <xs:extension base="video_stream_simple_type">
797  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
798  </xs:extension>
799  </xs:complexContent>
800  </xs:complexType>
801 
802  <!-- ETH -->
803 
804  <xs:complexType name="eth_packet_strategy_type">
805  <xs:all>
806  <xs:element name="Periodic" minOccurs="0">
807  <xs:complexType>
808  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
809  </xs:complexType>
810  </xs:element>
811  </xs:all>
812  </xs:complexType>
813 
814  <!-- EDC only --> <xs:complexType name="eth_packet_strategy_capa_type">
815  <xs:all>
816  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
817  </xs:all>
818  </xs:complexType>
819 
820  <!-- EDC only --> <xs:complexType name="eth_packet_strategy_need_type">
821  <xs:all>
822  <xs:element name="Periodic" minOccurs="0">
823  <xs:complexType>
824  <xs:complexContent>
825  <xs:extension base="need_type_yes">
826  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
827  </xs:extension>
828  </xs:complexContent>
829  </xs:complexType>
830  </xs:element>
831  </xs:all>
832  </xs:complexType>
833 
834  <xs:complexType name="eth_stream_simple_type">
835  <xs:all>
836  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
837  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
838  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
839  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
840  <!-- EDC only --> <xs:element name="ErrorsCapability" type="capable_type_no" minOccurs="0"/>
841  <!-- EDC only --> <xs:element name="ErrorsNeed" type="need_type_no" minOccurs="0"/>
842  <xs:element name="PacketStrategy" type="eth_packet_strategy_type" minOccurs="0"/>
843  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="eth_packet_strategy_capa_type" minOccurs="0"/>
844  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="eth_packet_strategy_need_type" minOccurs="0"/>
845  <xs:element name="Frame">
846  <xs:complexType>
847  <xs:attribute name="Layer" type="eth_frame_layer_type" default="Network"/>
848  </xs:complexType>
849  </xs:element>
850  <xs:element name="FrameSize" type="enable_type_yes" minOccurs="0"/>
851  </xs:all>
852  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
853  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
854  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
855  <xs:attribute name="Comment" type="xs:string" default=""/>
856  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
857  </xs:complexType>
858 
859  <xs:complexType name="eth_stream_multi_type">
860  <xs:complexContent>
861  <xs:extension base="eth_stream_simple_type">
862  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
863  </xs:extension>
864  </xs:complexContent>
865  </xs:complexType>
866 
867  <!-- DIS -->
868 
869  <xs:complexType name="dis_signal_type">
870  <xs:complexContent>
871  <xs:extension base="signal_abstract_type">
872  </xs:extension>
873  </xs:complexContent>
874  </xs:complexType>
875 
876  <!-- ECD only --> <xs:complexType name="dis_signal_pool_type">
877  <xs:complexContent>
878  <xs:extension base="dis_signal_type">
879  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
880  <xs:attribute name="SamplingPeriodUs" type="xs:nonNegativeInteger" default="0"/>
881  </xs:extension>
882  </xs:complexContent>
883  </xs:complexType>
884 
885  <xs:complexType name="dis_packet_strategy_type">
886  <xs:all>
887  <xs:element name="Periodic" minOccurs="0">
888  <xs:complexType>
889  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
890  </xs:complexType>
891  </xs:element>
892  <xs:element name="OnTransition" minOccurs="0">
893  <xs:complexType>
894  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
895  </xs:complexType>
896  </xs:element>
897  </xs:all>
898  </xs:complexType>
899 
900  <!-- EDC only --> <xs:complexType name="dis_packet_strategy_capa_type">
901  <xs:all>
902  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
903  <xs:element name="OnTransition" type="capable_type_yes" minOccurs="0"/>
904  </xs:all>
905  </xs:complexType>
906 
907  <!-- EDC only --> <xs:complexType name="dis_packet_strategy_need_type">
908  <xs:all>
909  <xs:element name="Periodic" minOccurs="0">
910  <xs:complexType>
911  <xs:complexContent>
912  <xs:extension base="need_type_yes">
913  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
914  </xs:extension>
915  </xs:complexContent>
916  </xs:complexType>
917  </xs:element>
918  <xs:element name="OnTransition" type="need_type_no" minOccurs="0"/>
919  </xs:all>
920  </xs:complexType>
921 
922  <xs:complexType name="dis_stream_simple_type">
923  <xs:all>
924  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
925  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
926  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
927  <xs:element name="PacketStrategy" type="dis_packet_strategy_type" minOccurs="0"/>
928  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="dis_packet_strategy_capa_type" minOccurs="0"/>
929  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="dis_packet_strategy_need_type" minOccurs="0"/>
930  <xs:element name="Signals">
931  <xs:complexType>
932  <xs:complexContent>
933  <xs:extension base="signals_abstract_type">
934  <xs:sequence>
935  <xs:element name="Signal" maxOccurs="unbounded">
936  <xs:complexType>
937  <xs:complexContent>
938  <xs:extension base="dis_signal_type">
939  <xs:attribute name="ByteOffset" type="xs:nonNegativeInteger"/>
940  </xs:extension>
941  </xs:complexContent>
942  </xs:complexType>
943  </xs:element>
944  </xs:sequence>
945  </xs:extension>
946  </xs:complexContent>
947  </xs:complexType>
948  </xs:element>
949  </xs:all>
950  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
951  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
952  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
953  <xs:attribute name="Comment" type="xs:string" default=""/>
954  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
955  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
956  </xs:complexType>
957 
958  <xs:complexType name="dis_stream_multi_type">
959  <xs:complexContent>
960  <xs:extension base="dis_stream_simple_type">
961  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
962  </xs:extension>
963  </xs:complexContent>
964  </xs:complexType>
965 
966  <!-- ANA -->
967 
968  <xs:complexType name="ana_signal_type">
969  <xs:complexContent>
970  <xs:extension base="signal_abstract_type">
971  <xs:attribute name="ElectricalUnit" type="electrical_unit_type" default=""/>
972  </xs:extension>
973  </xs:complexContent>
974  </xs:complexType>
975 
976  <!-- EDC only --> <xs:complexType name="ana_signal_pool_type">
977  <xs:complexContent>
978  <xs:extension base="ana_signal_type">
979  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
980  <xs:attribute name="SamplingPeriodUs" type="xs:nonNegativeInteger" default="0"/>
981  </xs:extension>
982  </xs:complexContent>
983  </xs:complexType>
984 
985  <xs:complexType name="ana_packet_strategy_type">
986  <xs:all>
987  <xs:element name="Periodic" minOccurs="0">
988  <xs:complexType>
989  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
990  </xs:complexType>
991  </xs:element>
992  </xs:all>
993  </xs:complexType>
994 
995  <!-- EDC only --> <xs:complexType name="ana_packet_strategy_capa_type">
996  <xs:all>
997  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
998  </xs:all>
999  </xs:complexType>
1000 
1001  <!-- EDC only --> <xs:complexType name="ana_packet_strategy_need_type">
1002  <xs:all>
1003  <xs:element name="Periodic" minOccurs="0">
1004  <xs:complexType>
1005  <xs:complexContent>
1006  <xs:extension base="need_type_yes">
1007  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
1008  </xs:extension>
1009  </xs:complexContent>
1010  </xs:complexType>
1011  </xs:element>
1012  </xs:all>
1013  </xs:complexType>
1014 
1015  <xs:complexType name="ana_stream_simple_type">
1016  <xs:all>
1017  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
1018  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
1019  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
1020  <xs:element name="PacketStrategy" type="ana_packet_strategy_type" minOccurs="0"/>
1021  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="ana_packet_strategy_capa_type" minOccurs="0"/>
1022  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="ana_packet_strategy_need_type" minOccurs="0"/>
1023  <xs:element name="Signals">
1024  <xs:complexType>
1025  <xs:complexContent>
1026  <xs:extension base="signals_abstract_type">
1027  <xs:sequence>
1028  <xs:element name="Signal" maxOccurs="unbounded">
1029  <xs:complexType>
1030  <xs:complexContent>
1031  <xs:extension base="ana_signal_type">
1032  <xs:attribute name="ByteOffset" type="xs:nonNegativeInteger"/>
1033  </xs:extension>
1034  </xs:complexContent>
1035  </xs:complexType>
1036  </xs:element>
1037  </xs:sequence>
1038  </xs:extension>
1039  </xs:complexContent>
1040  </xs:complexType>
1041  </xs:element>
1042  </xs:all>
1043  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
1044  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
1045  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
1046  <xs:attribute name="Comment" type="xs:string" default=""/>
1047  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
1048  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
1049  </xs:complexType>
1050 
1051  <xs:complexType name="ana_stream_multi_type">
1052  <xs:complexContent>
1053  <xs:extension base="ana_stream_simple_type">
1054  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
1055  </xs:extension>
1056  </xs:complexContent>
1057  </xs:complexType>
1058 
1059  <!-- NAD -->
1060 
1061  <xs:complexType name="nad_signal_type">
1062  <xs:complexContent>
1063  <xs:extension base="signal_abstract_type">
1064  <xs:attribute name="Type" type="nad_type" use="required"/>
1065  <xs:attribute name="Unit" type="xs:normalizedString" default=""/>
1066  <xs:attribute name="Dimensions" type="dimensions_type" default="1"/>
1067  </xs:extension>
1068  </xs:complexContent>
1069  </xs:complexType>
1070 
1071  <!-- EDC only --> <xs:complexType name="nad_signal_pool_type">
1072  <xs:complexContent>
1073  <xs:extension base="nad_signal_type">
1074  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
1075  <xs:attribute name="SamplingPeriodUs" type="xs:nonNegativeInteger" default="0"/>
1076  </xs:extension>
1077  </xs:complexContent>
1078  </xs:complexType>
1079 
1080  <xs:complexType name="nad_packet_strategy_type">
1081  <xs:all>
1082  <xs:element name="Periodic" minOccurs="0">
1083  <xs:complexType>
1084  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
1085  </xs:complexType>
1086  </xs:element>
1087  </xs:all>
1088  </xs:complexType>
1089 
1090  <!-- EDC only --> <xs:complexType name="nad_packet_strategy_capa_type">
1091  <xs:all>
1092  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
1093  </xs:all>
1094  </xs:complexType>
1095 
1096  <!-- EDC only --> <xs:complexType name="nad_packet_strategy_need_type">
1097  <xs:all>
1098  <xs:element name="Periodic" minOccurs="0">
1099  <xs:complexType>
1100  <xs:complexContent>
1101  <xs:extension base="need_type_yes">
1102  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
1103  </xs:extension>
1104  </xs:complexContent>
1105  </xs:complexType>
1106  </xs:element>
1107  </xs:all>
1108  </xs:complexType>
1109 
1110  <xs:complexType name="nad_stream_simple_type">
1111  <xs:all>
1112  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
1113  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
1114  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
1115  <xs:element name="PacketStrategy" type="nad_packet_strategy_type" minOccurs="0"/>
1116  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="nad_packet_strategy_capa_type" minOccurs="0"/>
1117  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="nad_packet_strategy_need_type" minOccurs="0"/>
1118  <xs:element name="Signals">
1119  <xs:complexType>
1120  <xs:complexContent>
1121  <xs:extension base="signals_abstract_type">
1122  <xs:sequence>
1123  <xs:element name="Signal" maxOccurs="unbounded">
1124  <xs:complexType>
1125  <xs:complexContent>
1126  <xs:extension base="nad_signal_type">
1127  <xs:attribute name="ByteOffset" type="xs:nonNegativeInteger"/>
1128  </xs:extension>
1129  </xs:complexContent>
1130  </xs:complexType>
1131  </xs:element>
1132  </xs:sequence>
1133  </xs:extension>
1134  </xs:complexContent>
1135  </xs:complexType>
1136  </xs:element>
1137  </xs:all>
1138  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
1139  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
1140  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
1141  <xs:attribute name="Comment" type="xs:string" default=""/>
1142  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
1143  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
1144  </xs:complexType>
1145 
1146  <xs:complexType name="nad_stream_multi_type">
1147  <xs:complexContent>
1148  <xs:extension base="nad_stream_simple_type">
1149  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
1150  </xs:extension>
1151  </xs:complexContent>
1152  </xs:complexType>
1153 
1154  <!-- VNAD -->
1155 
1156  <xs:complexType name="vnad_signal_type">
1157  <xs:complexContent>
1158  <xs:extension base="signal_abstract_type">
1159  <xs:attribute name="Type" type="nad_type" use="required"/>
1160  <!-- The MaxLenght attribute was an error,
1161  the correct one is the *required* attribute MaxNumber.
1162  This XSD support any of them for backward compatibility.
1163  -->
1164  <xs:attribute name="MaxNumber" type="xs:positiveInteger" use="optional"/>
1165  <xs:attribute name="MaxLength" type="xs:positiveInteger" use="optional"/>
1166  <xs:attribute name="Unit" type="xs:normalizedString" default=""/>
1167  </xs:extension>
1168  </xs:complexContent>
1169  </xs:complexType>
1170 
1171  <!-- EDC only --> <xs:complexType name="vnad_signal_pool_type">
1172  <xs:complexContent>
1173  <xs:extension base="vnad_signal_type">
1174  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
1175  <xs:attribute name="SamplingPeriodUs" type="xs:nonNegativeInteger" default="0"/>
1176  </xs:extension>
1177  </xs:complexContent>
1178  </xs:complexType>
1179 
1180  <xs:complexType name="vnad_packet_strategy_type">
1181  <xs:all>
1182  <xs:element name="Periodic" minOccurs="0">
1183  <xs:complexType>
1184  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
1185  </xs:complexType>
1186  </xs:element>
1187  </xs:all>
1188  </xs:complexType>
1189 
1190  <!-- EDC only --> <xs:complexType name="vnad_packet_strategy_capa_type">
1191  <xs:all>
1192  <xs:element name="Periodic" type="capable_type_no" minOccurs="0"/>
1193  </xs:all>
1194  </xs:complexType>
1195 
1196  <!-- EDC only --> <xs:complexType name="vnad_packet_strategy_need_type">
1197  <xs:all>
1198  <xs:element name="Periodic" minOccurs="0">
1199  <xs:complexType>
1200  <xs:complexContent>
1201  <xs:extension base="need_type_yes">
1202  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" default="0"/>
1203  </xs:extension>
1204  </xs:complexContent>
1205  </xs:complexType>
1206  </xs:element>
1207  </xs:all>
1208  </xs:complexType>
1209 
1210  <xs:complexType name="vnad_stream_simple_type">
1211  <xs:all>
1212  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
1213  <!-- EDC only --> <xs:element name="DataTimestampCapability" type="data_timestamp_capa_type" minOccurs="0"/>
1214  <!-- EDC only --> <xs:element name="DataTimestampNeed" type="data_timestamp_need_type" minOccurs="0"/>
1215  <xs:element name="PacketStrategy" type="vnad_packet_strategy_type" minOccurs="0"/>
1216  <!-- EDC only --> <xs:element name="PacketStrategyCapabilities" type="vnad_packet_strategy_capa_type" minOccurs="0"/>
1217  <!-- EDC only --> <xs:element name="PacketStrategyNeeds" type="vnad_packet_strategy_need_type" minOccurs="0"/>
1218  <xs:element name="Signals">
1219  <xs:complexType>
1220  <xs:complexContent>
1221  <xs:extension base="signals_abstract_type">
1222  <xs:sequence>
1223  <xs:element name="Signal" maxOccurs="unbounded">
1224  <xs:complexType>
1225  <xs:complexContent>
1226  <xs:extension base="vnad_signal_type">
1227  <xs:attribute name="Position" type="xs:nonNegativeInteger"/>
1228  </xs:extension>
1229  </xs:complexContent>
1230  </xs:complexType>
1231  </xs:element>
1232  </xs:sequence>
1233  </xs:extension>
1234  </xs:complexContent>
1235  </xs:complexType>
1236  </xs:element>
1237  </xs:all>
1238  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
1239  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
1240  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
1241  <xs:attribute name="Comment" type="xs:string" default=""/>
1242  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
1243  </xs:complexType>
1244 
1245  <xs:complexType name="vnad_stream_multi_type">
1246  <xs:complexContent>
1247  <xs:extension base="vnad_stream_simple_type">
1248  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
1249  </xs:extension>
1250  </xs:complexContent>
1251  </xs:complexType>
1252 
1253  <!-- FrameFormat -->
1254 
1255  <xs:complexType name="frame_format_type">
1256  <xs:attribute name="StandardRevision" type="standard_revision_type" use="required"/>
1257  </xs:complexType>
1258 
1259  <!-- ECD only --> <xs:complexType name="frame_format_list_type">
1260  <xs:sequence>
1261  <xs:element name="FrameFormat" type="frame_format_type" minOccurs="1" maxOccurs="unbounded"/>
1262  </xs:sequence>
1263  </xs:complexType>
1264 
1265  <!-- UDP Socket -->
1266 
1267  <xs:complexType name="udp_socket_type">
1268  <xs:attribute name="DstIP" type="ip_address_type" use="required"/>
1269  <xs:attribute name="DstPort" type="ip_port_type" use="required"/>
1270  <xs:attribute name="SrcIP" type="empty_or_ip_address_type" default=""/>
1271  <xs:attribute name="SrcPort" type="null_or_ip_port_type" default="0"/>
1272  <xs:attribute name="MulticastInterfaceIP" type="empty_or_ip_address_type" default=""/>
1273  <xs:attribute name="MulticastTTL" type="xs:positiveInteger" default="1"/>
1274  <xs:attribute name="Direction" type="direction_bidir_type" default="InOut"/>
1275  </xs:complexType>
1276 
1277  <!-- Header -->
1278 
1279  <xs:complexType name="header_type">
1280  <xs:complexContent>
1281  <xs:extension base="enable_type_no">
1282  <xs:attribute name="TransportTimestamp" type="yes_no_type" default="No"/>
1283  </xs:extension>
1284  </xs:complexContent>
1285  </xs:complexType>
1286 
1287  <!-- ECD only --> <xs:complexType name="header_capa_type">
1288  <xs:attribute name="TransportTimestamp" type="yes_no_type" default="No"/>
1289  </xs:complexType>
1290 
1291  <!-- ECD only --> <xs:complexType name="header_need_type">
1292  <xs:attribute name="TransportTimestamp" type="yes_no_type" default="No"/>
1293  </xs:complexType>
1294 
1295  <!-- Pool -->
1296 
1297  <!-- ECD only --> <xs:complexType name="pool_type">
1298  <xs:all>
1299  <xs:element name="FrameFormat" type="frame_format_type" minOccurs="0"/>
1300  <xs:element name="FrameFormatCapabilities" type="frame_format_list_type" minOccurs="0"/>
1301  <xs:element name="FrameFormatNeeds" type="frame_format_list_type" minOccurs="0"/>
1302  <xs:element name="HeaderCapabilities" type="header_capa_type" minOccurs="0"/>
1303  <xs:element name="HeaderNeeds" type="header_need_type" minOccurs="0"/>
1304  <xs:element name="Streams" minOccurs="0">
1305  <xs:complexType>
1306  <xs:choice minOccurs="1" maxOccurs="unbounded">
1307  <xs:element name="A429_Stream" type="a429_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1308  <xs:element name="A825_Stream" type="a825_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1309  <xs:element name="A664_Stream" type="a664_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1310  <xs:element name="M1553_Stream" type="m1553_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1311  <xs:element name="SERIAL_Stream" type="serial_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1312  <xs:element name="AUDIO_Stream" type="audio_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1313  <xs:element name="VIDEO_Stream" type="video_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1314  <xs:element name="ETH_Stream" type="eth_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1315  <xs:element name="DIS_Stream" type="dis_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1316  <xs:element name="ANA_Stream" type="ana_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1317  <xs:element name="NAD_Stream" type="nad_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1318  <xs:element name="VNAD_Stream" type="vnad_stream_simple_type" minOccurs="0" maxOccurs="unbounded"/>
1319  </xs:choice>
1320  </xs:complexType>
1321  </xs:element>
1322  <xs:element name="Signals" minOccurs="0">
1323  <xs:complexType>
1324  <xs:choice minOccurs="1" maxOccurs="unbounded">
1325  <xs:element name="DIS_Signal" type="dis_signal_pool_type" minOccurs="0" maxOccurs="unbounded"/>
1326  <xs:element name="ANA_Signal" type="ana_signal_pool_type" minOccurs="0" maxOccurs="unbounded"/>
1327  <xs:element name="NAD_Signal" type="nad_signal_pool_type" minOccurs="0" maxOccurs="unbounded"/>
1328  <xs:element name="VNAD_Signal" type="vnad_signal_pool_type" minOccurs="0" maxOccurs="unbounded"/>
1329  </xs:choice>
1330  </xs:complexType>
1331  </xs:element>
1332  </xs:all>
1333  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
1334  </xs:complexType>
1335 
1336  <!-- Channel -->
1337 
1338  <xs:complexType name="channel_type">
1339  <xs:all>
1340  <xs:element name="FrameFormat" type="frame_format_type" minOccurs="0"/>
1341  <!-- ECD only --> <xs:element name="FrameFormatCapabilities" type="frame_format_list_type" minOccurs="0"/>
1342  <!-- ECD only --> <xs:element name="FrameFormatNeeds" type="frame_format_list_type" minOccurs="0"/>
1343  <xs:element name="ComInterface" minOccurs="0">
1344  <xs:complexType>
1345  <xs:all>
1346  <xs:element name="UDP_Sockets">
1347  <xs:complexType>
1348  <xs:sequence>
1349  <xs:element name="UDP_Socket" type="udp_socket_type" maxOccurs="unbounded"/>
1350  </xs:sequence>
1351  </xs:complexType>
1352  </xs:element>
1353  </xs:all>
1354  </xs:complexType>
1355  </xs:element>
1356  <xs:element name="Header" type="header_type" minOccurs="0"/>
1357  <!-- ECD only --> <xs:element name="HeaderCapabilities" type="header_capa_type" minOccurs="0"/>
1358  <!-- ECD only --> <xs:element name="HeaderNeeds" type="header_need_type" minOccurs="0"/>
1359  <xs:element name="Stream">
1360  <xs:complexType>
1361  <xs:choice>
1362  <xs:element name="A429_Stream" type="a429_stream_simple_type"/>
1363  <xs:element name="A825_Stream" type="a825_stream_simple_type"/>
1364  <xs:element name="A664_Stream" type="a664_stream_simple_type"/>
1365  <xs:element name="M1553_Stream" type="m1553_stream_simple_type"/>
1366  <xs:element name="SERIAL_Stream" type="serial_stream_simple_type"/>
1367  <xs:element name="AUDIO_Stream" type="audio_stream_simple_type"/>
1368  <xs:element name="VIDEO_Stream" type="video_stream_simple_type"/>
1369  <xs:element name="ETH_Stream" type="eth_stream_simple_type"/>
1370  <xs:element name="DIS_Stream" type="dis_stream_simple_type" />
1371  <xs:element name="ANA_Stream" type="ana_stream_simple_type" />
1372  <xs:element name="NAD_Stream" type="nad_stream_simple_type" />
1373  <xs:element name="VNAD_Stream" type="vnad_stream_simple_type"/>
1374  </xs:choice>
1375  </xs:complexType>
1376  </xs:element>
1377  </xs:all>
1378  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
1379  <xs:attribute name="Comment" type="xs:string" default=""/>
1380  </xs:complexType>
1381 
1382  <!-- MultiChannel -->
1383 
1384  <xs:complexType name="multi_channel_type">
1385  <xs:all>
1386  <xs:element name="FrameFormat" type="frame_format_type" minOccurs="0"/>
1387  <!-- ECD only --> <xs:element name="FrameFormatCapabilities" type="frame_format_list_type" minOccurs="0"/>
1388  <!-- ECD only --> <xs:element name="FrameFormatNeeds" type="frame_format_list_type" minOccurs="0"/>
1389  <xs:element name="ComInterface" minOccurs="0">
1390  <xs:complexType>
1391  <xs:all>
1392  <xs:element name="UDP_Sockets">
1393  <xs:complexType>
1394  <xs:sequence>
1395  <xs:element name="UDP_Socket" type="udp_socket_type" maxOccurs="unbounded"/>
1396  </xs:sequence>
1397  </xs:complexType>
1398  </xs:element>
1399  </xs:all>
1400  </xs:complexType>
1401  </xs:element>
1402  <xs:element name="Header" type="header_type" minOccurs="0"/>
1403  <!-- ECD only --> <xs:element name="HeaderCapabilities" type="header_capa_type" minOccurs="0"/>
1404  <!-- ECD only --> <xs:element name="HeaderNeeds" type="header_need_type" minOccurs="0"/>
1405  <xs:element name="Streams">
1406  <xs:complexType>
1407  <xs:choice minOccurs="1" maxOccurs="unbounded">
1408  <xs:element name="A429_Stream" type="a429_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1409  <xs:element name="A825_Stream" type="a825_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1410  <xs:element name="A664_Stream" type="a664_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1411  <xs:element name="M1553_Stream" type="m1553_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1412  <xs:element name="SERIAL_Stream" type="serial_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1413  <xs:element name="AUDIO_Stream" type="audio_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1414  <xs:element name="VIDEO_Stream" type="video_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1415  <xs:element name="ETH_Stream" type="eth_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1416  <xs:element name="DIS_Stream" type="dis_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1417  <xs:element name="ANA_Stream" type="ana_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1418  <xs:element name="NAD_Stream" type="nad_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1419  <xs:element name="VNAD_Stream" type="vnad_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
1420  </xs:choice>
1421  </xs:complexType>
1422  </xs:element>
1423  </xs:all>
1424  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
1425  <xs:attribute name="Comment" type="xs:string" default=""/>
1426  </xs:complexType>
1427 
1428  <!-- Root -->
1429 
1430  <xs:complexType name="root_type">
1431  <xs:all>
1432  <xs:element name="Pools" minOccurs="0">
1433  <xs:complexType>
1434  <xs:sequence>
1435  <xs:element name="Pool" type="pool_type" minOccurs="0" maxOccurs="unbounded"/>
1436  </xs:sequence>
1437  </xs:complexType>
1438  </xs:element>
1439  <xs:element name="Channels" minOccurs="0">
1440  <xs:complexType>
1441  <xs:sequence>
1442  <xs:element name="Channel" type="channel_type" minOccurs="0" maxOccurs="unbounded"/>
1443  <xs:element name="MultiChannel" type="multi_channel_type" minOccurs="0" maxOccurs="unbounded"/>
1444  </xs:sequence>
1445  </xs:complexType>
1446  </xs:element>
1447  </xs:all>
1448  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
1449  <xs:attribute name="StandardRevision" type="standard_revision_type" use="required"/>
1450  <xs:attribute name="ComponentVersion" type="xs:normalizedString" default=""/>
1451  <xs:attribute name="ComponentType" type="component_type_type" default="Virtual"/>
1452  <xs:attribute name="Comment" type="xs:string" default=""/>
1453  <xs:attribute name="Identifier" type="xs:nonNegativeInteger" default="0"/>
1454  </xs:complexType>
1455 
1456  <!-- Main -->
1457 
1458  <xs:element name="ED247ComponentDescription" type="root_type"/>
1459 
1460 </xs:schema>

+ECIC XSD file

+
1 <?xml version="1.0" encoding="UTF-8"?>
2 
3 <!--
4 The MIT Licence
5 
6 Copyright (c) 2021 Airbus Operations S.A.S
7 
8 Permission is hereby granted, free of charge, to any person obtaining a
9 copy of this software and associated documentation files (the "Software"),
10 to deal in the Software without restriction, including without limitation
11 the rights to use, copy, modify, merge, publish, distribute, sublicense,
12 and/or sell copies of the Software, and to permit persons to whom the
13 Software is furnished to do so, subject to the following conditions:
14 
15 The above copyright notice and this permission notice shall be included
16 in all copies or substantial portions of the Software.
17 
18 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
24 DEALINGS IN THE SOFTWARE.
25 -->
26 
27 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified" attributeFormDefault="unqualified" version="1.0.0">
28 
29  <!-- Atomic types -->
30 
31  <xs:simpleType name="component_type_type">
32  <xs:restriction base="xs:normalizedString">
33  <xs:enumeration value="Virtual"/>
34  <xs:enumeration value="Bridge"/>
35  </xs:restriction>
36  </xs:simpleType>
37 
38  <xs:simpleType name="standard_revision_type">
39  <xs:restriction base="xs:normalizedString">
40  <xs:enumeration value="-"/>
41  <xs:enumeration value="A"/>
42  </xs:restriction>
43  </xs:simpleType>
44 
45  <xs:simpleType name="ip_address_type">
46  <xs:restriction base="xs:normalizedString">
47  <xs:pattern value="(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"/>
48  </xs:restriction>
49  </xs:simpleType>
50 
51  <xs:simpleType name="empty_or_ip_address_type">
52  <xs:restriction base="xs:normalizedString">
53  <xs:pattern value="((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))?"/>
54  </xs:restriction>
55  </xs:simpleType>
56 
57  <xs:simpleType name="ip_port_type">
58  <xs:restriction base="xs:nonNegativeInteger">
59  <xs:minInclusive value="1"/>
60  <xs:maxInclusive value="65535"/>
61  </xs:restriction>
62  </xs:simpleType>
63 
64  <xs:simpleType name="null_or_ip_port_type">
65  <xs:restriction base="xs:nonNegativeInteger">
66  <xs:minInclusive value="0"/>
67  <xs:maxInclusive value="65535"/>
68  </xs:restriction>
69  </xs:simpleType>
70 
71  <xs:simpleType name="yes_no_type">
72  <xs:restriction base="xs:normalizedString">
73  <xs:enumeration value="Yes"/>
74  <xs:enumeration value="No"/>
75  </xs:restriction>
76  </xs:simpleType>
77 
78  <xs:simpleType name="direction_single_type">
79  <xs:restriction base="xs:normalizedString">
80  <xs:enumeration value="In"/>
81  <xs:enumeration value="Out"/>
82  </xs:restriction>
83  </xs:simpleType>
84 
85  <xs:simpleType name="direction_bidir_type">
86  <xs:restriction base="xs:normalizedString">
87  <xs:enumeration value="In"/>
88  <xs:enumeration value="Out"/>
89  <xs:enumeration value="InOut"/>
90  </xs:restriction>
91  </xs:simpleType>
92 
93  <xs:simpleType name="a429_label_type">
94  <xs:restriction base="xs:normalizedString">
95  </xs:restriction>
96  </xs:simpleType>
97 
98  <xs:simpleType name="a429_sdi_type">
99  <xs:restriction base="xs:normalizedString">
100  <xs:enumeration value="00"/>
101  <xs:enumeration value="01"/>
102  <xs:enumeration value="10"/>
103  <xs:enumeration value="11"/>
104  <xs:enumeration value="Any"/>
105  </xs:restriction>
106  </xs:simpleType>
107 
108  <xs:simpleType name="a825_identifier_type">
109  <xs:restriction base="xs:normalizedString">
110  </xs:restriction>
111  </xs:simpleType>
112 
113  <xs:simpleType name="a825_lcc_type">
114  <xs:restriction base="xs:normalizedString">
115  <xs:enumeration value="000"/>
116  <xs:enumeration value="001"/>
117  <xs:enumeration value="010"/>
118  <xs:enumeration value="011"/>
119  <xs:enumeration value="100"/>
120  <xs:enumeration value="101"/>
121  <xs:enumeration value="110"/>
122  <xs:enumeration value="111"/>
123  </xs:restriction>
124  </xs:simpleType>
125 
126  <xs:simpleType name="electrical_unit_type">
127  <xs:restriction base="xs:normalizedString">
128  </xs:restriction>
129  </xs:simpleType>
130 
131  <xs:simpleType name="nad_type">
132  <xs:restriction base="xs:normalizedString">
133  <xs:enumeration value="int8"/>
134  <xs:enumeration value="int16"/>
135  <xs:enumeration value="int32"/>
136  <xs:enumeration value="int64"/>
137  <xs:enumeration value="uint8"/>
138  <xs:enumeration value="uint16"/>
139  <xs:enumeration value="uint32"/>
140  <xs:enumeration value="uint64"/>
141  <xs:enumeration value="float32"/>
142  <xs:enumeration value="float64"/>
143  </xs:restriction>
144  </xs:simpleType>
145 
146  <xs:simpleType name="dimensions_type">
147  <xs:restriction base="xs:normalizedString">
148  <xs:pattern value="([1-9][0-9]*)([xX][1-9][0-9]*)*"/>
149  </xs:restriction>
150  </xs:simpleType>
151 
152  <xs:simpleType name="m1553_address_type">
153  <xs:restriction base="xs:nonNegativeInteger">
154  <xs:maxInclusive value="31"/>
155  </xs:restriction>
156  </xs:simpleType>
157 
158  <xs:simpleType name="eth_frame_layer_type">
159  <xs:restriction base="xs:normalizedString">
160  <xs:enumeration value="Physical"/>
161  <xs:enumeration value="DataLink"/>
162  <xs:enumeration value="Network"/>
163  <xs:enumeration value="Transport"/>
164  <xs:enumeration value="Session"/>
165  <xs:enumeration value="Presentation"/>
166  <xs:enumeration value="Application"/>
167  </xs:restriction>
168  </xs:simpleType>
169 
170  <!-- Complex types -->
171 
172  <xs:complexType name="enable_type_no">
173  <xs:attribute name="Enable" type="yes_no_type" default="No"/>
174  </xs:complexType>
175 
176  <xs:complexType name="enable_type_yes">
177  <xs:attribute name="Enable" type="yes_no_type" default="Yes"/>
178  </xs:complexType>
179 
180  <xs:complexType name="data_timestamp_type">
181  <xs:complexContent>
182  <xs:extension base="enable_type_no">
183  <xs:attribute name="SampleDataTimestampOffset" type="yes_no_type" default="No"/>
184  </xs:extension>
185  </xs:complexContent>
186  </xs:complexType>
187 
188  <xs:complexType name="signal_abstract_type" abstract="true">
189  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
190  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
191  <xs:attribute name="Comment" type="xs:string" default=""/>
192  </xs:complexType>
193 
194  <xs:complexType name="signals_abstract_type" abstract="true">
195  <xs:attribute name="SamplingPeriodUs" type="xs:nonNegativeInteger" default="0"/>
196  </xs:complexType>
197 
198  <!-- A429 -->
199 
200  <xs:complexType name="a429_packet_strategy_type">
201  <xs:all>
202  <xs:element name="Periodic" minOccurs="0">
203  <xs:complexType>
204  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
205  </xs:complexType>
206  </xs:element>
207  <xs:element name="Gap" minOccurs="0">
208  <xs:complexType>
209  <xs:attribute name="DurationNs" type="xs:positiveInteger" use="required"/>
210  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
211  </xs:complexType>
212  </xs:element>
213  <xs:element name="TriggerWords" minOccurs="0">
214  <xs:complexType>
215  <xs:sequence>
216  <xs:element name="TriggerWord" maxOccurs="unbounded">
217  <xs:complexType>
218  <xs:attribute name="Label" type="a429_label_type" use="required"/>
219  <xs:attribute name="SDI" type="a429_sdi_type" default="Any"/>
220  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
221  </xs:complexType>
222  </xs:element>
223  </xs:sequence>
224  </xs:complexType>
225  </xs:element>
226  </xs:all>
227  </xs:complexType>
228 
229  <xs:complexType name="a429_stream_simple_type">
230  <xs:all>
231  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
232  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
233  <xs:element name="PacketStrategy" type="a429_packet_strategy_type" minOccurs="0"/>
234  </xs:all>
235  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
236  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
237  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
238  <xs:attribute name="Comment" type="xs:string" default=""/>
239  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
240  </xs:complexType>
241 
242  <xs:complexType name="a429_stream_multi_type">
243  <xs:complexContent>
244  <xs:extension base="a429_stream_simple_type">
245  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
246  </xs:extension>
247  </xs:complexContent>
248  </xs:complexType>
249 
250  <!-- A825 -->
251 
252  <xs:complexType name="a825_packet_strategy_type">
253  <xs:all>
254  <xs:element name="Periodic" minOccurs="0">
255  <xs:complexType>
256  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
257  </xs:complexType>
258  </xs:element>
259  <xs:element name="Frames" minOccurs="0">
260  <xs:complexType>
261  <xs:sequence>
262  <xs:element name="Frame" minOccurs="0" maxOccurs="unbounded">
263  <xs:complexType>
264  <xs:attribute name="Identifier" type="a825_identifier_type" use="required"/>
265  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
266  </xs:complexType>
267  </xs:element>
268  <xs:element name="LCC" minOccurs="0" maxOccurs="unbounded">
269  <xs:complexType>
270  <xs:attribute name="LCC" type="a825_lcc_type" use="required"/>
271  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
272  </xs:complexType>
273  </xs:element>
274  </xs:sequence>
275  </xs:complexType>
276  </xs:element>
277  </xs:all>
278  </xs:complexType>
279 
280  <xs:complexType name="a825_stream_simple_type">
281  <xs:all>
282  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
283  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
284  <xs:element name="PacketStrategy" type="a825_packet_strategy_type" minOccurs="0"/>
285  </xs:all>
286  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
287  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
288  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
289  <xs:attribute name="Comment" type="xs:string" default=""/>
290  </xs:complexType>
291 
292  <xs:complexType name="a825_stream_multi_type">
293  <xs:complexContent>
294  <xs:extension base="a825_stream_simple_type">
295  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
296  </xs:extension>
297  </xs:complexContent>
298  </xs:complexType>
299 
300  <!-- A664 -->
301 
302  <xs:complexType name="a664_packet_strategy_type">
303  <xs:all>
304  <xs:element name="Periodic" minOccurs="0">
305  <xs:complexType>
306  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
307  </xs:complexType>
308  </xs:element>
309  </xs:all>
310  </xs:complexType>
311 
312  <xs:complexType name="a664_stream_simple_type">
313  <xs:all>
314  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
315  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
316  <xs:element name="PacketStrategy" type="a664_packet_strategy_type" minOccurs="0"/>
317  <xs:element name="MessageSize" type="enable_type_yes" minOccurs="0"/>
318  </xs:all>
319  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
320  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
321  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" default="1471"/>
322  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
323  <xs:attribute name="Comment" type="xs:string" default=""/>
324  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
325  </xs:complexType>
326 
327  <xs:complexType name="a664_stream_multi_type">
328  <xs:complexContent>
329  <xs:extension base="a664_stream_simple_type">
330  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
331  </xs:extension>
332  </xs:complexContent>
333  </xs:complexType>
334 
335  <!-- M1553 -->
336 
337  <xs:complexType name="m1553_packet_strategy_type">
338  <xs:all>
339  <xs:element name="Periodic" minOccurs="0">
340  <xs:complexType>
341  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
342  </xs:complexType>
343  </xs:element>
344  <xs:element name="Messages" minOccurs="0">
345  <xs:complexType>
346  <xs:sequence>
347  <xs:element name="Message" maxOccurs="unbounded">
348  <xs:complexType>
349  <xs:attribute name="CommandWord" type="xs:string" use="required"/>
350  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
351  </xs:complexType>
352  </xs:element>
353  </xs:sequence>
354  </xs:complexType>
355  </xs:element>
356  </xs:all>
357  </xs:complexType>
358 
359  <xs:complexType name="m1553_stream_simple_type">
360  <xs:all>
361  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
362  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
363  <xs:element name="PacketStrategy" type="m1553_packet_strategy_type" minOccurs="0"/>
364  <xs:element name="Terminals">
365  <xs:complexType>
366  <xs:sequence>
367  <xs:element name="Terminal" minOccurs="0" maxOccurs="31">
368  <xs:complexType>
369  <xs:attribute name="Address" type="m1553_address_type" use="required"/>
370  </xs:complexType>
371  </xs:element>
372  </xs:sequence>
373  <xs:attribute name="BCCapable" type="yes_no_type" default="No"/>
374  </xs:complexType>
375  </xs:element>
376  </xs:all>
377  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
378  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
379  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
380  <xs:attribute name="Comment" type="xs:string" default=""/>
381  </xs:complexType>
382 
383  <xs:complexType name="m1553_stream_multi_type">
384  <xs:complexContent>
385  <xs:extension base="m1553_stream_simple_type">
386  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
387  </xs:extension>
388  </xs:complexContent>
389  </xs:complexType>
390 
391  <!-- SERIAL -->
392 
393  <xs:complexType name="serial_packet_strategy_type">
394  <xs:all>
395  <xs:element name="Periodic" minOccurs="0">
396  <xs:complexType>
397  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
398  </xs:complexType>
399  </xs:element>
400  <xs:element name="Gap" minOccurs="0">
401  <xs:complexType>
402  <xs:attribute name="DurationNs" type="xs:positiveInteger" use="required"/>
403  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
404  </xs:complexType>
405  </xs:element>
406  </xs:all>
407  </xs:complexType>
408 
409  <xs:complexType name="serial_stream_simple_type">
410  <xs:all>
411  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
412  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
413  <xs:element name="PacketStrategy" type="serial_packet_strategy_type" minOccurs="0"/>
414  </xs:all>
415  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
416  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
417  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
418  <xs:attribute name="Comment" type="xs:string" default=""/>
419  <xs:attribute name="Direction" type="direction_bidir_type" use="required"/>
420  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
421  </xs:complexType>
422 
423  <xs:complexType name="serial_stream_multi_type">
424  <xs:complexContent>
425  <xs:extension base="serial_stream_simple_type">
426  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
427  </xs:extension>
428  </xs:complexContent>
429  </xs:complexType>
430 
431  <!-- AUDIO -->
432 
433  <xs:complexType name="audio_packet_strategy_type">
434  <xs:all>
435  <xs:element name="Periodic" minOccurs="0">
436  <xs:complexType>
437  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
438  </xs:complexType>
439  </xs:element>
440  </xs:all>
441  </xs:complexType>
442 
443  <xs:complexType name="audio_stream_simple_type">
444  <xs:all>
445  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
446  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
447  <xs:element name="PacketStrategy" type="audio_packet_strategy_type" minOccurs="0"/>
448  <xs:element name="Encoding">
449  <xs:complexType>
450  <xs:sequence>
451  <xs:element name="EncodingParameter" minOccurs="0" maxOccurs="unbounded">
452  <xs:complexType>
453  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
454  <xs:attribute name="Value" type="xs:normalizedString" use="required"/>
455  </xs:complexType>
456  </xs:element>
457  </xs:sequence>
458  <xs:attribute name="Format" type="xs:normalizedString" use="required"/>
459  </xs:complexType>
460  </xs:element>
461  </xs:all>
462  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
463  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
464  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
465  <xs:attribute name="Comment" type="xs:string" default=""/>
466  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
467  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
468  </xs:complexType>
469 
470  <xs:complexType name="audio_stream_multi_type">
471  <xs:complexContent>
472  <xs:extension base="audio_stream_simple_type">
473  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
474  </xs:extension>
475  </xs:complexContent>
476  </xs:complexType>
477 
478  <!-- VIDEO -->
479 
480  <xs:complexType name="video_packet_strategy_type">
481  <xs:all>
482  <xs:element name="Periodic" minOccurs="0">
483  <xs:complexType>
484  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
485  </xs:complexType>
486  </xs:element>
487  </xs:all>
488  </xs:complexType>
489 
490  <xs:complexType name="video_stream_simple_type">
491  <xs:all>
492  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
493  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
494  <xs:element name="PacketStrategy" type="video_packet_strategy_type" minOccurs="0"/>
495  <xs:element name="Encoding">
496  <xs:complexType>
497  <xs:sequence>
498  <xs:element name="EncodingParameter" minOccurs="0" maxOccurs="unbounded">
499  <xs:complexType>
500  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
501  <xs:attribute name="Value" type="xs:normalizedString" use="required"/>
502  </xs:complexType>
503  </xs:element>
504  </xs:sequence>
505  <xs:attribute name="Format" type="xs:normalizedString" use="required"/>
506  <xs:attribute name="BandwidthBitsPerSec" type="xs:positiveInteger" use="required"/>
507  <xs:attribute name="FramePerSec" type="xs:positiveInteger" use="required"/>
508  <xs:attribute name="ResolutionWidthPx" type="xs:positiveInteger" use="required"/>
509  <xs:attribute name="ResolutionHeightPx" type="xs:positiveInteger" use="required"/>
510  </xs:complexType>
511  </xs:element>
512  </xs:all>
513  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
514  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
515  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
516  <xs:attribute name="Comment" type="xs:string" default=""/>
517  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
518  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
519  </xs:complexType>
520 
521  <xs:complexType name="video_stream_multi_type">
522  <xs:complexContent>
523  <xs:extension base="video_stream_simple_type">
524  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
525  </xs:extension>
526  </xs:complexContent>
527  </xs:complexType>
528 
529  <!-- ETH -->
530 
531  <xs:complexType name="eth_packet_strategy_type">
532  <xs:all>
533  <xs:element name="Periodic" minOccurs="0">
534  <xs:complexType>
535  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
536  </xs:complexType>
537  </xs:element>
538  </xs:all>
539  </xs:complexType>
540 
541  <xs:complexType name="eth_stream_simple_type">
542  <xs:all>
543  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
544  <xs:element name="Errors" type="enable_type_no" minOccurs="0"/>
545  <xs:element name="PacketStrategy" type="eth_packet_strategy_type" minOccurs="0"/>
546  <xs:element name="Frame" minOccurs="0">
547  <xs:complexType>
548  <xs:attribute name="Layer" type="eth_frame_layer_type" default="Network"/>
549  </xs:complexType>
550  </xs:element>
551  <xs:element name="FrameSize" type="enable_type_yes" minOccurs="0"/>
552  </xs:all>
553  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
554  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
555  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
556  <xs:attribute name="Comment" type="xs:string" default=""/>
557  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
558  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
559  </xs:complexType>
560 
561  <xs:complexType name="eth_stream_multi_type">
562  <xs:complexContent>
563  <xs:extension base="eth_stream_simple_type">
564  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
565  </xs:extension>
566  </xs:complexContent>
567  </xs:complexType>
568 
569  <!-- DIS -->
570 
571  <xs:complexType name="dis_signal_type">
572  <xs:complexContent>
573  <xs:extension base="signal_abstract_type">
574  </xs:extension>
575  </xs:complexContent>
576  </xs:complexType>
577 
578  <xs:complexType name="dis_packet_strategy_type">
579  <xs:all>
580  <xs:element name="Periodic" minOccurs="0">
581  <xs:complexType>
582  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
583  </xs:complexType>
584  </xs:element>
585  <xs:element name="OnTransition" minOccurs="0">
586  <xs:complexType>
587  <xs:attribute name="ResetPeriodicTimer" type="yes_no_type" default="Yes"/>
588  </xs:complexType>
589  </xs:element>
590  </xs:all>
591  </xs:complexType>
592 
593  <xs:complexType name="dis_stream_simple_type">
594  <xs:all>
595  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
596  <xs:element name="PacketStrategy" type="dis_packet_strategy_type" minOccurs="0"/>
597  <xs:element name="Signals">
598  <xs:complexType>
599  <xs:complexContent>
600  <xs:extension base="signals_abstract_type">
601  <xs:sequence>
602  <xs:element name="Signal" maxOccurs="unbounded">
603  <xs:complexType>
604  <xs:complexContent>
605  <xs:extension base="dis_signal_type">
606  <xs:attribute name="ByteOffset" type="xs:nonNegativeInteger" use="required"/>
607  </xs:extension>
608  </xs:complexContent>
609  </xs:complexType>
610  </xs:element>
611  </xs:sequence>
612  </xs:extension>
613  </xs:complexContent>
614  </xs:complexType>
615  </xs:element>
616  </xs:all>
617  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
618  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
619  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
620  <xs:attribute name="Comment" type="xs:string" default=""/>
621  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
622  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
623  </xs:complexType>
624 
625  <xs:complexType name="dis_stream_multi_type">
626  <xs:complexContent>
627  <xs:extension base="dis_stream_simple_type">
628  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
629  </xs:extension>
630  </xs:complexContent>
631  </xs:complexType>
632 
633  <!-- ANA -->
634 
635  <xs:complexType name="ana_signal_type">
636  <xs:complexContent>
637  <xs:extension base="signal_abstract_type">
638  <xs:attribute name="ElectricalUnit" type="electrical_unit_type" default=""/>
639  </xs:extension>
640  </xs:complexContent>
641  </xs:complexType>
642 
643  <xs:complexType name="ana_packet_strategy_type">
644  <xs:all>
645  <xs:element name="Periodic" minOccurs="0">
646  <xs:complexType>
647  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
648  </xs:complexType>
649  </xs:element>
650  </xs:all>
651  </xs:complexType>
652 
653  <xs:complexType name="ana_stream_simple_type">
654  <xs:all>
655  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
656  <xs:element name="PacketStrategy" type="ana_packet_strategy_type" minOccurs="0"/>
657  <xs:element name="Signals">
658  <xs:complexType>
659  <xs:complexContent>
660  <xs:extension base="signals_abstract_type">
661  <xs:sequence>
662  <xs:element name="Signal" maxOccurs="unbounded">
663  <xs:complexType>
664  <xs:complexContent>
665  <xs:extension base="ana_signal_type">
666  <xs:attribute name="ByteOffset" type="xs:nonNegativeInteger" use="required"/>
667  </xs:extension>
668  </xs:complexContent>
669  </xs:complexType>
670  </xs:element>
671  </xs:sequence>
672  </xs:extension>
673  </xs:complexContent>
674  </xs:complexType>
675  </xs:element>
676  </xs:all>
677  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
678  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
679  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
680  <xs:attribute name="Comment" type="xs:string" default=""/>
681  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
682  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
683  </xs:complexType>
684 
685  <xs:complexType name="ana_stream_multi_type">
686  <xs:complexContent>
687  <xs:extension base="ana_stream_simple_type">
688  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
689  </xs:extension>
690  </xs:complexContent>
691  </xs:complexType>
692 
693  <!-- NAD -->
694 
695  <xs:complexType name="nad_signal_type">
696  <xs:complexContent>
697  <xs:extension base="signal_abstract_type">
698  <xs:attribute name="Type" type="nad_type" use="required"/>
699  <xs:attribute name="Unit" type="xs:normalizedString" default=""/>
700  <xs:attribute name="Dimensions" type="dimensions_type" default="1"/>
701  </xs:extension>
702  </xs:complexContent>
703  </xs:complexType>
704 
705  <xs:complexType name="nad_packet_strategy_type">
706  <xs:all>
707  <xs:element name="Periodic" minOccurs="0">
708  <xs:complexType>
709  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
710  </xs:complexType>
711  </xs:element>
712  </xs:all>
713  </xs:complexType>
714 
715  <xs:complexType name="nad_stream_simple_type">
716  <xs:all>
717  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
718  <xs:element name="PacketStrategy" type="nad_packet_strategy_type" minOccurs="0"/>
719  <xs:element name="Signals">
720  <xs:complexType>
721  <xs:complexContent>
722  <xs:extension base="signals_abstract_type">
723  <xs:sequence>
724  <xs:element name="Signal" maxOccurs="unbounded">
725  <xs:complexType>
726  <xs:complexContent>
727  <xs:extension base="nad_signal_type">
728  <xs:attribute name="ByteOffset" type="xs:nonNegativeInteger" use="required"/>
729  </xs:extension>
730  </xs:complexContent>
731  </xs:complexType>
732  </xs:element>
733  </xs:sequence>
734  </xs:extension>
735  </xs:complexContent>
736  </xs:complexType>
737  </xs:element>
738  </xs:all>
739  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
740  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
741  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
742  <xs:attribute name="Comment" type="xs:string" default=""/>
743  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
744  <xs:attribute name="SampleMaxSizeBytes" type="xs:positiveInteger" use="required"/>
745  </xs:complexType>
746 
747  <xs:complexType name="nad_stream_multi_type">
748  <xs:complexContent>
749  <xs:extension base="nad_stream_simple_type">
750  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
751  </xs:extension>
752  </xs:complexContent>
753  </xs:complexType>
754 
755  <!-- VNAD -->
756 
757  <xs:complexType name="vnad_signal_type">
758  <xs:complexContent>
759  <xs:extension base="signal_abstract_type">
760  <xs:attribute name="Type" type="nad_type" use="required"/>
761  <!-- The MaxLenght attribute was an error,
762  the correct one is the *required* attribute MaxNumber.
763  This XSD support any of them for backward compatibility.
764  -->
765  <xs:attribute name="MaxNumber" type="xs:positiveInteger" use="optional"/>
766  <xs:attribute name="MaxLength" type="xs:positiveInteger" use="optional"/>
767  <xs:attribute name="Unit" type="xs:normalizedString" default=""/>
768  </xs:extension>
769  </xs:complexContent>
770  </xs:complexType>
771 
772  <xs:complexType name="vnad_packet_strategy_type">
773  <xs:all>
774  <xs:element name="Periodic" minOccurs="0">
775  <xs:complexType>
776  <xs:attribute name="PeriodNs" type="xs:nonNegativeInteger" use="required"/>
777  </xs:complexType>
778  </xs:element>
779  </xs:all>
780  </xs:complexType>
781 
782  <xs:complexType name="vnad_stream_simple_type">
783  <xs:all>
784  <xs:element name="DataTimestamp" type="data_timestamp_type" minOccurs="0"/>
785  <xs:element name="PacketStrategy" type="vnad_packet_strategy_type" minOccurs="0"/>
786  <xs:element name="Signals">
787  <xs:complexType>
788  <xs:complexContent>
789  <xs:extension base="signals_abstract_type">
790  <xs:sequence>
791  <xs:element name="Signal" maxOccurs="unbounded">
792  <xs:complexType>
793  <xs:complexContent>
794  <xs:extension base="vnad_signal_type">
795  <xs:attribute name="Position" type="xs:nonNegativeInteger" use="required"/>
796  </xs:extension>
797  </xs:complexContent>
798  </xs:complexType>
799  </xs:element>
800  </xs:sequence>
801  </xs:extension>
802  </xs:complexContent>
803  </xs:complexType>
804  </xs:element>
805  </xs:all>
806  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
807  <xs:attribute name="SampleMaxNumber" type="xs:positiveInteger" default="1"/>
808  <xs:attribute name="ICD" type="xs:normalizedString" default=""/>
809  <xs:attribute name="Comment" type="xs:string" default=""/>
810  <xs:attribute name="Direction" type="direction_single_type" use="required"/>
811  </xs:complexType>
812 
813  <xs:complexType name="vnad_stream_multi_type">
814  <xs:complexContent>
815  <xs:extension base="vnad_stream_simple_type">
816  <xs:attribute name="UID" type="xs:nonNegativeInteger" use="required"/>
817  </xs:extension>
818  </xs:complexContent>
819  </xs:complexType>
820 
821  <!-- FrameFormat -->
822 
823  <xs:complexType name="frame_format_type">
824  <xs:attribute name="StandardRevision" type="standard_revision_type" use="required"/>
825  </xs:complexType>
826 
827  <!-- UDP Socket -->
828 
829  <xs:complexType name="udp_socket_type">
830  <xs:attribute name="DstIP" type="ip_address_type" use="required"/>
831  <xs:attribute name="DstPort" type="ip_port_type" use="required"/>
832  <xs:attribute name="SrcIP" type="xs:string" default=""/>
833  <xs:attribute name="SrcPort" type="null_or_ip_port_type" default="0"/>
834  <xs:attribute name="MulticastInterfaceIP" type="empty_or_ip_address_type" default=""/>
835  <xs:attribute name="MulticastTTL" type="xs:positiveInteger" default="1"/>
836  <xs:attribute name="Direction" type="direction_bidir_type" default="InOut"/>
837  </xs:complexType>
838 
839  <!-- Header -->
840 
841  <xs:complexType name="header_type">
842  <xs:complexContent>
843  <xs:extension base="enable_type_no">
844  <xs:attribute name="TransportTimestamp" type="yes_no_type" default="No"/>
845  </xs:extension>
846  </xs:complexContent>
847  </xs:complexType>
848 
849  <!-- Channel -->
850 
851  <xs:complexType name="channel_type">
852  <xs:all>
853  <xs:element name="FrameFormat" type="frame_format_type"/>
854  <xs:element name="ComInterface">
855  <xs:complexType>
856  <xs:all>
857  <xs:element name="UDP_Sockets">
858  <xs:complexType>
859  <xs:sequence>
860  <xs:element name="UDP_Socket" type="udp_socket_type" maxOccurs="unbounded"/>
861  </xs:sequence>
862  </xs:complexType>
863  </xs:element>
864  </xs:all>
865  </xs:complexType>
866  </xs:element>
867  <xs:element name="Header" type="header_type" minOccurs="0"/>
868  <xs:element name="Stream">
869  <xs:complexType>
870  <xs:choice>
871  <xs:element name="A429_Stream" type="a429_stream_simple_type"/>
872  <xs:element name="A825_Stream" type="a825_stream_simple_type"/>
873  <xs:element name="A664_Stream" type="a664_stream_simple_type"/>
874  <xs:element name="M1553_Stream" type="m1553_stream_simple_type"/>
875  <xs:element name="SERIAL_Stream" type="serial_stream_simple_type"/>
876  <xs:element name="AUDIO_Stream" type="audio_stream_simple_type"/>
877  <xs:element name="VIDEO_Stream" type="video_stream_simple_type"/>
878  <xs:element name="ETH_Stream" type="eth_stream_simple_type"/>
879  <xs:element name="DIS_Stream" type="dis_stream_simple_type" />
880  <xs:element name="ANA_Stream" type="ana_stream_simple_type" />
881  <xs:element name="NAD_Stream" type="nad_stream_simple_type" />
882  <xs:element name="VNAD_Stream" type="vnad_stream_simple_type"/>
883  </xs:choice>
884  </xs:complexType>
885  </xs:element>
886  </xs:all>
887  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
888  <xs:attribute name="Comment" type="xs:string" default=""/>
889  </xs:complexType>
890 
891  <!-- MultiChannel -->
892 
893  <xs:complexType name="multi_channel_type">
894  <xs:all>
895  <xs:element name="FrameFormat" type="frame_format_type"/>
896  <xs:element name="ComInterface">
897  <xs:complexType>
898  <xs:all>
899  <xs:element name="UDP_Sockets">
900  <xs:complexType>
901  <xs:sequence>
902  <xs:element name="UDP_Socket" type="udp_socket_type" maxOccurs="unbounded"/>
903  </xs:sequence>
904  </xs:complexType>
905  </xs:element>
906  </xs:all>
907  </xs:complexType>
908  </xs:element>
909  <xs:element name="Header" type="header_type" minOccurs="0"/>
910  <xs:element name="Streams">
911  <xs:complexType>
912  <xs:choice minOccurs="1" maxOccurs="unbounded">
913  <xs:element name="A429_Stream" type="a429_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
914  <xs:element name="A825_Stream" type="a825_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
915  <xs:element name="A664_Stream" type="a664_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
916  <xs:element name="M1553_Stream" type="m1553_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
917  <xs:element name="SERIAL_Stream" type="serial_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
918  <xs:element name="AUDIO_Stream" type="audio_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
919  <xs:element name="VIDEO_Stream" type="video_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
920  <xs:element name="ETH_Stream" type="eth_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
921  <xs:element name="DIS_Stream" type="dis_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
922  <xs:element name="ANA_Stream" type="ana_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
923  <xs:element name="NAD_Stream" type="nad_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
924  <xs:element name="VNAD_Stream" type="vnad_stream_multi_type" minOccurs="0" maxOccurs="unbounded"/>
925  </xs:choice>
926  </xs:complexType>
927  </xs:element>
928  </xs:all>
929  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
930  <xs:attribute name="Comment" type="xs:string" default=""/>
931  </xs:complexType>
932 
933  <!-- Root -->
934 
935  <xs:complexType name="root_type">
936  <xs:all>
937  <xs:element name="FileProducer" minOccurs="0">
938  <xs:complexType>
939  <xs:attribute name="Identifier" type="xs:normalizedString" default=""/>
940  <xs:attribute name="Comment" type="xs:string" default=""/>
941  </xs:complexType>
942  </xs:element>
943  <xs:element name="Channels">
944  <xs:complexType>
945  <xs:choice minOccurs="1" maxOccurs="unbounded">
946  <xs:element name="Channel" type="channel_type" minOccurs="0" maxOccurs="unbounded"/>
947  <xs:element name="MultiChannel" type="multi_channel_type" minOccurs="0" maxOccurs="unbounded"/>
948  </xs:choice>
949  </xs:complexType>
950  </xs:element>
951  </xs:all>
952  <xs:attribute name="Name" type="xs:normalizedString" use="required"/>
953  <xs:attribute name="StandardRevision" type="standard_revision_type" use="required"/>
954  <xs:attribute name="ComponentVersion" type="xs:normalizedString" default=""/>
955  <xs:attribute name="ComponentType" type="component_type_type" default="Virtual"/>
956  <xs:attribute name="Comment" type="xs:string" default=""/>
957  <xs:attribute name="Identifier" type="xs:nonNegativeInteger" use="required"/>
958  </xs:complexType>
959 
960  <!-- Main -->
961 
962  <xs:element name="ED247ComponentInstanceConfiguration" type="root_type"/>
963 
964 </xs:schema>
+
+ + + + diff --git a/docs/search/all_0.html b/docs/search/all_0.html new file mode 100644 index 00000000..d54e0bd8 --- /dev/null +++ b/docs/search/all_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_0.js b/docs/search/all_0.js new file mode 100644 index 00000000..9e1ea53e --- /dev/null +++ b/docs/search/all_0.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['a429stream',['A429Stream',['../structed247_1_1xml_1_1_a429_stream.html',1,'ed247::xml']]], + ['a664stream',['A664Stream',['../structed247_1_1xml_1_1_a664_stream.html',1,'ed247::xml']]], + ['a825stream',['A825Stream',['../structed247_1_1xml_1_1_a825_stream.html',1,'ed247::xml']]], + ['anasignal',['ANASignal',['../structed247_1_1xml_1_1_a_n_a_signal.html',1,'ed247::xml']]], + ['anastream',['ANAStream',['../structed247_1_1xml_1_1_a_n_a_stream.html',1,'ed247::xml']]] +]; diff --git a/docs/search/all_1.html b/docs/search/all_1.html new file mode 100644 index 00000000..8cc6a1de --- /dev/null +++ b/docs/search/all_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_1.js b/docs/search/all_1.js new file mode 100644 index 00000000..0b9b2aa3 --- /dev/null +++ b/docs/search/all_1.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['cbaselist',['CBaseList',['../class_c_base_list.html',1,'']]], + ['channel',['Channel',['../classed247_1_1_channel.html',1,'ed247']]], + ['channel',['Channel',['../structed247_1_1xml_1_1_channel.html',1,'ed247::xml']]], + ['channel',['Channel',['../group__channel.html',1,'']]], + ['channel_20list',['Channel list',['../group__channel__list.html',1,'']]], + ['channelset',['ChannelSet',['../classed247_1_1_channel_set.html',1,'ed247']]], + ['client_5flist',['client_list',['../structed247_1_1client__list.html',1,'ed247']]], + ['client_5flist_5fcontainer',['client_list_container',['../structed247_1_1client__list__container.html',1,'ed247']]], + ['clientstreamlistwithdata',['ClientStreamListWithData',['../structed247_1_1_client_stream_list_with_data.html',1,'ed247']]], + ['cominterface',['ComInterface',['../structed247_1_1xml_1_1_com_interface.html',1,'ed247::xml']]], + ['cominterface',['ComInterface',['../classed247_1_1udp_1_1_com_interface.html',1,'ed247::udp']]], + ['component',['Component',['../structed247_1_1xml_1_1_component.html',1,'ed247::xml']]], + ['context',['Context',['../classed247_1_1_context.html',1,'ed247']]], + ['configuration_20files',['Configuration files',['../schemas.html',1,'']]] +]; diff --git a/docs/search/all_2.html b/docs/search/all_2.html new file mode 100644 index 00000000..d15ac65f --- /dev/null +++ b/docs/search/all_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_2.js b/docs/search/all_2.js new file mode 100644 index 00000000..d3da04e9 --- /dev/null +++ b/docs/search/all_2.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['datatimestamp',['DataTimestamp',['../structed247_1_1xml_1_1_data_timestamp.html',1,'ed247::xml']]], + ['deprecated',['Deprecated',['../group__deprecated.html',1,'']]], + ['dissignal',['DISSignal',['../structed247_1_1xml_1_1_d_i_s_signal.html',1,'ed247::xml']]], + ['disstream',['DISStream',['../structed247_1_1xml_1_1_d_i_s_stream.html',1,'ed247::xml']]] +]; diff --git a/docs/search/all_3.html b/docs/search/all_3.html new file mode 100644 index 00000000..9f526c67 --- /dev/null +++ b/docs/search/all_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_3.js b/docs/search/all_3.js new file mode 100644 index 00000000..659aca61 --- /dev/null +++ b/docs/search/all_3.js @@ -0,0 +1,144 @@ +var searchData= +[ + ['ed247_20context',['ED247 Context',['../group__context.html',1,'']]], + ['ed247_5fchannel_5ffind_5fstreams',['ed247_channel_find_streams',['../group__channel.html#gabfcc14dde1002df2b85d71163d2da01c',1,'ed247_channel_find_streams(ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp'],['../group__channel.html#gabfcc14dde1002df2b85d71163d2da01c',1,'ed247_channel_find_streams(ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5fchannel_5fget_5fstream',['ed247_channel_get_stream',['../group__channel.html#ga84a4ed6367c10e5b3095689927b007c6',1,'ed247_channel_get_stream(ed247_channel_t channel, const char *name, ed247_stream_t *stream): ed247.cpp'],['../group__channel.html#ga84a4ed6367c10e5b3095689927b007c6',1,'ed247_channel_get_stream(ed247_channel_t channel, const char *name, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fchannel_5fget_5fstream_5flist',['ed247_channel_get_stream_list',['../group__channel.html#ga320b38be99031cea49a2db0bd74fafac',1,'ed247_channel_get_stream_list(ed247_channel_t channel, ed247_stream_list_t *streams): ed247.cpp'],['../group__channel.html#ga320b38be99031cea49a2db0bd74fafac',1,'ed247_channel_get_stream_list(ed247_channel_t channel, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5fchannel_5fget_5fstreams',['ed247_channel_get_streams',['../group__deprecated.html#ga7df7b0ae643659a6f56ffd1f1a285d21',1,'ed247_channel_get_streams(ed247_channel_t channel, ed247_stream_list_t *streams): ed247.cpp'],['../group__deprecated.html#ga7df7b0ae643659a6f56ffd1f1a285d21',1,'ed247_channel_get_streams(ed247_channel_t channel, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5fchannel_5fget_5fuser_5fdata',['ed247_channel_get_user_data',['../group__channel.html#gac32bcccc90f64758a800c0d5486f33fe',1,'ed247_channel_get_user_data(ed247_channel_t channel, void **user_data): ed247.cpp'],['../group__channel.html#gac32bcccc90f64758a800c0d5486f33fe',1,'ed247_channel_get_user_data(ed247_channel_t channel, void **user_data): ed247.cpp']]], + ['ed247_5fchannel_5flist_5ffree',['ed247_channel_list_free',['../group__channel__list.html#gaaed6b1b9cc42eeef890bf600a0124f37',1,'ed247_channel_list_free(ed247_channel_list_t channels): ed247.cpp'],['../group__channel__list.html#gaaed6b1b9cc42eeef890bf600a0124f37',1,'ed247_channel_list_free(ed247_channel_list_t channels): ed247.cpp']]], + ['ed247_5fchannel_5flist_5fnext',['ed247_channel_list_next',['../group__channel__list.html#gac144622372ae2ffa5ef38b752c2c1ea5',1,'ed247_channel_list_next(ed247_channel_list_t channels, ed247_channel_t *channel): ed247.cpp'],['../group__channel__list.html#gac144622372ae2ffa5ef38b752c2c1ea5',1,'ed247_channel_list_next(ed247_channel_list_t channels, ed247_channel_t *channel): ed247.cpp']]], + ['ed247_5fchannel_5flist_5fsize',['ed247_channel_list_size',['../group__channel__list.html#gaf68b90c07978d98a4a1c1398c8e4c098',1,'ed247_channel_list_size(ed247_channel_list_t channels, uint32_t *size): ed247.cpp'],['../group__channel__list.html#gaf68b90c07978d98a4a1c1398c8e4c098',1,'ed247_channel_list_size(ed247_channel_list_t channels, uint32_t *size): ed247.cpp']]], + ['ed247_5fchannel_5flist_5ft',['ed247_channel_list_t',['../group__channel__list.html#gad55cfcf02574a8e77d74e50da3ebad42',1,'ed247.h']]], + ['ed247_5fchannel_5fset_5fuser_5fdata',['ed247_channel_set_user_data',['../group__channel.html#gaf006f79b36c426d11caf58ae0e529812',1,'ed247_channel_set_user_data(ed247_channel_t channel, void *user_data): ed247.cpp'],['../group__channel.html#gaf006f79b36c426d11caf58ae0e529812',1,'ed247_channel_set_user_data(ed247_channel_t channel, void *user_data): ed247.cpp']]], + ['ed247_5fchannel_5ft',['ed247_channel_t',['../group__channel.html#ga1bddb20504db07cd2d4638d9aaf5d23c',1,'ed247.h']]], + ['ed247_5fcomponent_5fget_5fchannels',['ed247_component_get_channels',['../group__deprecated.html#gab1ac5553b13489a1795abef93cab7033',1,'ed247_component_get_channels(ed247_context_t context, ed247_channel_list_t *channels): ed247.cpp'],['../group__deprecated.html#gab1ac5553b13489a1795abef93cab7033',1,'ed247_component_get_channels(ed247_context_t context, ed247_channel_list_t *channels): ed247.cpp']]], + ['ed247_5fcomponent_5fget_5fstreams',['ed247_component_get_streams',['../group__deprecated.html#gafc2105864f051cb463539a141336a443',1,'ed247_component_get_streams(ed247_context_t context, ed247_stream_list_t *streams): ed247.cpp'],['../group__deprecated.html#gafc2105864f051cb463539a141336a443',1,'ed247_component_get_streams(ed247_context_t context, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5fcomponent_5fget_5fuser_5fdata',['ed247_component_get_user_data',['../group__context__init.html#ga87c3d5d4040777631fe85eba8c5c4956',1,'ed247_component_get_user_data(ed247_context_t context, void **user_data): ed247.cpp'],['../group__context__init.html#ga87c3d5d4040777631fe85eba8c5c4956',1,'ed247_component_get_user_data(ed247_context_t context, void **user_data): ed247.cpp']]], + ['ed247_5fcomponent_5fset_5fuser_5fdata',['ed247_component_set_user_data',['../group__context__init.html#ga13d40fbd8093b97d115aeaaeac242f12',1,'ed247_component_set_user_data(ed247_context_t context, void *user_data): ed247.cpp'],['../group__context__init.html#ga13d40fbd8093b97d115aeaaeac242f12',1,'ed247_component_set_user_data(ed247_context_t context, void *user_data): ed247.cpp']]], + ['ed247_5fcomponent_5ftype_5ffrom_5fstring',['ed247_component_type_from_string',['../group__strings.html#gaff5276910e5a9f9f12f2893067c9c368',1,'ed247_component_type_from_string(const char *component_type): ed247_conversion.cpp'],['../group__strings.html#gaff5276910e5a9f9f12f2893067c9c368',1,'ed247_component_type_from_string(const char *component_type): ed247_conversion.cpp']]], + ['ed247_5fcomponent_5ftype_5fstring',['ed247_component_type_string',['../group__strings.html#gadfa22b5fe771535e20609ea96ed42dc9',1,'ed247_component_type_string(ed247_component_type_t component_type): ed247_conversion.cpp'],['../group__strings.html#gadfa22b5fe771535e20609ea96ed42dc9',1,'ed247_component_type_string(ed247_component_type_t component_type): ed247_conversion.cpp']]], + ['ed247_5fcomponent_5ftype_5ft',['ed247_component_type_t',['../group__context.html#ga7d4c77176d9b208f32febdf8000d0201',1,'ed247.h']]], + ['ed247_5fcontext_5ft',['ed247_context_t',['../group__context.html#gaeeed7e9c98f65b3e5cdc85f0a5935550',1,'ed247.h']]], + ['ed247_5fdirection_5ffrom_5fstring',['ed247_direction_from_string',['../group__strings.html#ga543607a06ff57d0b53151f36811c455c',1,'ed247_direction_from_string(const char *direction): ed247_conversion.cpp'],['../group__strings.html#ga543607a06ff57d0b53151f36811c455c',1,'ed247_direction_from_string(const char *direction): ed247_conversion.cpp']]], + ['ed247_5fdirection_5fstring',['ed247_direction_string',['../group__strings.html#ga41b7737dcdd6c58ecf0e7455fd87e106',1,'ed247_direction_string(ed247_direction_t direction): ed247_conversion.cpp'],['../group__strings.html#ga41b7737dcdd6c58ecf0e7455fd87e106',1,'ed247_direction_string(ed247_direction_t direction): ed247_conversion.cpp']]], + ['ed247_5fdirection_5ft',['ed247_direction_t',['../group__stream.html#gafeddea8945eb68a6591f8bfd4dea300b',1,'ed247.h']]], + ['ed247_5fdiscrete_5ft',['ed247_discrete_t',['../group__signal.html#gac64036263086ab89d8bfd184a4188ca3',1,'ed247.h']]], + ['ed247_5ffind_5fchannel_5fstreams',['ed247_find_channel_streams',['../group__deprecated.html#ga7d3ce1ec5a2d581cf3c1bb9707e2bcbf',1,'ed247_find_channel_streams(ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp'],['../group__deprecated.html#ga7d3ce1ec5a2d581cf3c1bb9707e2bcbf',1,'ed247_find_channel_streams(ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5ffind_5fchannels',['ed247_find_channels',['../group__context__config.html#ga49100975512ba6b64fbbb1f4edb16bc1',1,'ed247_find_channels(ed247_context_t context, const char *regex_name, ed247_channel_list_t *channels): ed247.cpp'],['../group__context__config.html#ga49100975512ba6b64fbbb1f4edb16bc1',1,'ed247_find_channels(ed247_context_t context, const char *regex_name, ed247_channel_list_t *channels): ed247.cpp']]], + ['ed247_5ffind_5fsignals',['ed247_find_signals',['../group__context__config.html#gacc142fdd08ced5b83b199591ac807752',1,'ed247_find_signals(ed247_context_t context, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp'],['../group__context__config.html#gacc142fdd08ced5b83b199591ac807752',1,'ed247_find_signals(ed247_context_t context, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp']]], + ['ed247_5ffind_5fstream_5fsignals',['ed247_find_stream_signals',['../group__deprecated.html#ga7d41c5c077409d33eb3173fc2b059fac',1,'ed247_find_stream_signals(ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp'],['../group__deprecated.html#ga7d41c5c077409d33eb3173fc2b059fac',1,'ed247_find_stream_signals(ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp']]], + ['ed247_5ffind_5fstreams',['ed247_find_streams',['../group__context__config.html#ga360affab24abac696291952b8fd056f0',1,'ed247_find_streams(ed247_context_t context, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp'],['../group__context__config.html#ga360affab24abac696291952b8fd056f0',1,'ed247_find_streams(ed247_context_t context, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5ffree',['ed247_free',['../group__deprecated.html#ga974811afaa83fceda9a08773c2bfd74c',1,'ed247_free(void *data): ed247.cpp'],['../group__deprecated.html#ga974811afaa83fceda9a08773c2bfd74c',1,'ed247_free(void *data): ed247.cpp']]], + ['ed247_5fget_5fchannel',['ed247_get_channel',['../group__context__config.html#gadc5c7fcf608f349367fea932ee1f1f10',1,'ed247_get_channel(ed247_context_t context, const char *name, ed247_channel_t *channel): ed247.cpp'],['../group__context__config.html#gadc5c7fcf608f349367fea932ee1f1f10',1,'ed247_get_channel(ed247_context_t context, const char *name, ed247_channel_t *channel): ed247.cpp']]], + ['ed247_5fget_5fchannel_5flist',['ed247_get_channel_list',['../group__context__config.html#ga14247ee166bf9675fdf1d4ddffa5554e',1,'ed247_get_channel_list(ed247_context_t context, ed247_channel_list_t *channels): ed247.cpp'],['../group__context__config.html#ga14247ee166bf9675fdf1d4ddffa5554e',1,'ed247_get_channel_list(ed247_context_t context, ed247_channel_list_t *channels): ed247.cpp']]], + ['ed247_5fget_5fchannel_5fstream',['ed247_get_channel_stream',['../group__deprecated.html#ga174f0b51b9fd7b0278055e724ca74598',1,'ed247_get_channel_stream(ed247_channel_t channel, const char *name, ed247_stream_t *stream): ed247.cpp'],['../group__deprecated.html#ga174f0b51b9fd7b0278055e724ca74598',1,'ed247_get_channel_stream(ed247_channel_t channel, const char *name, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fget_5fimplementation_5fname',['ed247_get_implementation_name',['../group__global.html#gadb00e0e45ad86bd56d98eb527b6dedde',1,'ed247_get_implementation_name(): ed247.cpp'],['../group__global.html#gadb00e0e45ad86bd56d98eb527b6dedde',1,'ed247_get_implementation_name(): ed247.cpp']]], + ['ed247_5fget_5fimplementation_5fversion',['ed247_get_implementation_version',['../group__global.html#ga797161571a767e5664e7e0730ef68fcb',1,'ed247_get_implementation_version(): ed247.cpp'],['../group__global.html#ga797161571a767e5664e7e0730ef68fcb',1,'ed247_get_implementation_version(): ed247.cpp']]], + ['ed247_5fget_5flog_5flevel',['ed247_get_log_level',['../group__global.html#ga1ad7043056fc48bc202d409638c344b9',1,'ed247_get_log_level(ed247_log_level_t *log_level): ed247.cpp'],['../group__global.html#ga1ad7043056fc48bc202d409638c344b9',1,'ed247_get_log_level(ed247_log_level_t *log_level): ed247.cpp']]], + ['ed247_5fget_5freceive_5ftimestamp',['ed247_get_receive_timestamp',['../group__time.html#gaa58caf17fb3a69ee8028d5184079ef95',1,'ed247_get_receive_timestamp(ed247_timestamp_t *timestamp): ed247_time.cpp'],['../group__time.html#gaa58caf17fb3a69ee8028d5184079ef95',1,'ed247_get_receive_timestamp(ed247_timestamp_t *timestamp): ed247_time.cpp']]], + ['ed247_5fget_5fruntime_5fmetrics',['ed247_get_runtime_metrics',['../group__deprecated.html#ga1e61493868917933855a574323fdfed5',1,'ed247_get_runtime_metrics(ed247_context_t context, const libed247_runtime_metrics_t **metrics): ed247.cpp'],['../group__deprecated.html#ga1e61493868917933855a574323fdfed5',1,'ed247_get_runtime_metrics(ed247_context_t context, const libed247_runtime_metrics_t **metrics): ed247.cpp']]], + ['ed247_5fget_5fsignal',['ed247_get_signal',['../group__context__config.html#gaa24483cc37e3e466de8bd635f0c4fb95',1,'ed247_get_signal(ed247_context_t context, const char *name, ed247_signal_t *signal): ed247.cpp'],['../group__context__config.html#gaa24483cc37e3e466de8bd635f0c4fb95',1,'ed247_get_signal(ed247_context_t context, const char *name, ed247_signal_t *signal): ed247.cpp']]], + ['ed247_5fget_5fstream',['ed247_get_stream',['../group__context__config.html#gaadf394fba0bfd2d2aba18d6332cd8ad8',1,'ed247_get_stream(ed247_context_t context, const char *name, ed247_stream_t *stream): ed247.cpp'],['../group__context__config.html#gaadf394fba0bfd2d2aba18d6332cd8ad8',1,'ed247_get_stream(ed247_context_t context, const char *name, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fget_5fstream_5flist',['ed247_get_stream_list',['../group__context__config.html#ga4b8344532b192ff5d6fe15789a710bd6',1,'ed247_get_stream_list(ed247_context_t context, ed247_stream_list_t *streams): ed247.cpp'],['../group__context__config.html#ga4b8344532b192ff5d6fe15789a710bd6',1,'ed247_get_stream_list(ed247_context_t context, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5fget_5fstream_5fsignal',['ed247_get_stream_signal',['../group__deprecated.html#gad40542910a61fd371a2459beb49c654c',1,'ed247_get_stream_signal(ed247_stream_t stream, const char *name, ed247_signal_t *signal): ed247.cpp'],['../group__deprecated.html#gad40542910a61fd371a2459beb49c654c',1,'ed247_get_stream_signal(ed247_stream_t stream, const char *name, ed247_signal_t *signal): ed247.cpp']]], + ['ed247_5fget_5ftime',['ed247_get_time',['../group__time.html#gabc1751506aa054d415e50c2eaaeb535e',1,'ed247_get_time(ed247_timestamp_t *timestamp): ed247_time.cpp'],['../group__time.html#gabc1751506aa054d415e50c2eaaeb535e',1,'ed247_get_time(ed247_timestamp_t *timestamp): ed247_time.cpp']]], + ['ed247_5fget_5ftime_5ft',['ed247_get_time_t',['../group__time.html#gabeba8f9370a3394931eb4f957708d9f4',1,'ed247.h']]], + ['ed247_5fget_5ftransport_5ftimestamp',['ed247_get_transport_timestamp',['../group__time.html#ga05acbf08986fcf5d93fb3f9d32af7f5a',1,'ed247_get_transport_timestamp(ed247_timestamp_t *timestamp): ed247_time.cpp'],['../group__time.html#ga05acbf08986fcf5d93fb3f9d32af7f5a',1,'ed247_get_transport_timestamp(ed247_timestamp_t *timestamp): ed247_time.cpp']]], + ['ed247_5finternal_5fchannel_5flist_5ft',['ed247_internal_channel_list_t',['../structed247__internal__channel__list__t.html',1,'']]], + ['ed247_5finternal_5fchannel_5ft',['ed247_internal_channel_t',['../structed247__internal__channel__t.html',1,'']]], + ['ed247_5finternal_5fcontext_5ft',['ed247_internal_context_t',['../structed247__internal__context__t.html',1,'']]], + ['ed247_5finternal_5fsignal_5flist_5ft',['ed247_internal_signal_list_t',['../structed247__internal__signal__list__t.html',1,'']]], + ['ed247_5finternal_5fsignal_5ft',['ed247_internal_signal_t',['../structed247__internal__signal__t.html',1,'']]], + ['ed247_5finternal_5fstream_5fassistant_5ft',['ed247_internal_stream_assistant_t',['../structed247__internal__stream__assistant__t.html',1,'']]], + ['ed247_5finternal_5fstream_5flist_5ft',['ed247_internal_stream_list_t',['../structed247__internal__stream__list__t.html',1,'']]], + ['ed247_5finternal_5fstream_5ft',['ed247_internal_stream_t',['../structed247__internal__stream__t.html',1,'']]], + ['ed247_5fload',['ed247_load',['../group__deprecated.html#ga0c9f1fa0767723acba051e8237f64709',1,'ed247_load(const char *ecic_file_path, void *unused, ed247_context_t *context): ed247.cpp'],['../group__deprecated.html#ga0c9f1fa0767723acba051e8237f64709',1,'ed247_load(const char *ecic_file_path, void *unused, ed247_context_t *context): ed247.cpp']]], + ['ed247_5fload_5fcontent',['ed247_load_content',['../group__context__init.html#ga3ec647f39bd8ed0c9965e926eda1a5a9',1,'ed247_load_content(const char *ecic_file_content, ed247_context_t *context): ed247.cpp'],['../group__context__init.html#ga3ec647f39bd8ed0c9965e926eda1a5a9',1,'ed247_load_content(const char *ecic_file_content, ed247_context_t *context): ed247.cpp']]], + ['ed247_5fload_5ffile',['ed247_load_file',['../group__context__init.html#gaf49ef33dd2d04f9fc5d15c3159ae3acc',1,'ed247_load_file(const char *ecic_file_path, ed247_context_t *context): ed247.cpp'],['../group__context__init.html#gaf49ef33dd2d04f9fc5d15c3159ae3acc',1,'ed247_load_file(const char *ecic_file_path, ed247_context_t *context): ed247.cpp']]], + ['ed247_5flog_5flevel_5ft',['ed247_log_level_t',['../group__global.html#ga2cb7bb978e600027d9dc43231031261c',1,'ed247.h']]], + ['ed247_5fnad_5ftype_5ffrom_5fstring',['ed247_nad_type_from_string',['../group__strings.html#ga820562cc9b8fdcc76eefcc70ffcf240c',1,'ed247_nad_type_from_string(const char *nad_type): ed247_conversion.cpp'],['../group__strings.html#ga820562cc9b8fdcc76eefcc70ffcf240c',1,'ed247_nad_type_from_string(const char *nad_type): ed247_conversion.cpp']]], + ['ed247_5fnad_5ftype_5fsize',['ed247_nad_type_size',['../group__signal.html#ga1ff979d1c1bca3c80f627caef4e1123d',1,'ed247_nad_type_size(ed247_nad_type_t nad_type): ed247.cpp'],['../group__signal.html#ga1ff979d1c1bca3c80f627caef4e1123d',1,'ed247_nad_type_size(ed247_nad_type_t nad_type): ed247.cpp']]], + ['ed247_5fnad_5ftype_5fstring',['ed247_nad_type_string',['../group__strings.html#ga0da47bc91d3ae514596f170b83aea01f',1,'ed247_nad_type_string(ed247_nad_type_t nad_type): ed247_conversion.cpp'],['../group__strings.html#ga0da47bc91d3ae514596f170b83aea01f',1,'ed247_nad_type_string(ed247_nad_type_t nad_type): ed247_conversion.cpp']]], + ['ed247_5fnad_5ftype_5ft',['ed247_nad_type_t',['../group__signal.html#ga7aed669e25d6dfc317c62918c77abbe9',1,'ed247.h']]], + ['ed247_5fregister_5frecv_5fcallback',['ed247_register_recv_callback',['../group__context__callback.html#ga926b9b5e9d695f83f7bf94b0894d5b86',1,'ed247_register_recv_callback(ed247_context_t context, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#ga926b9b5e9d695f83f7bf94b0894d5b86',1,'ed247_register_recv_callback(ed247_context_t context, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5fsample_5fdetails_5fs',['ed247_sample_details_s',['../structed247__sample__details__s.html',1,'']]], + ['ed247_5fsample_5fdetails_5ft',['ed247_sample_details_t',['../group__stream.html#gac3c8842807b4cfd8ec58ab5d3221eb0d',1,'ed247.h']]], + ['ed247_5fsend_5fpushed_5fsamples',['ed247_send_pushed_samples',['../group__context__io.html#ga39df8ce9b734a64cecf73dbbba6be911',1,'ed247_send_pushed_samples(ed247_context_t context): ed247.cpp'],['../group__context__io.html#ga39df8ce9b734a64cecf73dbbba6be911',1,'ed247_send_pushed_samples(ed247_context_t context): ed247.cpp']]], + ['ed247_5fset_5flog',['ed247_set_log',['../group__global.html#gaa5cc84b1824ccf12fe6673f3dbac280e',1,'ed247_set_log(ed247_log_level_t log_level, const char *log_filepath): ed247.cpp'],['../group__global.html#gaa5cc84b1824ccf12fe6673f3dbac280e',1,'ed247_set_log(ed247_log_level_t log_level, const char *log_filepath): ed247.cpp']]], + ['ed247_5fset_5flog_5flevel',['ed247_set_log_level',['../group__global.html#gaa529c8684916c04de0f7cbef6320362f',1,'ed247_set_log_level(ed247_log_level_t log_level): ed247.cpp'],['../group__global.html#gaa529c8684916c04de0f7cbef6320362f',1,'ed247_set_log_level(ed247_log_level_t log_level): ed247.cpp']]], + ['ed247_5fset_5freceive_5ftimestamp_5fcallback',['ed247_set_receive_timestamp_callback',['../group__time.html#gaf7c519dc3a6ddda134ded061bc9031e2',1,'ed247_set_receive_timestamp_callback(ed247_get_time_t callback): ed247_time.cpp'],['../group__time.html#gaf7c519dc3a6ddda134ded061bc9031e2',1,'ed247_set_receive_timestamp_callback(ed247_get_time_t callback): ed247_time.cpp']]], + ['ed247_5fset_5ftransport_5ftimestamp_5fcallback',['ed247_set_transport_timestamp_callback',['../group__time.html#gaa26a0294ae76c6627e6a038685f6bce7',1,'ed247_set_transport_timestamp_callback(ed247_get_time_t callback): ed247_time.cpp'],['../group__time.html#gaa26a0294ae76c6627e6a038685f6bce7',1,'ed247_set_transport_timestamp_callback(ed247_get_time_t callback): ed247_time.cpp']]], + ['ed247_5fsignal_5fallocate_5fsample',['ed247_signal_allocate_sample',['../group__signal.html#ga8a5273ed2d5366cbc6d41acdb4dd0382',1,'ed247_signal_allocate_sample(ed247_signal_t signal, void **sample_data, uint32_t *sample_size): ed247.cpp'],['../group__signal.html#ga8a5273ed2d5366cbc6d41acdb4dd0382',1,'ed247_signal_allocate_sample(ed247_signal_t signal, void **sample_data, uint32_t *sample_size): ed247.cpp']]], + ['ed247_5fsignal_5fget_5fassistant',['ed247_signal_get_assistant',['../group__signal.html#ga3f58631256fb5b21db5738d0ea80e79e',1,'ed247_signal_get_assistant(ed247_signal_t signal, ed247_stream_assistant_t *assistant): ed247.cpp'],['../group__signal.html#ga3f58631256fb5b21db5738d0ea80e79e',1,'ed247_signal_get_assistant(ed247_signal_t signal, ed247_stream_assistant_t *assistant): ed247.cpp']]], + ['ed247_5fsignal_5fget_5fbyte_5foffset',['ed247_signal_get_byte_offset',['../group__signal.html#ga344d4336f9a287fad81fa7110cdcaaf4',1,'ed247.cpp']]], + ['ed247_5fsignal_5fget_5fstream',['ed247_signal_get_stream',['../group__signal.html#gaa940f54199d73bb0c29d440966b88997',1,'ed247_signal_get_stream(ed247_signal_t signal, ed247_stream_t *stream): ed247.cpp'],['../group__signal.html#gaa940f54199d73bb0c29d440966b88997',1,'ed247_signal_get_stream(ed247_signal_t signal, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fsignal_5fget_5fuser_5fdata',['ed247_signal_get_user_data',['../group__signal.html#ga2ad35e23e3984257f5894862354c1b66',1,'ed247_signal_get_user_data(ed247_signal_t signal, void **user_data): ed247.cpp'],['../group__signal.html#ga2ad35e23e3984257f5894862354c1b66',1,'ed247_signal_get_user_data(ed247_signal_t signal, void **user_data): ed247.cpp']]], + ['ed247_5fsignal_5flist_5ffree',['ed247_signal_list_free',['../group__signal__list.html#ga3249893a97ef7ea717d8d4b12df2249c',1,'ed247_signal_list_free(ed247_signal_list_t signals): ed247.cpp'],['../group__signal__list.html#ga3249893a97ef7ea717d8d4b12df2249c',1,'ed247_signal_list_free(ed247_signal_list_t signals): ed247.cpp']]], + ['ed247_5fsignal_5flist_5fnext',['ed247_signal_list_next',['../group__signal__list.html#gaf815bc3fe26275404b9988bde67faf59',1,'ed247_signal_list_next(ed247_signal_list_t signals, ed247_signal_t *signal): ed247.cpp'],['../group__signal__list.html#gaf815bc3fe26275404b9988bde67faf59',1,'ed247_signal_list_next(ed247_signal_list_t signals, ed247_signal_t *signal): ed247.cpp']]], + ['ed247_5fsignal_5flist_5fsize',['ed247_signal_list_size',['../group__signal__list.html#ga7a8d727d5a33bfc7e2d076076e1ea79a',1,'ed247_signal_list_size(ed247_signal_list_t signals, uint32_t *size): ed247.cpp'],['../group__signal__list.html#ga7a8d727d5a33bfc7e2d076076e1ea79a',1,'ed247_signal_list_size(ed247_signal_list_t signals, uint32_t *size): ed247.cpp']]], + ['ed247_5fsignal_5flist_5ft',['ed247_signal_list_t',['../group__signal__list.html#ga5fdecea140a70c3f56c50d26b9572fa3',1,'ed247.h']]], + ['ed247_5fsignal_5fnad_5fget_5ftype',['ed247_signal_nad_get_type',['../group__signal.html#ga3f471222fe82e52dc2f66fcccc68be07',1,'ed247.cpp']]], + ['ed247_5fsignal_5fnad_5fget_5funit',['ed247_signal_nad_get_unit',['../group__signal.html#gafaac46580e6a4dd3f21940b52ce941e0',1,'ed247.cpp']]], + ['ed247_5fsignal_5fset_5fuser_5fdata',['ed247_signal_set_user_data',['../group__signal.html#ga2cb6e86eb5d42a53f6cd2272f15ad560',1,'ed247_signal_set_user_data(ed247_signal_t signal, void *user_data): ed247.cpp'],['../group__signal.html#ga2cb6e86eb5d42a53f6cd2272f15ad560',1,'ed247_signal_set_user_data(ed247_signal_t signal, void *user_data): ed247.cpp']]], + ['ed247_5fsignal_5ft',['ed247_signal_t',['../group__signal.html#ga1392cbe948b566fbcc587fa1610c1720',1,'ed247.h']]], + ['ed247_5fsignal_5ftype_5ffrom_5fstring',['ed247_signal_type_from_string',['../group__strings.html#gac17b81c45ca7ef0c5606eef9802d799a',1,'ed247_signal_type_from_string(const char *signal_type): ed247_conversion.cpp'],['../group__strings.html#gac17b81c45ca7ef0c5606eef9802d799a',1,'ed247_signal_type_from_string(const char *signal_type): ed247_conversion.cpp']]], + ['ed247_5fsignal_5ftype_5fstring',['ed247_signal_type_string',['../group__strings.html#ga1c8a30f8c6132e3626cd0c63fc38590f',1,'ed247_signal_type_string(ed247_signal_type_t signal_type): ed247_conversion.cpp'],['../group__strings.html#ga1c8a30f8c6132e3626cd0c63fc38590f',1,'ed247_signal_type_string(ed247_signal_type_t signal_type): ed247_conversion.cpp']]], + ['ed247_5fsignal_5ftype_5ft',['ed247_signal_type_t',['../group__signal.html#ga60d87733e39697d8becc32198a1cf554',1,'ed247.h']]], + ['ed247_5fstandard_5ffrom_5fstring',['ed247_standard_from_string',['../group__strings.html#gadf4f1c7eb26081cfcc060f9f81e84a3c',1,'ed247_standard_from_string(const char *standard): ed247_conversion.cpp'],['../group__strings.html#gadf4f1c7eb26081cfcc060f9f81e84a3c',1,'ed247_standard_from_string(const char *standard): ed247_conversion.cpp']]], + ['ed247_5fstandard_5fstring',['ed247_standard_string',['../group__strings.html#ga509d237f65018a7462a98481616d673c',1,'ed247_standard_string(ed247_standard_t standard): ed247_conversion.cpp'],['../group__strings.html#ga509d237f65018a7462a98481616d673c',1,'ed247_standard_string(ed247_standard_t standard): ed247_conversion.cpp']]], + ['ed247_5fstandard_5ft',['ed247_standard_t',['../group__global.html#ga5afd784da0ce94a3197e279c250e7716',1,'ed247.h']]], + ['ed247_5fstatus_5fstring',['ed247_status_string',['../group__strings.html#ga17d99d52dd4f168222422aa2b1999598',1,'ed247_status_string(ed247_status_t status): ed247_conversion.cpp'],['../group__strings.html#ga17d99d52dd4f168222422aa2b1999598',1,'ed247_status_string(ed247_status_t status): ed247_conversion.cpp']]], + ['ed247_5fstatus_5ft',['ed247_status_t',['../group__global.html#ga59cffc81f5f116a6a1336e5ff16c9415',1,'ed247.h']]], + ['ed247_5fstream_5fallocate_5fsample',['ed247_stream_allocate_sample',['../group__stream__io.html#gaadee13cb903d84e40b842236e54f860b',1,'ed247_stream_allocate_sample(ed247_stream_t stream, void **sample_data, uint32_t *sample_size): ed247.cpp'],['../group__stream__io.html#gaadee13cb903d84e40b842236e54f860b',1,'ed247_stream_allocate_sample(ed247_stream_t stream, void **sample_data, uint32_t *sample_size): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5fget_5fstream',['ed247_stream_assistant_get_stream',['../group__stream__assistant.html#ga817b85b537993fed15273ef5142e9dfc',1,'ed247_stream_assistant_get_stream(ed247_stream_assistant_t assistant, ed247_stream_t *stream): ed247.cpp'],['../group__stream__assistant.html#ga817b85b537993fed15273ef5142e9dfc',1,'ed247_stream_assistant_get_stream(ed247_stream_assistant_t assistant, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5fpop_5fsample',['ed247_stream_assistant_pop_sample',['../group__stream__assistant.html#gad71eea2f8c8ae157ceb79fa0e397cc75',1,'ed247_stream_assistant_pop_sample(ed247_stream_assistant_t assistant, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty): ed247.cpp'],['../group__stream__assistant.html#gad71eea2f8c8ae157ceb79fa0e397cc75',1,'ed247_stream_assistant_pop_sample(ed247_stream_assistant_t assistant, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5fpush_5fsample',['ed247_stream_assistant_push_sample',['../group__stream__assistant.html#gabd1cb477151f3c4fb883e218ecb87988',1,'ed247_stream_assistant_push_sample(ed247_stream_assistant_t assistant, const ed247_timestamp_t *timestamp, bool *full): ed247.cpp'],['../group__stream__assistant.html#gabd1cb477151f3c4fb883e218ecb87988',1,'ed247_stream_assistant_push_sample(ed247_stream_assistant_t assistant, const ed247_timestamp_t *data_timestamp, bool *full): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5fread_5fsignal',['ed247_stream_assistant_read_signal',['../group__stream__assistant.html#ga7ccab54de4805974ce77af1dda4f29a0',1,'ed247_stream_assistant_read_signal(ed247_stream_assistant_t assistant, ed247_signal_t signal, const void **signal_sample_data, uint32_t *signal_sample_size): ed247.cpp'],['../group__stream__assistant.html#ga7ccab54de4805974ce77af1dda4f29a0',1,'ed247_stream_assistant_read_signal(ed247_stream_assistant_t assistant, ed247_signal_t signal, const void **signal_sample_data, uint32_t *signal_sample_size): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5ft',['ed247_stream_assistant_t',['../group__stream__assistant.html#ga14d9c6d97c5f6494981a4db2796bb55d',1,'ed247.h']]], + ['ed247_5fstream_5fassistant_5fwas_5fwritten',['ed247_stream_assistant_was_written',['../group__stream__assistant.html#gaa745eae4e42eaaeb416e4d2c753ca552',1,'ed247_stream_assistant_was_written(ed247_stream_assistant_t assistant): ed247.cpp'],['../group__stream__assistant.html#gaa745eae4e42eaaeb416e4d2c753ca552',1,'ed247_stream_assistant_was_written(ed247_stream_assistant_t assistant): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5fwrite_5fsignal',['ed247_stream_assistant_write_signal',['../group__stream__assistant.html#ga9f213268b087b349e1e2fcc5bda42ade',1,'ed247_stream_assistant_write_signal(ed247_stream_assistant_t assistant, ed247_signal_t signal, const void *signal_sample_data, uint32_t signal_sample_size): ed247.cpp'],['../group__stream__assistant.html#ga9f213268b087b349e1e2fcc5bda42ade',1,'ed247_stream_assistant_write_signal(ed247_stream_assistant_t assistant, ed247_signal_t signal, const void *signal_sample_data, uint32_t signal_sample_size): ed247.cpp']]], + ['ed247_5fstream_5fassistants_5fwritten_5fpush_5fsamples',['ed247_stream_assistants_written_push_samples',['../group__stream__assistant.html#ga8fa00a1e17e4be2854061a256dadc6c0',1,'ed247_stream_assistants_written_push_samples(ed247_context_t context, const ed247_timestamp_t *data_timestamp): ed247.cpp'],['../group__stream__assistant.html#ga8fa00a1e17e4be2854061a256dadc6c0',1,'ed247_stream_assistants_written_push_samples(ed247_context_t context, const ed247_timestamp_t *data_timestamp): ed247.cpp']]], + ['ed247_5fstream_5fcontains_5fsignals',['ed247_stream_contains_signals',['../group__deprecated.html#ga035c4e90e4eae3f2d12bbbe4b17b4244',1,'ed247_stream_contains_signals(ed247_stream_t stream, uint8_t *yesno): ed247.cpp'],['../group__deprecated.html#ga035c4e90e4eae3f2d12bbbe4b17b4244',1,'ed247_stream_contains_signals(ed247_stream_t stream, uint8_t *yesno): ed247.cpp']]], + ['ed247_5fstream_5ffind_5fsignals',['ed247_stream_find_signals',['../group__stream.html#gaa7b437eeeee13b7313536572962aef4e',1,'ed247_stream_find_signals(ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp'],['../group__stream.html#gaa7b437eeeee13b7313536572962aef4e',1,'ed247_stream_find_signals(ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp']]], + ['ed247_5fstream_5ffree_5fsample',['ed247_stream_free_sample',['../group__stream__io.html#ga9028da1b5b1079e543c1b953331547a4',1,'ed247_stream_free_sample(void *sample_data): ed247.cpp'],['../group__stream__io.html#ga9028da1b5b1079e543c1b953331547a4',1,'ed247_stream_free_sample(void *sample_data): ed247.cpp']]], + ['ed247_5fstream_5fget_5fassistant',['ed247_stream_get_assistant',['../group__stream__io.html#ga3907463be59d8d3cc80caf0dd06e4af9',1,'ed247_stream_get_assistant(ed247_stream_t stream, ed247_stream_assistant_t *assistant): ed247.cpp'],['../group__stream__io.html#ga3907463be59d8d3cc80caf0dd06e4af9',1,'ed247_stream_get_assistant(ed247_stream_t stream, ed247_stream_assistant_t *assistant): ed247.cpp']]], + ['ed247_5fstream_5fget_5fchannel',['ed247_stream_get_channel',['../group__stream.html#ga7adbfee97395fcb2a991d261957e3d05',1,'ed247_stream_get_channel(ed247_stream_t stream, ed247_channel_t *channel): ed247.cpp'],['../group__stream.html#ga7adbfee97395fcb2a991d261957e3d05',1,'ed247_stream_get_channel(ed247_stream_t stream, ed247_channel_t *channel): ed247.cpp']]], + ['ed247_5fstream_5fget_5fsignal',['ed247_stream_get_signal',['../group__stream.html#gaf6068982b942ae3009d30a4838b8d7dc',1,'ed247_stream_get_signal(ed247_stream_t stream, const char *name, ed247_signal_t *signal): ed247.cpp'],['../group__stream.html#gaf6068982b942ae3009d30a4838b8d7dc',1,'ed247_stream_get_signal(ed247_stream_t stream, const char *name, ed247_signal_t *signal): ed247.cpp']]], + ['ed247_5fstream_5fget_5fsignal_5flist',['ed247_stream_get_signal_list',['../group__stream.html#gaa668871ce72a8f707a2513a98fd9b6fb',1,'ed247_stream_get_signal_list(ed247_stream_t stream, ed247_signal_list_t *signals): ed247.cpp'],['../group__stream.html#gaa668871ce72a8f707a2513a98fd9b6fb',1,'ed247_stream_get_signal_list(ed247_stream_t stream, ed247_signal_list_t *signals): ed247.cpp']]], + ['ed247_5fstream_5fget_5fsignals',['ed247_stream_get_signals',['../group__deprecated.html#gafe1c8f48d14524b48b2acab8092ff029',1,'ed247_stream_get_signals(ed247_stream_t stream, ed247_signal_list_t *signals): ed247.cpp'],['../group__deprecated.html#gafe1c8f48d14524b48b2acab8092ff029',1,'ed247_stream_get_signals(ed247_stream_t stream, ed247_signal_list_t *signals): ed247.cpp']]], + ['ed247_5fstream_5fget_5fuser_5fdata',['ed247_stream_get_user_data',['../group__stream.html#gaddaac2ab4356c5da6a01fc42c8039695',1,'ed247_stream_get_user_data(ed247_stream_t stream, void **user_data): ed247.cpp'],['../group__stream.html#gaddaac2ab4356c5da6a01fc42c8039695',1,'ed247_stream_get_user_data(ed247_stream_t stream, void **user_data): ed247.cpp']]], + ['ed247_5fstream_5fhas_5fsignals',['ed247_stream_has_signals',['../group__stream.html#gaf3e09d9f1fbf1436e2361a3087eef708',1,'ed247_stream_has_signals(ed247_stream_t stream, uint8_t *yesno): ed247.cpp'],['../group__stream.html#gaf3e09d9f1fbf1436e2361a3087eef708',1,'ed247_stream_has_signals(ed247_stream_t stream, uint8_t *yesno): ed247.cpp']]], + ['ed247_5fstream_5flist_5ffree',['ed247_stream_list_free',['../group__stream__list.html#gae9924ae2410a826448e80290ac604f1e',1,'ed247_stream_list_free(ed247_stream_list_t streams): ed247.cpp'],['../group__stream__list.html#gae9924ae2410a826448e80290ac604f1e',1,'ed247_stream_list_free(ed247_stream_list_t streams): ed247.cpp']]], + ['ed247_5fstream_5flist_5fnext',['ed247_stream_list_next',['../group__stream__list.html#ga01d85b5802d270b8209779242cc84099',1,'ed247_stream_list_next(ed247_stream_list_t streams, ed247_stream_t *stream): ed247.cpp'],['../group__stream__list.html#ga01d85b5802d270b8209779242cc84099',1,'ed247_stream_list_next(ed247_stream_list_t streams, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fstream_5flist_5fsize',['ed247_stream_list_size',['../group__stream__list.html#gafda0491b51ab1a5e4d688dd6f3997492',1,'ed247_stream_list_size(ed247_stream_list_t streams, uint32_t *size): ed247.cpp'],['../group__stream__list.html#gafda0491b51ab1a5e4d688dd6f3997492',1,'ed247_stream_list_size(ed247_stream_list_t streams, uint32_t *size): ed247.cpp']]], + ['ed247_5fstream_5flist_5ft',['ed247_stream_list_t',['../group__stream__list.html#gaa72d56d61f93bbd4b2914a6ed42aecda',1,'ed247.h']]], + ['ed247_5fstream_5fpop_5fsample',['ed247_stream_pop_sample',['../group__stream__io.html#gad66beca5d4ad1f4e9c9257396e56bdf1',1,'ed247_stream_pop_sample(ed247_stream_t stream, const void **sample_data, uint32_t *sample_size, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty): ed247.cpp'],['../group__stream__io.html#gad66beca5d4ad1f4e9c9257396e56bdf1',1,'ed247_stream_pop_sample(ed247_stream_t stream, const void **sample_data, uint32_t *sample_size, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty): ed247.cpp']]], + ['ed247_5fstream_5fpush_5fsample',['ed247_stream_push_sample',['../group__stream__io.html#ga0ab4d03c9f10330e1c590e1df1771976',1,'ed247_stream_push_sample(ed247_stream_t stream, const void *sample_data, uint32_t sample_size, const ed247_timestamp_t *timestamp, bool *full): ed247.cpp'],['../group__stream__io.html#ga0ab4d03c9f10330e1c590e1df1771976',1,'ed247_stream_push_sample(ed247_stream_t stream, const void *sample_data, uint32_t sample_data_size, const ed247_timestamp_t *data_timestamp, bool *full): ed247.cpp']]], + ['ed247_5fstream_5fpush_5fsamples',['ed247_stream_push_samples',['../group__stream__io.html#gaa69b69420d895fbbf3ac7f7fb0529e26',1,'ed247_stream_push_samples(ed247_stream_t stream, const void *samples_data, const uint32_t *samples_size, uint32_t samples_number, const ed247_timestamp_t *timestamp, bool *full): ed247.cpp'],['../group__stream__io.html#gaa69b69420d895fbbf3ac7f7fb0529e26',1,'ed247_stream_push_samples(ed247_stream_t stream, const void *samples_data, const uint32_t *samples_size, uint32_t samples_number, const ed247_timestamp_t *data_timestamp, bool *full): ed247.cpp']]], + ['ed247_5fstream_5frecv_5fcallback_5ft',['ed247_stream_recv_callback_t',['../group__context__callback.html#ga135af798b60f7e9054a8c080111fdb8a',1,'ed247.h']]], + ['ed247_5fstream_5fregister_5frecv_5fcallback',['ed247_stream_register_recv_callback',['../group__context__callback.html#gaf936575102ced9db2a04622366cff920',1,'ed247_stream_register_recv_callback(ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#gaf936575102ced9db2a04622366cff920',1,'ed247_stream_register_recv_callback(ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5fstream_5fsamples_5fnumber',['ed247_stream_samples_number',['../group__stream__io.html#gaea2b91416c53476460a3532791fca253',1,'ed247_stream_samples_number(ed247_stream_t stream, ed247_direction_t direction, uint32_t *size): ed247.cpp'],['../group__stream__io.html#gaea2b91416c53476460a3532791fca253',1,'ed247_stream_samples_number(ed247_stream_t stream, ed247_direction_t direction, uint32_t *size): ed247.cpp']]], + ['ed247_5fstream_5fset_5fuser_5fdata',['ed247_stream_set_user_data',['../group__stream.html#ga1c053d9022afac47a72f2d231f6768ab',1,'ed247_stream_set_user_data(ed247_stream_t stream, void *user_data): ed247.cpp'],['../group__stream.html#ga1c053d9022afac47a72f2d231f6768ab',1,'ed247_stream_set_user_data(ed247_stream_t stream, void *user_data): ed247.cpp']]], + ['ed247_5fstream_5ft',['ed247_stream_t',['../group__stream.html#gaad915c37d67718b5bef771731f64f2f5',1,'ed247.h']]], + ['ed247_5fstream_5ftype_5ffrom_5fstring',['ed247_stream_type_from_string',['../group__strings.html#ga860bf3f61b62851b7a70a6320c6f3b8c',1,'ed247_stream_type_from_string(const char *stream_type): ed247_conversion.cpp'],['../group__strings.html#ga860bf3f61b62851b7a70a6320c6f3b8c',1,'ed247_stream_type_from_string(const char *stream_type): ed247_conversion.cpp']]], + ['ed247_5fstream_5ftype_5fstring',['ed247_stream_type_string',['../group__strings.html#gad58ef50861feff516712dcc45f716a34',1,'ed247_stream_type_string(ed247_stream_type_t stream_type): ed247_conversion.cpp'],['../group__strings.html#gad58ef50861feff516712dcc45f716a34',1,'ed247_stream_type_string(ed247_stream_type_t stream_type): ed247_conversion.cpp']]], + ['ed247_5fstream_5ftype_5ft',['ed247_stream_type_t',['../group__stream.html#gad6c32a32b943c5785e7675e9688b51d8',1,'ed247.h']]], + ['ed247_5fstream_5funregister_5frecv_5fcallback',['ed247_stream_unregister_recv_callback',['../group__context__callback.html#ga143ff73f18b7af0280a04a063c742fb6',1,'ed247_stream_unregister_recv_callback(ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#ga143ff73f18b7af0280a04a063c742fb6',1,'ed247_stream_unregister_recv_callback(ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5fstreams_5fregister_5frecv_5fcallback',['ed247_streams_register_recv_callback',['../group__context__callback.html#ga972f336f2883ce33112fe414c8905524',1,'ed247_streams_register_recv_callback(ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#ga972f336f2883ce33112fe414c8905524',1,'ed247_streams_register_recv_callback(ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5fstreams_5funregister_5frecv_5fcallback',['ed247_streams_unregister_recv_callback',['../group__context__callback.html#gab570bdbb7e4018d3c8e063fb5abc8cff',1,'ed247_streams_unregister_recv_callback(ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#gab570bdbb7e4018d3c8e063fb5abc8cff',1,'ed247_streams_unregister_recv_callback(ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5ftimestamp_5ft',['ed247_timestamp_t',['../structed247__timestamp__t.html',1,'']]], + ['ed247_5fuid_5ft',['ed247_uid_t',['../group__global.html#ga8ece0a7462707c97f526dbccc00be4e5',1,'ed247.h']]], + ['ed247_5funload',['ed247_unload',['../group__context__init.html#ga50ae5f3165e2799b6744ab262e2041ce',1,'ed247_unload(ed247_context_t context): ed247.cpp'],['../group__context__init.html#ga50ae5f3165e2799b6744ab262e2041ce',1,'ed247_unload(ed247_context_t context): ed247.cpp']]], + ['ed247_5funregister_5frecv_5fcallback',['ed247_unregister_recv_callback',['../group__context__callback.html#gaf48a493504277d57ac784011f9161921',1,'ed247_unregister_recv_callback(ed247_context_t context, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#gaf48a493504277d57ac784011f9161921',1,'ed247_unregister_recv_callback(ed247_context_t context, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5fwait_5fduring',['ed247_wait_during',['../group__context__io.html#ga0b1dd58e03070d62b0ca74e2aee21d3c',1,'ed247_wait_during(ed247_context_t context, ed247_stream_list_t *streams, int32_t duration_us): ed247.cpp'],['../group__context__io.html#ga0b1dd58e03070d62b0ca74e2aee21d3c',1,'ed247_wait_during(ed247_context_t context, ed247_stream_list_t *streams, int32_t duration_us): ed247.cpp']]], + ['ed247_5fwait_5fframe',['ed247_wait_frame',['../group__context__io.html#gaa5d1e1629995c0ccb1931c393ef608a1',1,'ed247_wait_frame(ed247_context_t context, ed247_stream_list_t *streams, int32_t timeout_us): ed247.cpp'],['../group__context__io.html#gaa5d1e1629995c0ccb1931c393ef608a1',1,'ed247_wait_frame(ed247_context_t context, ed247_stream_list_t *streams, int32_t timeout_us): ed247.cpp']]], + ['ed247_5fyesno_5ffrom_5fstring',['ed247_yesno_from_string',['../group__strings.html#ga8422cdbc9258d69f8592b9af1c08d6a7',1,'ed247_yesno_from_string(const char *yesno): ed247_conversion.cpp'],['../group__strings.html#ga8422cdbc9258d69f8592b9af1c08d6a7',1,'ed247_yesno_from_string(const char *yesno): ed247_conversion.cpp']]], + ['ed247_5fyesno_5fstring',['ed247_yesno_string',['../group__strings.html#ga4b73efe63062b044e682c02d72d0c99c',1,'ed247_yesno_string(ed247_yesno_t yesno): ed247_conversion.cpp'],['../group__strings.html#ga4b73efe63062b044e682c02d72d0c99c',1,'ed247_yesno_string(ed247_yesno_t yesno): ed247_conversion.cpp']]], + ['ed247_5fyesno_5ft',['ed247_yesno_t',['../group__global.html#ga41f057faf96cb9ed94bbdba00a3684a9',1,'ed247.h']]], + ['emitter',['Emitter',['../classed247_1_1udp_1_1_emitter.html',1,'ed247::udp']]], + ['errors',['Errors',['../structed247_1_1xml_1_1_errors.html',1,'ed247::xml']]], + ['ethstream',['ETHStream',['../structed247_1_1xml_1_1_e_t_h_stream.html',1,'ed247::xml']]], + ['exception',['exception',['../classed247_1_1exception.html',1,'ed247']]], + ['exception',['exception',['../classed247_1_1xml_1_1exception.html',1,'ed247::xml']]] +]; diff --git a/docs/search/all_4.html b/docs/search/all_4.html new file mode 100644 index 00000000..7b814aa9 --- /dev/null +++ b/docs/search/all_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_4.js b/docs/search/all_4.js new file mode 100644 index 00000000..216a5855 --- /dev/null +++ b/docs/search/all_4.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['fixedstreamassistant',['FixedStreamAssistant',['../classed247_1_1_fixed_stream_assistant.html',1,'ed247']]], + ['frame_5ft',['frame_t',['../structed247_1_1udp_1_1_receiver_1_1frame__t.html',1,'ed247::udp::Receiver']]], + ['frameheader',['FrameHeader',['../classed247_1_1_frame_header.html',1,'ed247']]] +]; diff --git a/docs/search/all_5.html b/docs/search/all_5.html new file mode 100644 index 00000000..d8de5560 --- /dev/null +++ b/docs/search/all_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_5.js b/docs/search/all_5.js new file mode 100644 index 00000000..5041d88b --- /dev/null +++ b/docs/search/all_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['general_20information',['General information',['../group__context__info.html',1,'']]], + ['global_20resources',['Global resources',['../group__global.html',1,'']]] +]; diff --git a/docs/search/all_6.html b/docs/search/all_6.html new file mode 100644 index 00000000..9ba0cc2b --- /dev/null +++ b/docs/search/all_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_6.js b/docs/search/all_6.js new file mode 100644 index 00000000..add5645f --- /dev/null +++ b/docs/search/all_6.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['header',['Header',['../structed247_1_1xml_1_1_header.html',1,'ed247::xml']]], + ['hex_5fstream',['hex_stream',['../classhex__stream.html',1,'']]] +]; diff --git a/docs/search/all_7.html b/docs/search/all_7.html new file mode 100644 index 00000000..9384ec9b --- /dev/null +++ b/docs/search/all_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_7.js b/docs/search/all_7.js new file mode 100644 index 00000000..fbfbfabb --- /dev/null +++ b/docs/search/all_7.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['initialization',['Initialization',['../group__context__init.html',1,'']]], + ['introduction',['Introduction',['../index.html',1,'']]], + ['is_5fpair',['is_pair',['../structed247_1_1is__pair.html',1,'ed247']]], + ['is_5fpair_3c_20std_3a_3apair_3c_20t_2c_20u_20_3e_20_3e',['is_pair< std::pair< T, U > >',['../structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4.html',1,'ed247']]] +]; diff --git a/docs/search/all_8.html b/docs/search/all_8.html new file mode 100644 index 00000000..37566c5d --- /dev/null +++ b/docs/search/all_8.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_8.js b/docs/search/all_8.js new file mode 100644 index 00000000..3e46f057 --- /dev/null +++ b/docs/search/all_8.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['libed247_5ferrors',['libed247_errors',['../group__deprecated.html#gaaaf52ff2cce721e9726d04681406d050',1,'libed247_errors(): ed247.cpp'],['../group__deprecated.html#gaaaf52ff2cce721e9726d04681406d050',1,'libed247_errors(): ed247.cpp']]], + ['libed247_5fruntime_5fmetrics_5ft',['libed247_runtime_metrics_t',['../structlibed247__runtime__metrics__t.html',1,'']]], + ['log',['log',['../structed247_1_1log.html',1,'ed247']]], + ['license',['License',['../page_license.html',1,'']]] +]; diff --git a/docs/search/all_9.html b/docs/search/all_9.html new file mode 100644 index 00000000..c8c51023 --- /dev/null +++ b/docs/search/all_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_9.js b/docs/search/all_9.js new file mode 100644 index 00000000..3c5e2674 --- /dev/null +++ b/docs/search/all_9.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['nadsignal',['NADSignal',['../structed247_1_1xml_1_1_n_a_d_signal.html',1,'ed247::xml']]], + ['nadstream',['NADStream',['../structed247_1_1xml_1_1_n_a_d_stream.html',1,'ed247::xml']]], + ['node',['Node',['../structed247_1_1xml_1_1_node.html',1,'ed247::xml']]] +]; diff --git a/docs/search/all_a.html b/docs/search/all_a.html new file mode 100644 index 00000000..4cb31f0c --- /dev/null +++ b/docs/search/all_a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_a.js b/docs/search/all_a.js new file mode 100644 index 00000000..0533e07c --- /dev/null +++ b/docs/search/all_a.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['receive_20and_20send_20callbacks',['Receive and send callbacks',['../group__context__callback.html',1,'']]], + ['read_20configuration',['Read configuration',['../group__context__config.html',1,'']]], + ['receive_20and_20send',['Receive and send',['../group__context__io.html',1,'']]], + ['receiver',['Receiver',['../classed247_1_1udp_1_1_receiver.html',1,'ed247::udp']]], + ['receiverset',['ReceiverSet',['../classed247_1_1udp_1_1_receiver_set.html',1,'ed247::udp']]], + ['read_20and_20write',['Read and Write',['../group__stream__io.html',1,'']]] +]; diff --git a/docs/search/all_b.html b/docs/search/all_b.html new file mode 100644 index 00000000..d34a612e --- /dev/null +++ b/docs/search/all_b.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_b.js b/docs/search/all_b.js new file mode 100644 index 00000000..8037c7fb --- /dev/null +++ b/docs/search/all_b.js @@ -0,0 +1,30 @@ +var searchData= +[ + ['sample',['Sample',['../classed247_1_1_sample.html',1,'ed247']]], + ['serialstream',['SERIALStream',['../structed247_1_1xml_1_1_s_e_r_i_a_l_stream.html',1,'ed247::xml']]], + ['signal',['Signal',['../structed247_1_1xml_1_1_signal.html',1,'ed247::xml']]], + ['signal',['Signal',['../classed247_1_1_signal.html',1,'ed247']]], + ['signal',['Signal',['../group__signal.html',1,'']]], + ['signal_20list',['Signal list',['../group__signal__list.html',1,'']]], + ['signalset',['SignalSet',['../classed247_1_1_signal_set.html',1,'ed247']]], + ['sockaddr_5fin',['sockaddr_in',['../classsockaddr__in.html',1,'']]], + ['socket_5faddress_5fequal_5fto',['socket_address_equal_to',['../structed247_1_1udp_1_1socket__address__equal__to.html',1,'ed247::udp']]], + ['socket_5faddress_5fhash',['socket_address_hash',['../structed247_1_1udp_1_1socket__address__hash.html',1,'ed247::udp']]], + ['socket_5faddress_5ft',['socket_address_t',['../structed247_1_1udp_1_1socket__address__t.html',1,'ed247::udp']]], + ['stream',['Stream',['../group__stream.html',1,'']]], + ['stream',['Stream',['../classed247_1_1_stream.html',1,'ed247']]], + ['stream',['Stream',['../structed247_1_1xml_1_1_stream.html',1,'ed247::xml']]], + ['stream_20assistant_20_28read_2fwrite_20signals_29',['Stream Assistant (read/write signals)',['../group__stream__assistant.html',1,'']]], + ['stream_5fassistants_5fpop_5fsamples',['stream_assistants_pop_samples',['../group__stream__assistant.html#ga077ed72fcc9dc05293b02e72bd6a21f3',1,'stream_assistants_pop_samples(ed247_context_t context): ed247.cpp'],['../group__stream__assistant.html#ga077ed72fcc9dc05293b02e72bd6a21f3',1,'stream_assistants_pop_samples(ed247_context_t context): ed247.cpp']]], + ['stream_20list',['Stream list',['../group__stream__list.html',1,'']]], + ['streamassistant',['StreamAssistant',['../classed247_1_1_stream_assistant.html',1,'ed247']]], + ['streamprotocoled',['StreamProtocoled',['../structed247_1_1xml_1_1_stream_protocoled.html',1,'ed247::xml']]], + ['streamsample',['StreamSample',['../classed247_1_1_stream_sample.html',1,'ed247']]], + ['streamsampleringbuffer',['StreamSampleRingBuffer',['../classed247_1_1_stream_sample_ring_buffer.html',1,'ed247']]], + ['streamset',['StreamSet',['../classed247_1_1_stream_set.html',1,'ed247']]], + ['streamsignals',['StreamSignals',['../structed247_1_1xml_1_1_stream_signals.html',1,'ed247::xml']]], + ['streamsignals',['StreamSignals',['../structed247_1_1_stream_signals.html',1,'ed247']]], + ['string_20conversion',['String conversion',['../group__strings.html',1,'']]], + ['strize',['strize',['../structstrize.html',1,'']]], + ['system_5fsocket_5fmap_5ft',['system_socket_map_t',['../structed247_1_1udp_1_1system__socket__map__t.html',1,'ed247::udp']]] +]; diff --git a/docs/search/all_c.html b/docs/search/all_c.html new file mode 100644 index 00000000..c1ae2cae --- /dev/null +++ b/docs/search/all_c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_c.js b/docs/search/all_c.js new file mode 100644 index 00000000..ea567c8f --- /dev/null +++ b/docs/search/all_c.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['tools',['Tools',['../page_utils.html',1,'']]], + ['time_20management',['Time management',['../group__time.html',1,'']]], + ['transceiver',['Transceiver',['../classed247_1_1udp_1_1_transceiver.html',1,'ed247::udp']]] +]; diff --git a/docs/search/all_d.html b/docs/search/all_d.html new file mode 100644 index 00000000..712223c6 --- /dev/null +++ b/docs/search/all_d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_d.js b/docs/search/all_d.js new file mode 100644 index 00000000..e588847c --- /dev/null +++ b/docs/search/all_d.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['udpsocket',['UdpSocket',['../structed247_1_1xml_1_1_udp_socket.html',1,'ed247::xml']]] +]; diff --git a/docs/search/all_e.html b/docs/search/all_e.html new file mode 100644 index 00000000..d553ffa2 --- /dev/null +++ b/docs/search/all_e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/all_e.js b/docs/search/all_e.js new file mode 100644 index 00000000..f5536b15 --- /dev/null +++ b/docs/search/all_e.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['vnadsignal',['VNADSignal',['../structed247_1_1xml_1_1_v_n_a_d_signal.html',1,'ed247::xml']]], + ['vnadstream',['VNADStream',['../structed247_1_1xml_1_1_v_n_a_d_stream.html',1,'ed247::xml']]], + ['vnadstreamassistant',['VNADStreamAssistant',['../classed247_1_1_v_n_a_d_stream_assistant.html',1,'ed247']]] +]; diff --git a/docs/search/classes_0.html b/docs/search/classes_0.html new file mode 100644 index 00000000..025587a7 --- /dev/null +++ b/docs/search/classes_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_0.js b/docs/search/classes_0.js new file mode 100644 index 00000000..9e1ea53e --- /dev/null +++ b/docs/search/classes_0.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['a429stream',['A429Stream',['../structed247_1_1xml_1_1_a429_stream.html',1,'ed247::xml']]], + ['a664stream',['A664Stream',['../structed247_1_1xml_1_1_a664_stream.html',1,'ed247::xml']]], + ['a825stream',['A825Stream',['../structed247_1_1xml_1_1_a825_stream.html',1,'ed247::xml']]], + ['anasignal',['ANASignal',['../structed247_1_1xml_1_1_a_n_a_signal.html',1,'ed247::xml']]], + ['anastream',['ANAStream',['../structed247_1_1xml_1_1_a_n_a_stream.html',1,'ed247::xml']]] +]; diff --git a/docs/search/classes_1.html b/docs/search/classes_1.html new file mode 100644 index 00000000..86dc4ffe --- /dev/null +++ b/docs/search/classes_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_1.js b/docs/search/classes_1.js new file mode 100644 index 00000000..1a2b237e --- /dev/null +++ b/docs/search/classes_1.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['cbaselist',['CBaseList',['../class_c_base_list.html',1,'']]], + ['channel',['Channel',['../classed247_1_1_channel.html',1,'ed247']]], + ['channel',['Channel',['../structed247_1_1xml_1_1_channel.html',1,'ed247::xml']]], + ['channelset',['ChannelSet',['../classed247_1_1_channel_set.html',1,'ed247']]], + ['client_5flist',['client_list',['../structed247_1_1client__list.html',1,'ed247']]], + ['client_5flist_5fcontainer',['client_list_container',['../structed247_1_1client__list__container.html',1,'ed247']]], + ['clientstreamlistwithdata',['ClientStreamListWithData',['../structed247_1_1_client_stream_list_with_data.html',1,'ed247']]], + ['cominterface',['ComInterface',['../structed247_1_1xml_1_1_com_interface.html',1,'ed247::xml']]], + ['cominterface',['ComInterface',['../classed247_1_1udp_1_1_com_interface.html',1,'ed247::udp']]], + ['component',['Component',['../structed247_1_1xml_1_1_component.html',1,'ed247::xml']]], + ['context',['Context',['../classed247_1_1_context.html',1,'ed247']]] +]; diff --git a/docs/search/classes_2.html b/docs/search/classes_2.html new file mode 100644 index 00000000..014caf80 --- /dev/null +++ b/docs/search/classes_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_2.js b/docs/search/classes_2.js new file mode 100644 index 00000000..273abe92 --- /dev/null +++ b/docs/search/classes_2.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['datatimestamp',['DataTimestamp',['../structed247_1_1xml_1_1_data_timestamp.html',1,'ed247::xml']]], + ['dissignal',['DISSignal',['../structed247_1_1xml_1_1_d_i_s_signal.html',1,'ed247::xml']]], + ['disstream',['DISStream',['../structed247_1_1xml_1_1_d_i_s_stream.html',1,'ed247::xml']]] +]; diff --git a/docs/search/classes_3.html b/docs/search/classes_3.html new file mode 100644 index 00000000..2e972011 --- /dev/null +++ b/docs/search/classes_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_3.js b/docs/search/classes_3.js new file mode 100644 index 00000000..9818677e --- /dev/null +++ b/docs/search/classes_3.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['ed247_5finternal_5fchannel_5flist_5ft',['ed247_internal_channel_list_t',['../structed247__internal__channel__list__t.html',1,'']]], + ['ed247_5finternal_5fchannel_5ft',['ed247_internal_channel_t',['../structed247__internal__channel__t.html',1,'']]], + ['ed247_5finternal_5fcontext_5ft',['ed247_internal_context_t',['../structed247__internal__context__t.html',1,'']]], + ['ed247_5finternal_5fsignal_5flist_5ft',['ed247_internal_signal_list_t',['../structed247__internal__signal__list__t.html',1,'']]], + ['ed247_5finternal_5fsignal_5ft',['ed247_internal_signal_t',['../structed247__internal__signal__t.html',1,'']]], + ['ed247_5finternal_5fstream_5fassistant_5ft',['ed247_internal_stream_assistant_t',['../structed247__internal__stream__assistant__t.html',1,'']]], + ['ed247_5finternal_5fstream_5flist_5ft',['ed247_internal_stream_list_t',['../structed247__internal__stream__list__t.html',1,'']]], + ['ed247_5finternal_5fstream_5ft',['ed247_internal_stream_t',['../structed247__internal__stream__t.html',1,'']]], + ['ed247_5fsample_5fdetails_5fs',['ed247_sample_details_s',['../structed247__sample__details__s.html',1,'']]], + ['ed247_5ftimestamp_5ft',['ed247_timestamp_t',['../structed247__timestamp__t.html',1,'']]], + ['emitter',['Emitter',['../classed247_1_1udp_1_1_emitter.html',1,'ed247::udp']]], + ['errors',['Errors',['../structed247_1_1xml_1_1_errors.html',1,'ed247::xml']]], + ['ethstream',['ETHStream',['../structed247_1_1xml_1_1_e_t_h_stream.html',1,'ed247::xml']]], + ['exception',['exception',['../classed247_1_1exception.html',1,'ed247']]], + ['exception',['exception',['../classed247_1_1xml_1_1exception.html',1,'ed247::xml']]] +]; diff --git a/docs/search/classes_4.html b/docs/search/classes_4.html new file mode 100644 index 00000000..776fee37 --- /dev/null +++ b/docs/search/classes_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_4.js b/docs/search/classes_4.js new file mode 100644 index 00000000..216a5855 --- /dev/null +++ b/docs/search/classes_4.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['fixedstreamassistant',['FixedStreamAssistant',['../classed247_1_1_fixed_stream_assistant.html',1,'ed247']]], + ['frame_5ft',['frame_t',['../structed247_1_1udp_1_1_receiver_1_1frame__t.html',1,'ed247::udp::Receiver']]], + ['frameheader',['FrameHeader',['../classed247_1_1_frame_header.html',1,'ed247']]] +]; diff --git a/docs/search/classes_5.html b/docs/search/classes_5.html new file mode 100644 index 00000000..69bbcc8b --- /dev/null +++ b/docs/search/classes_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_5.js b/docs/search/classes_5.js new file mode 100644 index 00000000..add5645f --- /dev/null +++ b/docs/search/classes_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['header',['Header',['../structed247_1_1xml_1_1_header.html',1,'ed247::xml']]], + ['hex_5fstream',['hex_stream',['../classhex__stream.html',1,'']]] +]; diff --git a/docs/search/classes_6.html b/docs/search/classes_6.html new file mode 100644 index 00000000..2db08a01 --- /dev/null +++ b/docs/search/classes_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_6.js b/docs/search/classes_6.js new file mode 100644 index 00000000..75b6f144 --- /dev/null +++ b/docs/search/classes_6.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['is_5fpair',['is_pair',['../structed247_1_1is__pair.html',1,'ed247']]], + ['is_5fpair_3c_20std_3a_3apair_3c_20t_2c_20u_20_3e_20_3e',['is_pair< std::pair< T, U > >',['../structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4.html',1,'ed247']]] +]; diff --git a/docs/search/classes_7.html b/docs/search/classes_7.html new file mode 100644 index 00000000..fd67346e --- /dev/null +++ b/docs/search/classes_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_7.js b/docs/search/classes_7.js new file mode 100644 index 00000000..b0caeef5 --- /dev/null +++ b/docs/search/classes_7.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['libed247_5fruntime_5fmetrics_5ft',['libed247_runtime_metrics_t',['../structlibed247__runtime__metrics__t.html',1,'']]], + ['log',['log',['../structed247_1_1log.html',1,'ed247']]] +]; diff --git a/docs/search/classes_8.html b/docs/search/classes_8.html new file mode 100644 index 00000000..369fe529 --- /dev/null +++ b/docs/search/classes_8.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_8.js b/docs/search/classes_8.js new file mode 100644 index 00000000..3c5e2674 --- /dev/null +++ b/docs/search/classes_8.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['nadsignal',['NADSignal',['../structed247_1_1xml_1_1_n_a_d_signal.html',1,'ed247::xml']]], + ['nadstream',['NADStream',['../structed247_1_1xml_1_1_n_a_d_stream.html',1,'ed247::xml']]], + ['node',['Node',['../structed247_1_1xml_1_1_node.html',1,'ed247::xml']]] +]; diff --git a/docs/search/classes_9.html b/docs/search/classes_9.html new file mode 100644 index 00000000..188dbb38 --- /dev/null +++ b/docs/search/classes_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_9.js b/docs/search/classes_9.js new file mode 100644 index 00000000..7a7a3dd7 --- /dev/null +++ b/docs/search/classes_9.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['receiver',['Receiver',['../classed247_1_1udp_1_1_receiver.html',1,'ed247::udp']]], + ['receiverset',['ReceiverSet',['../classed247_1_1udp_1_1_receiver_set.html',1,'ed247::udp']]] +]; diff --git a/docs/search/classes_a.html b/docs/search/classes_a.html new file mode 100644 index 00000000..e7610d35 --- /dev/null +++ b/docs/search/classes_a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_a.js b/docs/search/classes_a.js new file mode 100644 index 00000000..42ceab5b --- /dev/null +++ b/docs/search/classes_a.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['sample',['Sample',['../classed247_1_1_sample.html',1,'ed247']]], + ['serialstream',['SERIALStream',['../structed247_1_1xml_1_1_s_e_r_i_a_l_stream.html',1,'ed247::xml']]], + ['signal',['Signal',['../structed247_1_1xml_1_1_signal.html',1,'ed247::xml']]], + ['signal',['Signal',['../classed247_1_1_signal.html',1,'ed247']]], + ['signalset',['SignalSet',['../classed247_1_1_signal_set.html',1,'ed247']]], + ['sockaddr_5fin',['sockaddr_in',['../classsockaddr__in.html',1,'']]], + ['socket_5faddress_5fequal_5fto',['socket_address_equal_to',['../structed247_1_1udp_1_1socket__address__equal__to.html',1,'ed247::udp']]], + ['socket_5faddress_5fhash',['socket_address_hash',['../structed247_1_1udp_1_1socket__address__hash.html',1,'ed247::udp']]], + ['socket_5faddress_5ft',['socket_address_t',['../structed247_1_1udp_1_1socket__address__t.html',1,'ed247::udp']]], + ['stream',['Stream',['../classed247_1_1_stream.html',1,'ed247']]], + ['stream',['Stream',['../structed247_1_1xml_1_1_stream.html',1,'ed247::xml']]], + ['streamassistant',['StreamAssistant',['../classed247_1_1_stream_assistant.html',1,'ed247']]], + ['streamprotocoled',['StreamProtocoled',['../structed247_1_1xml_1_1_stream_protocoled.html',1,'ed247::xml']]], + ['streamsample',['StreamSample',['../classed247_1_1_stream_sample.html',1,'ed247']]], + ['streamsampleringbuffer',['StreamSampleRingBuffer',['../classed247_1_1_stream_sample_ring_buffer.html',1,'ed247']]], + ['streamset',['StreamSet',['../classed247_1_1_stream_set.html',1,'ed247']]], + ['streamsignals',['StreamSignals',['../structed247_1_1_stream_signals.html',1,'ed247']]], + ['streamsignals',['StreamSignals',['../structed247_1_1xml_1_1_stream_signals.html',1,'ed247::xml']]], + ['strize',['strize',['../structstrize.html',1,'']]], + ['system_5fsocket_5fmap_5ft',['system_socket_map_t',['../structed247_1_1udp_1_1system__socket__map__t.html',1,'ed247::udp']]] +]; diff --git a/docs/search/classes_b.html b/docs/search/classes_b.html new file mode 100644 index 00000000..4fc0a3f6 --- /dev/null +++ b/docs/search/classes_b.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_b.js b/docs/search/classes_b.js new file mode 100644 index 00000000..a81a8026 --- /dev/null +++ b/docs/search/classes_b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['transceiver',['Transceiver',['../classed247_1_1udp_1_1_transceiver.html',1,'ed247::udp']]] +]; diff --git a/docs/search/classes_c.html b/docs/search/classes_c.html new file mode 100644 index 00000000..d2a582ec --- /dev/null +++ b/docs/search/classes_c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_c.js b/docs/search/classes_c.js new file mode 100644 index 00000000..e588847c --- /dev/null +++ b/docs/search/classes_c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['udpsocket',['UdpSocket',['../structed247_1_1xml_1_1_udp_socket.html',1,'ed247::xml']]] +]; diff --git a/docs/search/classes_d.html b/docs/search/classes_d.html new file mode 100644 index 00000000..0fa42149 --- /dev/null +++ b/docs/search/classes_d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/classes_d.js b/docs/search/classes_d.js new file mode 100644 index 00000000..f5536b15 --- /dev/null +++ b/docs/search/classes_d.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['vnadsignal',['VNADSignal',['../structed247_1_1xml_1_1_v_n_a_d_signal.html',1,'ed247::xml']]], + ['vnadstream',['VNADStream',['../structed247_1_1xml_1_1_v_n_a_d_stream.html',1,'ed247::xml']]], + ['vnadstreamassistant',['VNADStreamAssistant',['../classed247_1_1_v_n_a_d_stream_assistant.html',1,'ed247']]] +]; diff --git a/docs/search/close.png b/docs/search/close.png new file mode 100644 index 00000000..9342d3df Binary files /dev/null and b/docs/search/close.png differ diff --git a/docs/search/enums_0.html b/docs/search/enums_0.html new file mode 100644 index 00000000..aba8d799 --- /dev/null +++ b/docs/search/enums_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/enums_0.js b/docs/search/enums_0.js new file mode 100644 index 00000000..72ef487d --- /dev/null +++ b/docs/search/enums_0.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['ed247_5fcomponent_5ftype_5ft',['ed247_component_type_t',['../group__context.html#ga7d4c77176d9b208f32febdf8000d0201',1,'ed247.h']]], + ['ed247_5fdirection_5ft',['ed247_direction_t',['../group__stream.html#gafeddea8945eb68a6591f8bfd4dea300b',1,'ed247.h']]], + ['ed247_5fdiscrete_5ft',['ed247_discrete_t',['../group__signal.html#gac64036263086ab89d8bfd184a4188ca3',1,'ed247.h']]], + ['ed247_5flog_5flevel_5ft',['ed247_log_level_t',['../group__global.html#ga2cb7bb978e600027d9dc43231031261c',1,'ed247.h']]], + ['ed247_5fnad_5ftype_5ft',['ed247_nad_type_t',['../group__signal.html#ga7aed669e25d6dfc317c62918c77abbe9',1,'ed247.h']]], + ['ed247_5fsignal_5ftype_5ft',['ed247_signal_type_t',['../group__signal.html#ga60d87733e39697d8becc32198a1cf554',1,'ed247.h']]], + ['ed247_5fstandard_5ft',['ed247_standard_t',['../group__global.html#ga5afd784da0ce94a3197e279c250e7716',1,'ed247.h']]], + ['ed247_5fstatus_5ft',['ed247_status_t',['../group__global.html#ga59cffc81f5f116a6a1336e5ff16c9415',1,'ed247.h']]], + ['ed247_5fstream_5ftype_5ft',['ed247_stream_type_t',['../group__stream.html#gad6c32a32b943c5785e7675e9688b51d8',1,'ed247.h']]], + ['ed247_5fyesno_5ft',['ed247_yesno_t',['../group__global.html#ga41f057faf96cb9ed94bbdba00a3684a9',1,'ed247.h']]] +]; diff --git a/docs/search/functions_0.html b/docs/search/functions_0.html new file mode 100644 index 00000000..6bc52b61 --- /dev/null +++ b/docs/search/functions_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/functions_0.js b/docs/search/functions_0.js new file mode 100644 index 00000000..2bef5680 --- /dev/null +++ b/docs/search/functions_0.js @@ -0,0 +1,106 @@ +var searchData= +[ + ['ed247_5fchannel_5ffind_5fstreams',['ed247_channel_find_streams',['../group__channel.html#gabfcc14dde1002df2b85d71163d2da01c',1,'ed247_channel_find_streams(ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp'],['../group__channel.html#gabfcc14dde1002df2b85d71163d2da01c',1,'ed247_channel_find_streams(ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5fchannel_5fget_5fstream',['ed247_channel_get_stream',['../group__channel.html#ga84a4ed6367c10e5b3095689927b007c6',1,'ed247_channel_get_stream(ed247_channel_t channel, const char *name, ed247_stream_t *stream): ed247.cpp'],['../group__channel.html#ga84a4ed6367c10e5b3095689927b007c6',1,'ed247_channel_get_stream(ed247_channel_t channel, const char *name, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fchannel_5fget_5fstream_5flist',['ed247_channel_get_stream_list',['../group__channel.html#ga320b38be99031cea49a2db0bd74fafac',1,'ed247_channel_get_stream_list(ed247_channel_t channel, ed247_stream_list_t *streams): ed247.cpp'],['../group__channel.html#ga320b38be99031cea49a2db0bd74fafac',1,'ed247_channel_get_stream_list(ed247_channel_t channel, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5fchannel_5fget_5fstreams',['ed247_channel_get_streams',['../group__deprecated.html#ga7df7b0ae643659a6f56ffd1f1a285d21',1,'ed247_channel_get_streams(ed247_channel_t channel, ed247_stream_list_t *streams): ed247.cpp'],['../group__deprecated.html#ga7df7b0ae643659a6f56ffd1f1a285d21',1,'ed247_channel_get_streams(ed247_channel_t channel, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5fchannel_5fget_5fuser_5fdata',['ed247_channel_get_user_data',['../group__channel.html#gac32bcccc90f64758a800c0d5486f33fe',1,'ed247_channel_get_user_data(ed247_channel_t channel, void **user_data): ed247.cpp'],['../group__channel.html#gac32bcccc90f64758a800c0d5486f33fe',1,'ed247_channel_get_user_data(ed247_channel_t channel, void **user_data): ed247.cpp']]], + ['ed247_5fchannel_5flist_5ffree',['ed247_channel_list_free',['../group__channel__list.html#gaaed6b1b9cc42eeef890bf600a0124f37',1,'ed247_channel_list_free(ed247_channel_list_t channels): ed247.cpp'],['../group__channel__list.html#gaaed6b1b9cc42eeef890bf600a0124f37',1,'ed247_channel_list_free(ed247_channel_list_t channels): ed247.cpp']]], + ['ed247_5fchannel_5flist_5fnext',['ed247_channel_list_next',['../group__channel__list.html#gac144622372ae2ffa5ef38b752c2c1ea5',1,'ed247_channel_list_next(ed247_channel_list_t channels, ed247_channel_t *channel): ed247.cpp'],['../group__channel__list.html#gac144622372ae2ffa5ef38b752c2c1ea5',1,'ed247_channel_list_next(ed247_channel_list_t channels, ed247_channel_t *channel): ed247.cpp']]], + ['ed247_5fchannel_5flist_5fsize',['ed247_channel_list_size',['../group__channel__list.html#gaf68b90c07978d98a4a1c1398c8e4c098',1,'ed247_channel_list_size(ed247_channel_list_t channels, uint32_t *size): ed247.cpp'],['../group__channel__list.html#gaf68b90c07978d98a4a1c1398c8e4c098',1,'ed247_channel_list_size(ed247_channel_list_t channels, uint32_t *size): ed247.cpp']]], + ['ed247_5fchannel_5fset_5fuser_5fdata',['ed247_channel_set_user_data',['../group__channel.html#gaf006f79b36c426d11caf58ae0e529812',1,'ed247_channel_set_user_data(ed247_channel_t channel, void *user_data): ed247.cpp'],['../group__channel.html#gaf006f79b36c426d11caf58ae0e529812',1,'ed247_channel_set_user_data(ed247_channel_t channel, void *user_data): ed247.cpp']]], + ['ed247_5fcomponent_5fget_5fchannels',['ed247_component_get_channels',['../group__deprecated.html#gab1ac5553b13489a1795abef93cab7033',1,'ed247_component_get_channels(ed247_context_t context, ed247_channel_list_t *channels): ed247.cpp'],['../group__deprecated.html#gab1ac5553b13489a1795abef93cab7033',1,'ed247_component_get_channels(ed247_context_t context, ed247_channel_list_t *channels): ed247.cpp']]], + ['ed247_5fcomponent_5fget_5fstreams',['ed247_component_get_streams',['../group__deprecated.html#gafc2105864f051cb463539a141336a443',1,'ed247_component_get_streams(ed247_context_t context, ed247_stream_list_t *streams): ed247.cpp'],['../group__deprecated.html#gafc2105864f051cb463539a141336a443',1,'ed247_component_get_streams(ed247_context_t context, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5fcomponent_5fget_5fuser_5fdata',['ed247_component_get_user_data',['../group__context__init.html#ga87c3d5d4040777631fe85eba8c5c4956',1,'ed247_component_get_user_data(ed247_context_t context, void **user_data): ed247.cpp'],['../group__context__init.html#ga87c3d5d4040777631fe85eba8c5c4956',1,'ed247_component_get_user_data(ed247_context_t context, void **user_data): ed247.cpp']]], + ['ed247_5fcomponent_5fset_5fuser_5fdata',['ed247_component_set_user_data',['../group__context__init.html#ga13d40fbd8093b97d115aeaaeac242f12',1,'ed247_component_set_user_data(ed247_context_t context, void *user_data): ed247.cpp'],['../group__context__init.html#ga13d40fbd8093b97d115aeaaeac242f12',1,'ed247_component_set_user_data(ed247_context_t context, void *user_data): ed247.cpp']]], + ['ed247_5fcomponent_5ftype_5ffrom_5fstring',['ed247_component_type_from_string',['../group__strings.html#gaff5276910e5a9f9f12f2893067c9c368',1,'ed247_component_type_from_string(const char *component_type): ed247_conversion.cpp'],['../group__strings.html#gaff5276910e5a9f9f12f2893067c9c368',1,'ed247_component_type_from_string(const char *component_type): ed247_conversion.cpp']]], + ['ed247_5fcomponent_5ftype_5fstring',['ed247_component_type_string',['../group__strings.html#gadfa22b5fe771535e20609ea96ed42dc9',1,'ed247_component_type_string(ed247_component_type_t component_type): ed247_conversion.cpp'],['../group__strings.html#gadfa22b5fe771535e20609ea96ed42dc9',1,'ed247_component_type_string(ed247_component_type_t component_type): ed247_conversion.cpp']]], + ['ed247_5fdirection_5ffrom_5fstring',['ed247_direction_from_string',['../group__strings.html#ga543607a06ff57d0b53151f36811c455c',1,'ed247_direction_from_string(const char *direction): ed247_conversion.cpp'],['../group__strings.html#ga543607a06ff57d0b53151f36811c455c',1,'ed247_direction_from_string(const char *direction): ed247_conversion.cpp']]], + ['ed247_5fdirection_5fstring',['ed247_direction_string',['../group__strings.html#ga41b7737dcdd6c58ecf0e7455fd87e106',1,'ed247_direction_string(ed247_direction_t direction): ed247_conversion.cpp'],['../group__strings.html#ga41b7737dcdd6c58ecf0e7455fd87e106',1,'ed247_direction_string(ed247_direction_t direction): ed247_conversion.cpp']]], + ['ed247_5ffind_5fchannel_5fstreams',['ed247_find_channel_streams',['../group__deprecated.html#ga7d3ce1ec5a2d581cf3c1bb9707e2bcbf',1,'ed247_find_channel_streams(ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp'],['../group__deprecated.html#ga7d3ce1ec5a2d581cf3c1bb9707e2bcbf',1,'ed247_find_channel_streams(ed247_channel_t channel, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5ffind_5fchannels',['ed247_find_channels',['../group__context__config.html#ga49100975512ba6b64fbbb1f4edb16bc1',1,'ed247_find_channels(ed247_context_t context, const char *regex_name, ed247_channel_list_t *channels): ed247.cpp'],['../group__context__config.html#ga49100975512ba6b64fbbb1f4edb16bc1',1,'ed247_find_channels(ed247_context_t context, const char *regex_name, ed247_channel_list_t *channels): ed247.cpp']]], + ['ed247_5ffind_5fsignals',['ed247_find_signals',['../group__context__config.html#gacc142fdd08ced5b83b199591ac807752',1,'ed247_find_signals(ed247_context_t context, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp'],['../group__context__config.html#gacc142fdd08ced5b83b199591ac807752',1,'ed247_find_signals(ed247_context_t context, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp']]], + ['ed247_5ffind_5fstream_5fsignals',['ed247_find_stream_signals',['../group__deprecated.html#ga7d41c5c077409d33eb3173fc2b059fac',1,'ed247_find_stream_signals(ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp'],['../group__deprecated.html#ga7d41c5c077409d33eb3173fc2b059fac',1,'ed247_find_stream_signals(ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp']]], + ['ed247_5ffind_5fstreams',['ed247_find_streams',['../group__context__config.html#ga360affab24abac696291952b8fd056f0',1,'ed247_find_streams(ed247_context_t context, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp'],['../group__context__config.html#ga360affab24abac696291952b8fd056f0',1,'ed247_find_streams(ed247_context_t context, const char *regex_name, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5ffree',['ed247_free',['../group__deprecated.html#ga974811afaa83fceda9a08773c2bfd74c',1,'ed247_free(void *data): ed247.cpp'],['../group__deprecated.html#ga974811afaa83fceda9a08773c2bfd74c',1,'ed247_free(void *data): ed247.cpp']]], + ['ed247_5fget_5fchannel',['ed247_get_channel',['../group__context__config.html#gadc5c7fcf608f349367fea932ee1f1f10',1,'ed247_get_channel(ed247_context_t context, const char *name, ed247_channel_t *channel): ed247.cpp'],['../group__context__config.html#gadc5c7fcf608f349367fea932ee1f1f10',1,'ed247_get_channel(ed247_context_t context, const char *name, ed247_channel_t *channel): ed247.cpp']]], + ['ed247_5fget_5fchannel_5flist',['ed247_get_channel_list',['../group__context__config.html#ga14247ee166bf9675fdf1d4ddffa5554e',1,'ed247_get_channel_list(ed247_context_t context, ed247_channel_list_t *channels): ed247.cpp'],['../group__context__config.html#ga14247ee166bf9675fdf1d4ddffa5554e',1,'ed247_get_channel_list(ed247_context_t context, ed247_channel_list_t *channels): ed247.cpp']]], + ['ed247_5fget_5fchannel_5fstream',['ed247_get_channel_stream',['../group__deprecated.html#ga174f0b51b9fd7b0278055e724ca74598',1,'ed247_get_channel_stream(ed247_channel_t channel, const char *name, ed247_stream_t *stream): ed247.cpp'],['../group__deprecated.html#ga174f0b51b9fd7b0278055e724ca74598',1,'ed247_get_channel_stream(ed247_channel_t channel, const char *name, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fget_5fimplementation_5fname',['ed247_get_implementation_name',['../group__global.html#gadb00e0e45ad86bd56d98eb527b6dedde',1,'ed247_get_implementation_name(): ed247.cpp'],['../group__global.html#gadb00e0e45ad86bd56d98eb527b6dedde',1,'ed247_get_implementation_name(): ed247.cpp']]], + ['ed247_5fget_5fimplementation_5fversion',['ed247_get_implementation_version',['../group__global.html#ga797161571a767e5664e7e0730ef68fcb',1,'ed247_get_implementation_version(): ed247.cpp'],['../group__global.html#ga797161571a767e5664e7e0730ef68fcb',1,'ed247_get_implementation_version(): ed247.cpp']]], + ['ed247_5fget_5flog_5flevel',['ed247_get_log_level',['../group__global.html#ga1ad7043056fc48bc202d409638c344b9',1,'ed247_get_log_level(ed247_log_level_t *log_level): ed247.cpp'],['../group__global.html#ga1ad7043056fc48bc202d409638c344b9',1,'ed247_get_log_level(ed247_log_level_t *log_level): ed247.cpp']]], + ['ed247_5fget_5freceive_5ftimestamp',['ed247_get_receive_timestamp',['../group__time.html#gaa58caf17fb3a69ee8028d5184079ef95',1,'ed247_get_receive_timestamp(ed247_timestamp_t *timestamp): ed247_time.cpp'],['../group__time.html#gaa58caf17fb3a69ee8028d5184079ef95',1,'ed247_get_receive_timestamp(ed247_timestamp_t *timestamp): ed247_time.cpp']]], + ['ed247_5fget_5fruntime_5fmetrics',['ed247_get_runtime_metrics',['../group__deprecated.html#ga1e61493868917933855a574323fdfed5',1,'ed247_get_runtime_metrics(ed247_context_t context, const libed247_runtime_metrics_t **metrics): ed247.cpp'],['../group__deprecated.html#ga1e61493868917933855a574323fdfed5',1,'ed247_get_runtime_metrics(ed247_context_t context, const libed247_runtime_metrics_t **metrics): ed247.cpp']]], + ['ed247_5fget_5fsignal',['ed247_get_signal',['../group__context__config.html#gaa24483cc37e3e466de8bd635f0c4fb95',1,'ed247_get_signal(ed247_context_t context, const char *name, ed247_signal_t *signal): ed247.cpp'],['../group__context__config.html#gaa24483cc37e3e466de8bd635f0c4fb95',1,'ed247_get_signal(ed247_context_t context, const char *name, ed247_signal_t *signal): ed247.cpp']]], + ['ed247_5fget_5fstream',['ed247_get_stream',['../group__context__config.html#gaadf394fba0bfd2d2aba18d6332cd8ad8',1,'ed247_get_stream(ed247_context_t context, const char *name, ed247_stream_t *stream): ed247.cpp'],['../group__context__config.html#gaadf394fba0bfd2d2aba18d6332cd8ad8',1,'ed247_get_stream(ed247_context_t context, const char *name, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fget_5fstream_5flist',['ed247_get_stream_list',['../group__context__config.html#ga4b8344532b192ff5d6fe15789a710bd6',1,'ed247_get_stream_list(ed247_context_t context, ed247_stream_list_t *streams): ed247.cpp'],['../group__context__config.html#ga4b8344532b192ff5d6fe15789a710bd6',1,'ed247_get_stream_list(ed247_context_t context, ed247_stream_list_t *streams): ed247.cpp']]], + ['ed247_5fget_5fstream_5fsignal',['ed247_get_stream_signal',['../group__deprecated.html#gad40542910a61fd371a2459beb49c654c',1,'ed247_get_stream_signal(ed247_stream_t stream, const char *name, ed247_signal_t *signal): ed247.cpp'],['../group__deprecated.html#gad40542910a61fd371a2459beb49c654c',1,'ed247_get_stream_signal(ed247_stream_t stream, const char *name, ed247_signal_t *signal): ed247.cpp']]], + ['ed247_5fget_5ftime',['ed247_get_time',['../group__time.html#gabc1751506aa054d415e50c2eaaeb535e',1,'ed247_get_time(ed247_timestamp_t *timestamp): ed247_time.cpp'],['../group__time.html#gabc1751506aa054d415e50c2eaaeb535e',1,'ed247_get_time(ed247_timestamp_t *timestamp): ed247_time.cpp']]], + ['ed247_5fget_5ftransport_5ftimestamp',['ed247_get_transport_timestamp',['../group__time.html#ga05acbf08986fcf5d93fb3f9d32af7f5a',1,'ed247_get_transport_timestamp(ed247_timestamp_t *timestamp): ed247_time.cpp'],['../group__time.html#ga05acbf08986fcf5d93fb3f9d32af7f5a',1,'ed247_get_transport_timestamp(ed247_timestamp_t *timestamp): ed247_time.cpp']]], + ['ed247_5fload',['ed247_load',['../group__deprecated.html#ga0c9f1fa0767723acba051e8237f64709',1,'ed247_load(const char *ecic_file_path, void *unused, ed247_context_t *context): ed247.cpp'],['../group__deprecated.html#ga0c9f1fa0767723acba051e8237f64709',1,'ed247_load(const char *ecic_file_path, void *unused, ed247_context_t *context): ed247.cpp']]], + ['ed247_5fload_5fcontent',['ed247_load_content',['../group__context__init.html#ga3ec647f39bd8ed0c9965e926eda1a5a9',1,'ed247_load_content(const char *ecic_file_content, ed247_context_t *context): ed247.cpp'],['../group__context__init.html#ga3ec647f39bd8ed0c9965e926eda1a5a9',1,'ed247_load_content(const char *ecic_file_content, ed247_context_t *context): ed247.cpp']]], + ['ed247_5fload_5ffile',['ed247_load_file',['../group__context__init.html#gaf49ef33dd2d04f9fc5d15c3159ae3acc',1,'ed247_load_file(const char *ecic_file_path, ed247_context_t *context): ed247.cpp'],['../group__context__init.html#gaf49ef33dd2d04f9fc5d15c3159ae3acc',1,'ed247_load_file(const char *ecic_file_path, ed247_context_t *context): ed247.cpp']]], + ['ed247_5fnad_5ftype_5ffrom_5fstring',['ed247_nad_type_from_string',['../group__strings.html#ga820562cc9b8fdcc76eefcc70ffcf240c',1,'ed247_nad_type_from_string(const char *nad_type): ed247_conversion.cpp'],['../group__strings.html#ga820562cc9b8fdcc76eefcc70ffcf240c',1,'ed247_nad_type_from_string(const char *nad_type): ed247_conversion.cpp']]], + ['ed247_5fnad_5ftype_5fsize',['ed247_nad_type_size',['../group__signal.html#ga1ff979d1c1bca3c80f627caef4e1123d',1,'ed247_nad_type_size(ed247_nad_type_t nad_type): ed247.cpp'],['../group__signal.html#ga1ff979d1c1bca3c80f627caef4e1123d',1,'ed247_nad_type_size(ed247_nad_type_t nad_type): ed247.cpp']]], + ['ed247_5fnad_5ftype_5fstring',['ed247_nad_type_string',['../group__strings.html#ga0da47bc91d3ae514596f170b83aea01f',1,'ed247_nad_type_string(ed247_nad_type_t nad_type): ed247_conversion.cpp'],['../group__strings.html#ga0da47bc91d3ae514596f170b83aea01f',1,'ed247_nad_type_string(ed247_nad_type_t nad_type): ed247_conversion.cpp']]], + ['ed247_5fregister_5frecv_5fcallback',['ed247_register_recv_callback',['../group__context__callback.html#ga926b9b5e9d695f83f7bf94b0894d5b86',1,'ed247_register_recv_callback(ed247_context_t context, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#ga926b9b5e9d695f83f7bf94b0894d5b86',1,'ed247_register_recv_callback(ed247_context_t context, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5fsend_5fpushed_5fsamples',['ed247_send_pushed_samples',['../group__context__io.html#ga39df8ce9b734a64cecf73dbbba6be911',1,'ed247_send_pushed_samples(ed247_context_t context): ed247.cpp'],['../group__context__io.html#ga39df8ce9b734a64cecf73dbbba6be911',1,'ed247_send_pushed_samples(ed247_context_t context): ed247.cpp']]], + ['ed247_5fset_5flog',['ed247_set_log',['../group__global.html#gaa5cc84b1824ccf12fe6673f3dbac280e',1,'ed247_set_log(ed247_log_level_t log_level, const char *log_filepath): ed247.cpp'],['../group__global.html#gaa5cc84b1824ccf12fe6673f3dbac280e',1,'ed247_set_log(ed247_log_level_t log_level, const char *log_filepath): ed247.cpp']]], + ['ed247_5fset_5flog_5flevel',['ed247_set_log_level',['../group__global.html#gaa529c8684916c04de0f7cbef6320362f',1,'ed247_set_log_level(ed247_log_level_t log_level): ed247.cpp'],['../group__global.html#gaa529c8684916c04de0f7cbef6320362f',1,'ed247_set_log_level(ed247_log_level_t log_level): ed247.cpp']]], + ['ed247_5fset_5freceive_5ftimestamp_5fcallback',['ed247_set_receive_timestamp_callback',['../group__time.html#gaf7c519dc3a6ddda134ded061bc9031e2',1,'ed247_set_receive_timestamp_callback(ed247_get_time_t callback): ed247_time.cpp'],['../group__time.html#gaf7c519dc3a6ddda134ded061bc9031e2',1,'ed247_set_receive_timestamp_callback(ed247_get_time_t callback): ed247_time.cpp']]], + ['ed247_5fset_5ftransport_5ftimestamp_5fcallback',['ed247_set_transport_timestamp_callback',['../group__time.html#gaa26a0294ae76c6627e6a038685f6bce7',1,'ed247_set_transport_timestamp_callback(ed247_get_time_t callback): ed247_time.cpp'],['../group__time.html#gaa26a0294ae76c6627e6a038685f6bce7',1,'ed247_set_transport_timestamp_callback(ed247_get_time_t callback): ed247_time.cpp']]], + ['ed247_5fsignal_5fallocate_5fsample',['ed247_signal_allocate_sample',['../group__signal.html#ga8a5273ed2d5366cbc6d41acdb4dd0382',1,'ed247_signal_allocate_sample(ed247_signal_t signal, void **sample_data, uint32_t *sample_size): ed247.cpp'],['../group__signal.html#ga8a5273ed2d5366cbc6d41acdb4dd0382',1,'ed247_signal_allocate_sample(ed247_signal_t signal, void **sample_data, uint32_t *sample_size): ed247.cpp']]], + ['ed247_5fsignal_5fget_5fassistant',['ed247_signal_get_assistant',['../group__signal.html#ga3f58631256fb5b21db5738d0ea80e79e',1,'ed247_signal_get_assistant(ed247_signal_t signal, ed247_stream_assistant_t *assistant): ed247.cpp'],['../group__signal.html#ga3f58631256fb5b21db5738d0ea80e79e',1,'ed247_signal_get_assistant(ed247_signal_t signal, ed247_stream_assistant_t *assistant): ed247.cpp']]], + ['ed247_5fsignal_5fget_5fbyte_5foffset',['ed247_signal_get_byte_offset',['../group__signal.html#ga344d4336f9a287fad81fa7110cdcaaf4',1,'ed247.cpp']]], + ['ed247_5fsignal_5fget_5fstream',['ed247_signal_get_stream',['../group__signal.html#gaa940f54199d73bb0c29d440966b88997',1,'ed247_signal_get_stream(ed247_signal_t signal, ed247_stream_t *stream): ed247.cpp'],['../group__signal.html#gaa940f54199d73bb0c29d440966b88997',1,'ed247_signal_get_stream(ed247_signal_t signal, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fsignal_5fget_5fuser_5fdata',['ed247_signal_get_user_data',['../group__signal.html#ga2ad35e23e3984257f5894862354c1b66',1,'ed247_signal_get_user_data(ed247_signal_t signal, void **user_data): ed247.cpp'],['../group__signal.html#ga2ad35e23e3984257f5894862354c1b66',1,'ed247_signal_get_user_data(ed247_signal_t signal, void **user_data): ed247.cpp']]], + ['ed247_5fsignal_5flist_5ffree',['ed247_signal_list_free',['../group__signal__list.html#ga3249893a97ef7ea717d8d4b12df2249c',1,'ed247_signal_list_free(ed247_signal_list_t signals): ed247.cpp'],['../group__signal__list.html#ga3249893a97ef7ea717d8d4b12df2249c',1,'ed247_signal_list_free(ed247_signal_list_t signals): ed247.cpp']]], + ['ed247_5fsignal_5flist_5fnext',['ed247_signal_list_next',['../group__signal__list.html#gaf815bc3fe26275404b9988bde67faf59',1,'ed247_signal_list_next(ed247_signal_list_t signals, ed247_signal_t *signal): ed247.cpp'],['../group__signal__list.html#gaf815bc3fe26275404b9988bde67faf59',1,'ed247_signal_list_next(ed247_signal_list_t signals, ed247_signal_t *signal): ed247.cpp']]], + ['ed247_5fsignal_5flist_5fsize',['ed247_signal_list_size',['../group__signal__list.html#ga7a8d727d5a33bfc7e2d076076e1ea79a',1,'ed247_signal_list_size(ed247_signal_list_t signals, uint32_t *size): ed247.cpp'],['../group__signal__list.html#ga7a8d727d5a33bfc7e2d076076e1ea79a',1,'ed247_signal_list_size(ed247_signal_list_t signals, uint32_t *size): ed247.cpp']]], + ['ed247_5fsignal_5fnad_5fget_5ftype',['ed247_signal_nad_get_type',['../group__signal.html#ga3f471222fe82e52dc2f66fcccc68be07',1,'ed247.cpp']]], + ['ed247_5fsignal_5fnad_5fget_5funit',['ed247_signal_nad_get_unit',['../group__signal.html#gafaac46580e6a4dd3f21940b52ce941e0',1,'ed247.cpp']]], + ['ed247_5fsignal_5fset_5fuser_5fdata',['ed247_signal_set_user_data',['../group__signal.html#ga2cb6e86eb5d42a53f6cd2272f15ad560',1,'ed247_signal_set_user_data(ed247_signal_t signal, void *user_data): ed247.cpp'],['../group__signal.html#ga2cb6e86eb5d42a53f6cd2272f15ad560',1,'ed247_signal_set_user_data(ed247_signal_t signal, void *user_data): ed247.cpp']]], + ['ed247_5fsignal_5ftype_5ffrom_5fstring',['ed247_signal_type_from_string',['../group__strings.html#gac17b81c45ca7ef0c5606eef9802d799a',1,'ed247_signal_type_from_string(const char *signal_type): ed247_conversion.cpp'],['../group__strings.html#gac17b81c45ca7ef0c5606eef9802d799a',1,'ed247_signal_type_from_string(const char *signal_type): ed247_conversion.cpp']]], + ['ed247_5fsignal_5ftype_5fstring',['ed247_signal_type_string',['../group__strings.html#ga1c8a30f8c6132e3626cd0c63fc38590f',1,'ed247_signal_type_string(ed247_signal_type_t signal_type): ed247_conversion.cpp'],['../group__strings.html#ga1c8a30f8c6132e3626cd0c63fc38590f',1,'ed247_signal_type_string(ed247_signal_type_t signal_type): ed247_conversion.cpp']]], + ['ed247_5fstandard_5ffrom_5fstring',['ed247_standard_from_string',['../group__strings.html#gadf4f1c7eb26081cfcc060f9f81e84a3c',1,'ed247_standard_from_string(const char *standard): ed247_conversion.cpp'],['../group__strings.html#gadf4f1c7eb26081cfcc060f9f81e84a3c',1,'ed247_standard_from_string(const char *standard): ed247_conversion.cpp']]], + ['ed247_5fstandard_5fstring',['ed247_standard_string',['../group__strings.html#ga509d237f65018a7462a98481616d673c',1,'ed247_standard_string(ed247_standard_t standard): ed247_conversion.cpp'],['../group__strings.html#ga509d237f65018a7462a98481616d673c',1,'ed247_standard_string(ed247_standard_t standard): ed247_conversion.cpp']]], + ['ed247_5fstatus_5fstring',['ed247_status_string',['../group__strings.html#ga17d99d52dd4f168222422aa2b1999598',1,'ed247_status_string(ed247_status_t status): ed247_conversion.cpp'],['../group__strings.html#ga17d99d52dd4f168222422aa2b1999598',1,'ed247_status_string(ed247_status_t status): ed247_conversion.cpp']]], + ['ed247_5fstream_5fallocate_5fsample',['ed247_stream_allocate_sample',['../group__stream__io.html#gaadee13cb903d84e40b842236e54f860b',1,'ed247_stream_allocate_sample(ed247_stream_t stream, void **sample_data, uint32_t *sample_size): ed247.cpp'],['../group__stream__io.html#gaadee13cb903d84e40b842236e54f860b',1,'ed247_stream_allocate_sample(ed247_stream_t stream, void **sample_data, uint32_t *sample_size): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5fget_5fstream',['ed247_stream_assistant_get_stream',['../group__stream__assistant.html#ga817b85b537993fed15273ef5142e9dfc',1,'ed247_stream_assistant_get_stream(ed247_stream_assistant_t assistant, ed247_stream_t *stream): ed247.cpp'],['../group__stream__assistant.html#ga817b85b537993fed15273ef5142e9dfc',1,'ed247_stream_assistant_get_stream(ed247_stream_assistant_t assistant, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5fpop_5fsample',['ed247_stream_assistant_pop_sample',['../group__stream__assistant.html#gad71eea2f8c8ae157ceb79fa0e397cc75',1,'ed247_stream_assistant_pop_sample(ed247_stream_assistant_t assistant, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty): ed247.cpp'],['../group__stream__assistant.html#gad71eea2f8c8ae157ceb79fa0e397cc75',1,'ed247_stream_assistant_pop_sample(ed247_stream_assistant_t assistant, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5fpush_5fsample',['ed247_stream_assistant_push_sample',['../group__stream__assistant.html#gabd1cb477151f3c4fb883e218ecb87988',1,'ed247_stream_assistant_push_sample(ed247_stream_assistant_t assistant, const ed247_timestamp_t *timestamp, bool *full): ed247.cpp'],['../group__stream__assistant.html#gabd1cb477151f3c4fb883e218ecb87988',1,'ed247_stream_assistant_push_sample(ed247_stream_assistant_t assistant, const ed247_timestamp_t *data_timestamp, bool *full): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5fread_5fsignal',['ed247_stream_assistant_read_signal',['../group__stream__assistant.html#ga7ccab54de4805974ce77af1dda4f29a0',1,'ed247_stream_assistant_read_signal(ed247_stream_assistant_t assistant, ed247_signal_t signal, const void **signal_sample_data, uint32_t *signal_sample_size): ed247.cpp'],['../group__stream__assistant.html#ga7ccab54de4805974ce77af1dda4f29a0',1,'ed247_stream_assistant_read_signal(ed247_stream_assistant_t assistant, ed247_signal_t signal, const void **signal_sample_data, uint32_t *signal_sample_size): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5fwas_5fwritten',['ed247_stream_assistant_was_written',['../group__stream__assistant.html#gaa745eae4e42eaaeb416e4d2c753ca552',1,'ed247_stream_assistant_was_written(ed247_stream_assistant_t assistant): ed247.cpp'],['../group__stream__assistant.html#gaa745eae4e42eaaeb416e4d2c753ca552',1,'ed247_stream_assistant_was_written(ed247_stream_assistant_t assistant): ed247.cpp']]], + ['ed247_5fstream_5fassistant_5fwrite_5fsignal',['ed247_stream_assistant_write_signal',['../group__stream__assistant.html#ga9f213268b087b349e1e2fcc5bda42ade',1,'ed247_stream_assistant_write_signal(ed247_stream_assistant_t assistant, ed247_signal_t signal, const void *signal_sample_data, uint32_t signal_sample_size): ed247.cpp'],['../group__stream__assistant.html#ga9f213268b087b349e1e2fcc5bda42ade',1,'ed247_stream_assistant_write_signal(ed247_stream_assistant_t assistant, ed247_signal_t signal, const void *signal_sample_data, uint32_t signal_sample_size): ed247.cpp']]], + ['ed247_5fstream_5fassistants_5fwritten_5fpush_5fsamples',['ed247_stream_assistants_written_push_samples',['../group__stream__assistant.html#ga8fa00a1e17e4be2854061a256dadc6c0',1,'ed247_stream_assistants_written_push_samples(ed247_context_t context, const ed247_timestamp_t *data_timestamp): ed247.cpp'],['../group__stream__assistant.html#ga8fa00a1e17e4be2854061a256dadc6c0',1,'ed247_stream_assistants_written_push_samples(ed247_context_t context, const ed247_timestamp_t *data_timestamp): ed247.cpp']]], + ['ed247_5fstream_5fcontains_5fsignals',['ed247_stream_contains_signals',['../group__deprecated.html#ga035c4e90e4eae3f2d12bbbe4b17b4244',1,'ed247_stream_contains_signals(ed247_stream_t stream, uint8_t *yesno): ed247.cpp'],['../group__deprecated.html#ga035c4e90e4eae3f2d12bbbe4b17b4244',1,'ed247_stream_contains_signals(ed247_stream_t stream, uint8_t *yesno): ed247.cpp']]], + ['ed247_5fstream_5ffind_5fsignals',['ed247_stream_find_signals',['../group__stream.html#gaa7b437eeeee13b7313536572962aef4e',1,'ed247_stream_find_signals(ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp'],['../group__stream.html#gaa7b437eeeee13b7313536572962aef4e',1,'ed247_stream_find_signals(ed247_stream_t stream, const char *regex_name, ed247_signal_list_t *signals): ed247.cpp']]], + ['ed247_5fstream_5ffree_5fsample',['ed247_stream_free_sample',['../group__stream__io.html#ga9028da1b5b1079e543c1b953331547a4',1,'ed247_stream_free_sample(void *sample_data): ed247.cpp'],['../group__stream__io.html#ga9028da1b5b1079e543c1b953331547a4',1,'ed247_stream_free_sample(void *sample_data): ed247.cpp']]], + ['ed247_5fstream_5fget_5fassistant',['ed247_stream_get_assistant',['../group__stream__io.html#ga3907463be59d8d3cc80caf0dd06e4af9',1,'ed247_stream_get_assistant(ed247_stream_t stream, ed247_stream_assistant_t *assistant): ed247.cpp'],['../group__stream__io.html#ga3907463be59d8d3cc80caf0dd06e4af9',1,'ed247_stream_get_assistant(ed247_stream_t stream, ed247_stream_assistant_t *assistant): ed247.cpp']]], + ['ed247_5fstream_5fget_5fchannel',['ed247_stream_get_channel',['../group__stream.html#ga7adbfee97395fcb2a991d261957e3d05',1,'ed247_stream_get_channel(ed247_stream_t stream, ed247_channel_t *channel): ed247.cpp'],['../group__stream.html#ga7adbfee97395fcb2a991d261957e3d05',1,'ed247_stream_get_channel(ed247_stream_t stream, ed247_channel_t *channel): ed247.cpp']]], + ['ed247_5fstream_5fget_5fsignal',['ed247_stream_get_signal',['../group__stream.html#gaf6068982b942ae3009d30a4838b8d7dc',1,'ed247_stream_get_signal(ed247_stream_t stream, const char *name, ed247_signal_t *signal): ed247.cpp'],['../group__stream.html#gaf6068982b942ae3009d30a4838b8d7dc',1,'ed247_stream_get_signal(ed247_stream_t stream, const char *name, ed247_signal_t *signal): ed247.cpp']]], + ['ed247_5fstream_5fget_5fsignal_5flist',['ed247_stream_get_signal_list',['../group__stream.html#gaa668871ce72a8f707a2513a98fd9b6fb',1,'ed247_stream_get_signal_list(ed247_stream_t stream, ed247_signal_list_t *signals): ed247.cpp'],['../group__stream.html#gaa668871ce72a8f707a2513a98fd9b6fb',1,'ed247_stream_get_signal_list(ed247_stream_t stream, ed247_signal_list_t *signals): ed247.cpp']]], + ['ed247_5fstream_5fget_5fsignals',['ed247_stream_get_signals',['../group__deprecated.html#gafe1c8f48d14524b48b2acab8092ff029',1,'ed247_stream_get_signals(ed247_stream_t stream, ed247_signal_list_t *signals): ed247.cpp'],['../group__deprecated.html#gafe1c8f48d14524b48b2acab8092ff029',1,'ed247_stream_get_signals(ed247_stream_t stream, ed247_signal_list_t *signals): ed247.cpp']]], + ['ed247_5fstream_5fget_5fuser_5fdata',['ed247_stream_get_user_data',['../group__stream.html#gaddaac2ab4356c5da6a01fc42c8039695',1,'ed247_stream_get_user_data(ed247_stream_t stream, void **user_data): ed247.cpp'],['../group__stream.html#gaddaac2ab4356c5da6a01fc42c8039695',1,'ed247_stream_get_user_data(ed247_stream_t stream, void **user_data): ed247.cpp']]], + ['ed247_5fstream_5fhas_5fsignals',['ed247_stream_has_signals',['../group__stream.html#gaf3e09d9f1fbf1436e2361a3087eef708',1,'ed247_stream_has_signals(ed247_stream_t stream, uint8_t *yesno): ed247.cpp'],['../group__stream.html#gaf3e09d9f1fbf1436e2361a3087eef708',1,'ed247_stream_has_signals(ed247_stream_t stream, uint8_t *yesno): ed247.cpp']]], + ['ed247_5fstream_5flist_5ffree',['ed247_stream_list_free',['../group__stream__list.html#gae9924ae2410a826448e80290ac604f1e',1,'ed247_stream_list_free(ed247_stream_list_t streams): ed247.cpp'],['../group__stream__list.html#gae9924ae2410a826448e80290ac604f1e',1,'ed247_stream_list_free(ed247_stream_list_t streams): ed247.cpp']]], + ['ed247_5fstream_5flist_5fnext',['ed247_stream_list_next',['../group__stream__list.html#ga01d85b5802d270b8209779242cc84099',1,'ed247_stream_list_next(ed247_stream_list_t streams, ed247_stream_t *stream): ed247.cpp'],['../group__stream__list.html#ga01d85b5802d270b8209779242cc84099',1,'ed247_stream_list_next(ed247_stream_list_t streams, ed247_stream_t *stream): ed247.cpp']]], + ['ed247_5fstream_5flist_5fsize',['ed247_stream_list_size',['../group__stream__list.html#gafda0491b51ab1a5e4d688dd6f3997492',1,'ed247_stream_list_size(ed247_stream_list_t streams, uint32_t *size): ed247.cpp'],['../group__stream__list.html#gafda0491b51ab1a5e4d688dd6f3997492',1,'ed247_stream_list_size(ed247_stream_list_t streams, uint32_t *size): ed247.cpp']]], + ['ed247_5fstream_5fpop_5fsample',['ed247_stream_pop_sample',['../group__stream__io.html#gad66beca5d4ad1f4e9c9257396e56bdf1',1,'ed247_stream_pop_sample(ed247_stream_t stream, const void **sample_data, uint32_t *sample_size, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty): ed247.cpp'],['../group__stream__io.html#gad66beca5d4ad1f4e9c9257396e56bdf1',1,'ed247_stream_pop_sample(ed247_stream_t stream, const void **sample_data, uint32_t *sample_size, const ed247_timestamp_t **data_timestamp, const ed247_timestamp_t **recv_timestamp, const ed247_sample_details_t **sample_details, bool *empty): ed247.cpp']]], + ['ed247_5fstream_5fpush_5fsample',['ed247_stream_push_sample',['../group__stream__io.html#ga0ab4d03c9f10330e1c590e1df1771976',1,'ed247_stream_push_sample(ed247_stream_t stream, const void *sample_data, uint32_t sample_size, const ed247_timestamp_t *timestamp, bool *full): ed247.cpp'],['../group__stream__io.html#ga0ab4d03c9f10330e1c590e1df1771976',1,'ed247_stream_push_sample(ed247_stream_t stream, const void *sample_data, uint32_t sample_data_size, const ed247_timestamp_t *data_timestamp, bool *full): ed247.cpp']]], + ['ed247_5fstream_5fpush_5fsamples',['ed247_stream_push_samples',['../group__stream__io.html#gaa69b69420d895fbbf3ac7f7fb0529e26',1,'ed247_stream_push_samples(ed247_stream_t stream, const void *samples_data, const uint32_t *samples_size, uint32_t samples_number, const ed247_timestamp_t *timestamp, bool *full): ed247.cpp'],['../group__stream__io.html#gaa69b69420d895fbbf3ac7f7fb0529e26',1,'ed247_stream_push_samples(ed247_stream_t stream, const void *samples_data, const uint32_t *samples_size, uint32_t samples_number, const ed247_timestamp_t *data_timestamp, bool *full): ed247.cpp']]], + ['ed247_5fstream_5fregister_5frecv_5fcallback',['ed247_stream_register_recv_callback',['../group__context__callback.html#gaf936575102ced9db2a04622366cff920',1,'ed247_stream_register_recv_callback(ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#gaf936575102ced9db2a04622366cff920',1,'ed247_stream_register_recv_callback(ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5fstream_5fsamples_5fnumber',['ed247_stream_samples_number',['../group__stream__io.html#gaea2b91416c53476460a3532791fca253',1,'ed247_stream_samples_number(ed247_stream_t stream, ed247_direction_t direction, uint32_t *size): ed247.cpp'],['../group__stream__io.html#gaea2b91416c53476460a3532791fca253',1,'ed247_stream_samples_number(ed247_stream_t stream, ed247_direction_t direction, uint32_t *size): ed247.cpp']]], + ['ed247_5fstream_5fset_5fuser_5fdata',['ed247_stream_set_user_data',['../group__stream.html#ga1c053d9022afac47a72f2d231f6768ab',1,'ed247_stream_set_user_data(ed247_stream_t stream, void *user_data): ed247.cpp'],['../group__stream.html#ga1c053d9022afac47a72f2d231f6768ab',1,'ed247_stream_set_user_data(ed247_stream_t stream, void *user_data): ed247.cpp']]], + ['ed247_5fstream_5ftype_5ffrom_5fstring',['ed247_stream_type_from_string',['../group__strings.html#ga860bf3f61b62851b7a70a6320c6f3b8c',1,'ed247_stream_type_from_string(const char *stream_type): ed247_conversion.cpp'],['../group__strings.html#ga860bf3f61b62851b7a70a6320c6f3b8c',1,'ed247_stream_type_from_string(const char *stream_type): ed247_conversion.cpp']]], + ['ed247_5fstream_5ftype_5fstring',['ed247_stream_type_string',['../group__strings.html#gad58ef50861feff516712dcc45f716a34',1,'ed247_stream_type_string(ed247_stream_type_t stream_type): ed247_conversion.cpp'],['../group__strings.html#gad58ef50861feff516712dcc45f716a34',1,'ed247_stream_type_string(ed247_stream_type_t stream_type): ed247_conversion.cpp']]], + ['ed247_5fstream_5funregister_5frecv_5fcallback',['ed247_stream_unregister_recv_callback',['../group__context__callback.html#ga143ff73f18b7af0280a04a063c742fb6',1,'ed247_stream_unregister_recv_callback(ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#ga143ff73f18b7af0280a04a063c742fb6',1,'ed247_stream_unregister_recv_callback(ed247_context_t context, ed247_stream_t stream, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5fstreams_5fregister_5frecv_5fcallback',['ed247_streams_register_recv_callback',['../group__context__callback.html#ga972f336f2883ce33112fe414c8905524',1,'ed247_streams_register_recv_callback(ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#ga972f336f2883ce33112fe414c8905524',1,'ed247_streams_register_recv_callback(ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5fstreams_5funregister_5frecv_5fcallback',['ed247_streams_unregister_recv_callback',['../group__context__callback.html#gab570bdbb7e4018d3c8e063fb5abc8cff',1,'ed247_streams_unregister_recv_callback(ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#gab570bdbb7e4018d3c8e063fb5abc8cff',1,'ed247_streams_unregister_recv_callback(ed247_context_t context, ed247_stream_list_t streams, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5funload',['ed247_unload',['../group__context__init.html#ga50ae5f3165e2799b6744ab262e2041ce',1,'ed247_unload(ed247_context_t context): ed247.cpp'],['../group__context__init.html#ga50ae5f3165e2799b6744ab262e2041ce',1,'ed247_unload(ed247_context_t context): ed247.cpp']]], + ['ed247_5funregister_5frecv_5fcallback',['ed247_unregister_recv_callback',['../group__context__callback.html#gaf48a493504277d57ac784011f9161921',1,'ed247_unregister_recv_callback(ed247_context_t context, ed247_stream_recv_callback_t callback): ed247.cpp'],['../group__context__callback.html#gaf48a493504277d57ac784011f9161921',1,'ed247_unregister_recv_callback(ed247_context_t context, ed247_stream_recv_callback_t callback): ed247.cpp']]], + ['ed247_5fwait_5fduring',['ed247_wait_during',['../group__context__io.html#ga0b1dd58e03070d62b0ca74e2aee21d3c',1,'ed247_wait_during(ed247_context_t context, ed247_stream_list_t *streams, int32_t duration_us): ed247.cpp'],['../group__context__io.html#ga0b1dd58e03070d62b0ca74e2aee21d3c',1,'ed247_wait_during(ed247_context_t context, ed247_stream_list_t *streams, int32_t duration_us): ed247.cpp']]], + ['ed247_5fwait_5fframe',['ed247_wait_frame',['../group__context__io.html#gaa5d1e1629995c0ccb1931c393ef608a1',1,'ed247_wait_frame(ed247_context_t context, ed247_stream_list_t *streams, int32_t timeout_us): ed247.cpp'],['../group__context__io.html#gaa5d1e1629995c0ccb1931c393ef608a1',1,'ed247_wait_frame(ed247_context_t context, ed247_stream_list_t *streams, int32_t timeout_us): ed247.cpp']]], + ['ed247_5fyesno_5ffrom_5fstring',['ed247_yesno_from_string',['../group__strings.html#ga8422cdbc9258d69f8592b9af1c08d6a7',1,'ed247_yesno_from_string(const char *yesno): ed247_conversion.cpp'],['../group__strings.html#ga8422cdbc9258d69f8592b9af1c08d6a7',1,'ed247_yesno_from_string(const char *yesno): ed247_conversion.cpp']]], + ['ed247_5fyesno_5fstring',['ed247_yesno_string',['../group__strings.html#ga4b73efe63062b044e682c02d72d0c99c',1,'ed247_yesno_string(ed247_yesno_t yesno): ed247_conversion.cpp'],['../group__strings.html#ga4b73efe63062b044e682c02d72d0c99c',1,'ed247_yesno_string(ed247_yesno_t yesno): ed247_conversion.cpp']]] +]; diff --git a/docs/search/functions_1.html b/docs/search/functions_1.html new file mode 100644 index 00000000..648831fd --- /dev/null +++ b/docs/search/functions_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/functions_1.js b/docs/search/functions_1.js new file mode 100644 index 00000000..477a39d4 --- /dev/null +++ b/docs/search/functions_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['libed247_5ferrors',['libed247_errors',['../group__deprecated.html#gaaaf52ff2cce721e9726d04681406d050',1,'libed247_errors(): ed247.cpp'],['../group__deprecated.html#gaaaf52ff2cce721e9726d04681406d050',1,'libed247_errors(): ed247.cpp']]] +]; diff --git a/docs/search/functions_2.html b/docs/search/functions_2.html new file mode 100644 index 00000000..c93d0894 --- /dev/null +++ b/docs/search/functions_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/functions_2.js b/docs/search/functions_2.js new file mode 100644 index 00000000..b53c0035 --- /dev/null +++ b/docs/search/functions_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['stream_5fassistants_5fpop_5fsamples',['stream_assistants_pop_samples',['../group__stream__assistant.html#ga077ed72fcc9dc05293b02e72bd6a21f3',1,'stream_assistants_pop_samples(ed247_context_t context): ed247.cpp'],['../group__stream__assistant.html#ga077ed72fcc9dc05293b02e72bd6a21f3',1,'stream_assistants_pop_samples(ed247_context_t context): ed247.cpp']]] +]; diff --git a/docs/search/groups_0.html b/docs/search/groups_0.html new file mode 100644 index 00000000..95cee43d --- /dev/null +++ b/docs/search/groups_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/groups_0.js b/docs/search/groups_0.js new file mode 100644 index 00000000..2a97b621 --- /dev/null +++ b/docs/search/groups_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['channel',['Channel',['../group__channel.html',1,'']]], + ['channel_20list',['Channel list',['../group__channel__list.html',1,'']]] +]; diff --git a/docs/search/groups_1.html b/docs/search/groups_1.html new file mode 100644 index 00000000..979ea3d4 --- /dev/null +++ b/docs/search/groups_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/groups_1.js b/docs/search/groups_1.js new file mode 100644 index 00000000..1acd0466 --- /dev/null +++ b/docs/search/groups_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['deprecated',['Deprecated',['../group__deprecated.html',1,'']]] +]; diff --git a/docs/search/groups_2.html b/docs/search/groups_2.html new file mode 100644 index 00000000..310ab329 --- /dev/null +++ b/docs/search/groups_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/groups_2.js b/docs/search/groups_2.js new file mode 100644 index 00000000..24c3a9a7 --- /dev/null +++ b/docs/search/groups_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['ed247_20context',['ED247 Context',['../group__context.html',1,'']]] +]; diff --git a/docs/search/groups_3.html b/docs/search/groups_3.html new file mode 100644 index 00000000..c24c7bd6 --- /dev/null +++ b/docs/search/groups_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/groups_3.js b/docs/search/groups_3.js new file mode 100644 index 00000000..5041d88b --- /dev/null +++ b/docs/search/groups_3.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['general_20information',['General information',['../group__context__info.html',1,'']]], + ['global_20resources',['Global resources',['../group__global.html',1,'']]] +]; diff --git a/docs/search/groups_4.html b/docs/search/groups_4.html new file mode 100644 index 00000000..a1f3533f --- /dev/null +++ b/docs/search/groups_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/groups_4.js b/docs/search/groups_4.js new file mode 100644 index 00000000..ee51aba4 --- /dev/null +++ b/docs/search/groups_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['initialization',['Initialization',['../group__context__init.html',1,'']]] +]; diff --git a/docs/search/groups_5.html b/docs/search/groups_5.html new file mode 100644 index 00000000..938507d7 --- /dev/null +++ b/docs/search/groups_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/groups_5.js b/docs/search/groups_5.js new file mode 100644 index 00000000..51ffb790 --- /dev/null +++ b/docs/search/groups_5.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['receive_20and_20send_20callbacks',['Receive and send callbacks',['../group__context__callback.html',1,'']]], + ['read_20configuration',['Read configuration',['../group__context__config.html',1,'']]], + ['receive_20and_20send',['Receive and send',['../group__context__io.html',1,'']]], + ['read_20and_20write',['Read and Write',['../group__stream__io.html',1,'']]] +]; diff --git a/docs/search/groups_6.html b/docs/search/groups_6.html new file mode 100644 index 00000000..e675e852 --- /dev/null +++ b/docs/search/groups_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/groups_6.js b/docs/search/groups_6.js new file mode 100644 index 00000000..641b940c --- /dev/null +++ b/docs/search/groups_6.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['signal',['Signal',['../group__signal.html',1,'']]], + ['signal_20list',['Signal list',['../group__signal__list.html',1,'']]], + ['stream',['Stream',['../group__stream.html',1,'']]], + ['stream_20assistant_20_28read_2fwrite_20signals_29',['Stream Assistant (read/write signals)',['../group__stream__assistant.html',1,'']]], + ['stream_20list',['Stream list',['../group__stream__list.html',1,'']]], + ['string_20conversion',['String conversion',['../group__strings.html',1,'']]] +]; diff --git a/docs/search/groups_7.html b/docs/search/groups_7.html new file mode 100644 index 00000000..c974917a --- /dev/null +++ b/docs/search/groups_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/groups_7.js b/docs/search/groups_7.js new file mode 100644 index 00000000..b4d25d62 --- /dev/null +++ b/docs/search/groups_7.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['time_20management',['Time management',['../group__time.html',1,'']]] +]; diff --git a/docs/search/mag_sel.png b/docs/search/mag_sel.png new file mode 100644 index 00000000..81f6040a Binary files /dev/null and b/docs/search/mag_sel.png differ diff --git a/docs/search/nomatches.html b/docs/search/nomatches.html new file mode 100644 index 00000000..b1ded27e --- /dev/null +++ b/docs/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
+
No Matches
+
+ + diff --git a/docs/search/pages_0.html b/docs/search/pages_0.html new file mode 100644 index 00000000..0db7267b --- /dev/null +++ b/docs/search/pages_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/pages_0.js b/docs/search/pages_0.js new file mode 100644 index 00000000..99084bfa --- /dev/null +++ b/docs/search/pages_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['configuration_20files',['Configuration files',['../schemas.html',1,'']]] +]; diff --git a/docs/search/pages_1.html b/docs/search/pages_1.html new file mode 100644 index 00000000..2c67a8ef --- /dev/null +++ b/docs/search/pages_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/pages_1.js b/docs/search/pages_1.js new file mode 100644 index 00000000..7cf78791 --- /dev/null +++ b/docs/search/pages_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['introduction',['Introduction',['../index.html',1,'']]] +]; diff --git a/docs/search/pages_2.html b/docs/search/pages_2.html new file mode 100644 index 00000000..9cb4325f --- /dev/null +++ b/docs/search/pages_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/pages_2.js b/docs/search/pages_2.js new file mode 100644 index 00000000..17dba9c7 --- /dev/null +++ b/docs/search/pages_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['license',['License',['../page_license.html',1,'']]] +]; diff --git a/docs/search/pages_3.html b/docs/search/pages_3.html new file mode 100644 index 00000000..118095e2 --- /dev/null +++ b/docs/search/pages_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/pages_3.js b/docs/search/pages_3.js new file mode 100644 index 00000000..e7709493 --- /dev/null +++ b/docs/search/pages_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['tools',['Tools',['../page_utils.html',1,'']]] +]; diff --git a/docs/search/search.css b/docs/search/search.css new file mode 100644 index 00000000..4d7612ff --- /dev/null +++ b/docs/search/search.css @@ -0,0 +1,271 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 8px; + right: 0px; + width: 170px; + z-index: 102; + background-color: white; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:111px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +span.SRScope { + padding-left: 4px; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} + +/*---------------- External search page results */ + +.searchresult { + background-color: #F0F3F8; +} + +.pages b { + color: white; + padding: 5px 5px 3px 5px; + background-image: url("../tab_a.png"); + background-repeat: repeat-x; + text-shadow: 0 1px 1px #000000; +} + +.pages { + line-height: 17px; + margin-left: 4px; + text-decoration: none; +} + +.hl { + font-weight: bold; +} + +#searchresults { + margin-bottom: 20px; +} + +.searchpages { + margin-top: 10px; +} + diff --git a/docs/search/search.js b/docs/search/search.js new file mode 100644 index 00000000..dedce3bf --- /dev/null +++ b/docs/search/search.js @@ -0,0 +1,791 @@ +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var idxChar = searchValue.substr(0, 1).toLowerCase(); + if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair + { + idxChar = searchValue.substr(0, 2); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); + if (idx!=-1) + { + var hexCode=idx.toString(16); + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/search/typedefs_0.js b/docs/search/typedefs_0.js new file mode 100644 index 00000000..b0246949 --- /dev/null +++ b/docs/search/typedefs_0.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['ed247_5fchannel_5flist_5ft',['ed247_channel_list_t',['../group__channel__list.html#gad55cfcf02574a8e77d74e50da3ebad42',1,'ed247.h']]], + ['ed247_5fchannel_5ft',['ed247_channel_t',['../group__channel.html#ga1bddb20504db07cd2d4638d9aaf5d23c',1,'ed247.h']]], + ['ed247_5fcontext_5ft',['ed247_context_t',['../group__context.html#gaeeed7e9c98f65b3e5cdc85f0a5935550',1,'ed247.h']]], + ['ed247_5fget_5ftime_5ft',['ed247_get_time_t',['../group__time.html#gabeba8f9370a3394931eb4f957708d9f4',1,'ed247.h']]], + ['ed247_5fsample_5fdetails_5ft',['ed247_sample_details_t',['../group__stream.html#gac3c8842807b4cfd8ec58ab5d3221eb0d',1,'ed247.h']]], + ['ed247_5fsignal_5flist_5ft',['ed247_signal_list_t',['../group__signal__list.html#ga5fdecea140a70c3f56c50d26b9572fa3',1,'ed247.h']]], + ['ed247_5fsignal_5ft',['ed247_signal_t',['../group__signal.html#ga1392cbe948b566fbcc587fa1610c1720',1,'ed247.h']]], + ['ed247_5fstream_5fassistant_5ft',['ed247_stream_assistant_t',['../group__stream__assistant.html#ga14d9c6d97c5f6494981a4db2796bb55d',1,'ed247.h']]], + ['ed247_5fstream_5flist_5ft',['ed247_stream_list_t',['../group__stream__list.html#gaa72d56d61f93bbd4b2914a6ed42aecda',1,'ed247.h']]], + ['ed247_5fstream_5frecv_5fcallback_5ft',['ed247_stream_recv_callback_t',['../group__context__callback.html#ga135af798b60f7e9054a8c080111fdb8a',1,'ed247.h']]], + ['ed247_5fstream_5ft',['ed247_stream_t',['../group__stream.html#gaad915c37d67718b5bef771731f64f2f5',1,'ed247.h']]], + ['ed247_5fuid_5ft',['ed247_uid_t',['../group__global.html#ga8ece0a7462707c97f526dbccc00be4e5',1,'ed247.h']]] +]; diff --git a/docs/splitbar.png b/docs/splitbar.png new file mode 100644 index 00000000..fe895f2c Binary files /dev/null and b/docs/splitbar.png differ diff --git a/docs/structed247_1_1_client_stream_list_with_data.html b/docs/structed247_1_1_client_stream_list_with_data.html new file mode 100644 index 00000000..e1948e30 --- /dev/null +++ b/docs/structed247_1_1_client_stream_list_with_data.html @@ -0,0 +1,213 @@ + + + + + + +ED247 Library: ed247::ClientStreamListWithData Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::ClientStreamListWithData Struct Reference
+
+
+
+Inheritance diagram for ed247::ClientStreamListWithData:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::ClientStreamListWithData:
+
+
Collaboration graph
+ + + + + +
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

ClientStreamListWithData (ed247::stream_map_t &container)
 
+virtual ed247::Streamget_next () override
 
- Public Member Functions inherited from ed247::client_list_container< CBaseList, T, Container, context_owned >
+virtual bool is_context_owned ()
 
+uint32_t size () const override
 
+virtual void free () override
 
+void reset_iterator () override
 
+T * get_current () override
 
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from ed247::client_list_container< CBaseList, T, Container, context_owned >
+typedef Container::iterator iterator_t
 
- Public Types inherited from ed247::client_list< CBaseList, T >
+typedef T value_t
 
+typedef std::shared_ptr< T > container_value_t
 
- Static Public Member Functions inherited from ed247::client_list_container< CBaseList, T, Container, context_owned >
+static client_list_containerwrap (Container &container)
 
+static client_list_containercopy (const Container &container)
 
- Protected Member Functions inherited from ed247::client_list_container< CBaseList, T, Container, context_owned >
client_list_container (Container *container, bool container_owner)
 
- Protected Attributes inherited from ed247::client_list_container< CBaseList, T, Container, context_owned >
+Container * _container
 
+iterator_t _iterator
 
+bool _container_owner
 
+
The documentation for this struct was generated from the following file:
    +
  • src/ed247/ed247_context.cpp
  • +
+
+
+ + + + diff --git a/docs/structed247_1_1_client_stream_list_with_data.js b/docs/structed247_1_1_client_stream_list_with_data.js new file mode 100644 index 00000000..9b3f61c7 --- /dev/null +++ b/docs/structed247_1_1_client_stream_list_with_data.js @@ -0,0 +1,5 @@ +var structed247_1_1_client_stream_list_with_data = +[ + [ "ClientStreamListWithData", "structed247_1_1_client_stream_list_with_data.html#a4bac27156616db9deff83db2cb5c865d", null ], + [ "get_next", "structed247_1_1_client_stream_list_with_data.html#a7fc5b5f68ff0cacb83b321481d7065c2", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1_client_stream_list_with_data__coll__graph.map b/docs/structed247_1_1_client_stream_list_with_data__coll__graph.map new file mode 100644 index 00000000..178cc43e --- /dev/null +++ b/docs/structed247_1_1_client_stream_list_with_data__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1_client_stream_list_with_data__coll__graph.md5 b/docs/structed247_1_1_client_stream_list_with_data__coll__graph.md5 new file mode 100644 index 00000000..4d042115 --- /dev/null +++ b/docs/structed247_1_1_client_stream_list_with_data__coll__graph.md5 @@ -0,0 +1 @@ +1aaa2a76578a94a9e285a715ba36e628 \ No newline at end of file diff --git a/docs/structed247_1_1_client_stream_list_with_data__coll__graph.png b/docs/structed247_1_1_client_stream_list_with_data__coll__graph.png new file mode 100644 index 00000000..8c2f7feb Binary files /dev/null and b/docs/structed247_1_1_client_stream_list_with_data__coll__graph.png differ diff --git a/docs/structed247_1_1_client_stream_list_with_data__inherit__graph.map b/docs/structed247_1_1_client_stream_list_with_data__inherit__graph.map new file mode 100644 index 00000000..ed44b373 --- /dev/null +++ b/docs/structed247_1_1_client_stream_list_with_data__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1_client_stream_list_with_data__inherit__graph.md5 b/docs/structed247_1_1_client_stream_list_with_data__inherit__graph.md5 new file mode 100644 index 00000000..4a35ff0a --- /dev/null +++ b/docs/structed247_1_1_client_stream_list_with_data__inherit__graph.md5 @@ -0,0 +1 @@ +a0405b3b8ddf188630240a5fce39c53c \ No newline at end of file diff --git a/docs/structed247_1_1_client_stream_list_with_data__inherit__graph.png b/docs/structed247_1_1_client_stream_list_with_data__inherit__graph.png new file mode 100644 index 00000000..3cb1af63 Binary files /dev/null and b/docs/structed247_1_1_client_stream_list_with_data__inherit__graph.png differ diff --git a/docs/structed247_1_1_stream_signals.html b/docs/structed247_1_1_stream_signals.html new file mode 100644 index 00000000..12c148de --- /dev/null +++ b/docs/structed247_1_1_stream_signals.html @@ -0,0 +1,295 @@ + + + + + + +ED247 Library: ed247::StreamSignals Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::StreamSignals Struct Reference
+
+
+
+Inheritance diagram for ed247::StreamSignals:
+
+
Inheritance graph
+ + + + +
+
+Collaboration diagram for ed247::StreamSignals:
+
+
Collaboration graph
+ + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

StreamSignals (Context *context, const xml::Stream *configuration, ed247_internal_channel_t *ed247_api_channel, uint32_t sample_size_size)
 
+uint32_t get_sampling_period_us () override
 
- Public Member Functions inherited from ed247::Stream
Stream (Context *context, const xml::Stream *configuration, ed247_internal_channel_t *ed247_api_channel, uint32_t sample_size_size)
 
Stream (const Stream &other)=delete
 
+Streamoperator= (const Stream &other)=delete
 
+const std::string & get_name () const
 
+const std::string & get_icd () const
 
+const std::string & get_comment () const
 
+ed247_uid_t get_uid () const
 
+ed247_stream_type_t get_type () const
 
+ed247_direction_t get_direction () const
 
+uint32_t get_sample_max_size_bytes () const
 
+uint32_t get_sample_max_number () const
 
+uint32_t get_max_size () const
 
+ed247_internal_channel_tget_api_channel ()
 
+void set_user_data (void *user_data)
 
+void get_user_data (void **user_data)
 
+bool is_signal_based () const
 
+StreamAssistantget_assistant ()
 
+signal_list_t & get_signals ()
 
+ed247_internal_signal_list_tget_client_signals ()
 
+signal_list_t find_signals (std::string str_regex)
 
+signal_ptr_t get_signal (std::string str_name)
 
+uint32_t get_incoming_sample_number ()
 
+uint32_t get_outgoing_sample_number ()
 
+bool push_sample (const void *sample_data, uint32_t sample_size, const ed247_timestamp_t *data_timestamp, bool *full)
 
+StreamSamplepop_sample (bool *empty)
 
+uint32_t encode (char *frame, uint32_t frame_size)
 
+bool decode (const char *frame, uint32_t frame_size, const ed247_sample_details_t &frame_details)
 
+ed247_status_t register_callback (ed247_context_t context, ed247_stream_recv_callback_t callback)
 
+ed247_status_t unregister_callback (ed247_context_t context, ed247_stream_recv_callback_t callback)
 
+bool run_callbacks ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from ed247::Stream
+Context_context
 
+const xml::Stream_configuration
 
+uint32_t _sample_size_size
 
+uint32_t _sample_first_header_size
 
+uint32_t _sample_next_header_size
 
+uint32_t _max_size
 
+signal_list_t _signals
 
+std::unique_ptr< ed247_internal_signal_list_t_client_signals
 
+std::unique_ptr< StreamAssistant_assistant
 
+StreamSampleRingBuffer _recv_stack
 
+StreamSampleRingBuffer _send_stack
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1_stream_signals.js b/docs/structed247_1_1_stream_signals.js new file mode 100644 index 00000000..856f8f78 --- /dev/null +++ b/docs/structed247_1_1_stream_signals.js @@ -0,0 +1,5 @@ +var structed247_1_1_stream_signals = +[ + [ "StreamSignals", "structed247_1_1_stream_signals.html#aee964de9f151edb5a9977047935ec0f2", null ], + [ "get_sampling_period_us", "structed247_1_1_stream_signals.html#aaec0b28bc0ba94fd712e781c415180c5", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1_stream_signals__coll__graph.map b/docs/structed247_1_1_stream_signals__coll__graph.map new file mode 100644 index 00000000..c87c2ac4 --- /dev/null +++ b/docs/structed247_1_1_stream_signals__coll__graph.map @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/docs/structed247_1_1_stream_signals__coll__graph.md5 b/docs/structed247_1_1_stream_signals__coll__graph.md5 new file mode 100644 index 00000000..4ac7c9af --- /dev/null +++ b/docs/structed247_1_1_stream_signals__coll__graph.md5 @@ -0,0 +1 @@ +abcc3111fd4af89ac43bee9b3a60d946 \ No newline at end of file diff --git a/docs/structed247_1_1_stream_signals__coll__graph.png b/docs/structed247_1_1_stream_signals__coll__graph.png new file mode 100644 index 00000000..54589318 Binary files /dev/null and b/docs/structed247_1_1_stream_signals__coll__graph.png differ diff --git a/docs/structed247_1_1_stream_signals__inherit__graph.map b/docs/structed247_1_1_stream_signals__inherit__graph.map new file mode 100644 index 00000000..9bd930ce --- /dev/null +++ b/docs/structed247_1_1_stream_signals__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247_1_1_stream_signals__inherit__graph.md5 b/docs/structed247_1_1_stream_signals__inherit__graph.md5 new file mode 100644 index 00000000..348e3f1f --- /dev/null +++ b/docs/structed247_1_1_stream_signals__inherit__graph.md5 @@ -0,0 +1 @@ +668e3cc3e765dd66aa051c643f854d9c \ No newline at end of file diff --git a/docs/structed247_1_1_stream_signals__inherit__graph.png b/docs/structed247_1_1_stream_signals__inherit__graph.png new file mode 100644 index 00000000..64b757b7 Binary files /dev/null and b/docs/structed247_1_1_stream_signals__inherit__graph.png differ diff --git a/docs/structed247_1_1client__list.html b/docs/structed247_1_1client__list.html new file mode 100644 index 00000000..4b52d29b --- /dev/null +++ b/docs/structed247_1_1client__list.html @@ -0,0 +1,182 @@ + + + + + + +ED247 Library: ed247::client_list< CBaseList, T > Struct Template Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::client_list< CBaseList, T > Struct Template Referenceabstract
+
+
+
+Inheritance diagram for ed247::client_list< CBaseList, T >:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::client_list< CBaseList, T >:
+
+
Collaboration graph
+ + + +
+ + + + + + +

+Public Types

+typedef T value_t
 
+typedef std::shared_ptr< T > container_value_t
 
+ + + + + + + + + + + + + +

+Public Member Functions

+virtual bool is_context_owned ()=0
 
+virtual uint32_t size () const =0
 
+virtual T * get_current ()=0
 
+virtual T * get_next ()=0
 
+virtual void reset_iterator ()=0
 
+virtual void free ()=0
 
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247_1_1client__list.js b/docs/structed247_1_1client__list.js new file mode 100644 index 00000000..7521da2f --- /dev/null +++ b/docs/structed247_1_1client__list.js @@ -0,0 +1,12 @@ +var structed247_1_1client__list = +[ + [ "value_t", "structed247_1_1client__list.html#acfdaab00adcce257ba68980b80061e00", null ], + [ "container_value_t", "structed247_1_1client__list.html#a8ca3192b99154d7e00b4b6d0ffadcd2b", null ], + [ "~client_list", "structed247_1_1client__list.html#a6a5b3f360026c8107ea976da5775dc12", null ], + [ "is_context_owned", "structed247_1_1client__list.html#a01f94a66a5d98bd7973c21fdc248b7be", null ], + [ "size", "structed247_1_1client__list.html#a5d11caec298f71e33c9dd7d4a97a804d", null ], + [ "get_current", "structed247_1_1client__list.html#aa72621de13c3200f90080cef122e3226", null ], + [ "get_next", "structed247_1_1client__list.html#aa8ad83f183babe6bbb5f122776ab124f", null ], + [ "reset_iterator", "structed247_1_1client__list.html#a691e378d50bbb18cd3b9aa25a127c16b", null ], + [ "free", "structed247_1_1client__list.html#a069a2e45e3bf9a37d02fbaa20df060ee", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1client__list__coll__graph.map b/docs/structed247_1_1client__list__coll__graph.map new file mode 100644 index 00000000..9fdcb916 --- /dev/null +++ b/docs/structed247_1_1client__list__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1client__list__coll__graph.md5 b/docs/structed247_1_1client__list__coll__graph.md5 new file mode 100644 index 00000000..4d2aa9a6 --- /dev/null +++ b/docs/structed247_1_1client__list__coll__graph.md5 @@ -0,0 +1 @@ +418c780aae803a78a7bb483fb64dcf11 \ No newline at end of file diff --git a/docs/structed247_1_1client__list__coll__graph.png b/docs/structed247_1_1client__list__coll__graph.png new file mode 100644 index 00000000..ff109afa Binary files /dev/null and b/docs/structed247_1_1client__list__coll__graph.png differ diff --git a/docs/structed247_1_1client__list__container.html b/docs/structed247_1_1client__list__container.html new file mode 100644 index 00000000..a8dd7171 --- /dev/null +++ b/docs/structed247_1_1client__list__container.html @@ -0,0 +1,217 @@ + + + + + + +ED247 Library: ed247::client_list_container< CBaseList, T, Container, context_owned > Struct Template Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::client_list_container< CBaseList, T, Container, context_owned > Struct Template Reference
+
+
+
+Inheritance diagram for ed247::client_list_container< CBaseList, T, Container, context_owned >:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::client_list_container< CBaseList, T, Container, context_owned >:
+
+
Collaboration graph
+ + + + +
+ + + + + + + + + +

+Public Types

+typedef Container::iterator iterator_t
 
- Public Types inherited from ed247::client_list< CBaseList, T >
+typedef T value_t
 
+typedef std::shared_ptr< T > container_value_t
 
+ + + + + + + + + + + + + +

+Public Member Functions

+virtual bool is_context_owned ()
 
+uint32_t size () const override
 
+virtual void free () override
 
+void reset_iterator () override
 
+T * get_current () override
 
+T * get_next () override
 
+ + + + + +

+Static Public Member Functions

+static client_list_containerwrap (Container &container)
 
+static client_list_containercopy (const Container &container)
 
+ + + +

+Protected Member Functions

client_list_container (Container *container, bool container_owner)
 
+ + + + + + + +

+Protected Attributes

+Container * _container
 
+iterator_t _iterator
 
+bool _container_owner
 
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247_1_1client__list__container.js b/docs/structed247_1_1client__list__container.js new file mode 100644 index 00000000..6b2e5b2d --- /dev/null +++ b/docs/structed247_1_1client__list__container.js @@ -0,0 +1,15 @@ +var structed247_1_1client__list__container = +[ + [ "iterator_t", "structed247_1_1client__list__container.html#a0f6c86cecd533bba692c5d289369ea2e", null ], + [ "~client_list_container", "structed247_1_1client__list__container.html#a6966619048cbd7d86b1cd83ec4c6e748", null ], + [ "client_list_container", "structed247_1_1client__list__container.html#a51db0a31e51c4cb697758edf62e3dd38", null ], + [ "is_context_owned", "structed247_1_1client__list__container.html#a60d9c8d455de7bd3d742eb9058ed879e", null ], + [ "size", "structed247_1_1client__list__container.html#a11245222cabbbbf50e46c2edf9bf60db", null ], + [ "free", "structed247_1_1client__list__container.html#a4bc648fe5971dc084538eef6158507e5", null ], + [ "reset_iterator", "structed247_1_1client__list__container.html#a16f9e28ea29b7e65df1d6f9fa417253d", null ], + [ "get_current", "structed247_1_1client__list__container.html#a4b5d0dea4a118fed8905c09bff95f273", null ], + [ "get_next", "structed247_1_1client__list__container.html#a78edf81c87add5b9330e3b25e16c46b2", null ], + [ "_container", "structed247_1_1client__list__container.html#a1ff17d0dceddf8c280c464ad9b9c777b", null ], + [ "_iterator", "structed247_1_1client__list__container.html#a9317298381458bc2b20999b01721ad2b", null ], + [ "_container_owner", "structed247_1_1client__list__container.html#a6f849afa2c5eec99304b8b1289957d08", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1client__list__container__coll__graph.map b/docs/structed247_1_1client__list__container__coll__graph.map new file mode 100644 index 00000000..d4785808 --- /dev/null +++ b/docs/structed247_1_1client__list__container__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247_1_1client__list__container__coll__graph.md5 b/docs/structed247_1_1client__list__container__coll__graph.md5 new file mode 100644 index 00000000..1d7dc23b --- /dev/null +++ b/docs/structed247_1_1client__list__container__coll__graph.md5 @@ -0,0 +1 @@ +ef94d9cda32e4196a67cf4254b70868c \ No newline at end of file diff --git a/docs/structed247_1_1client__list__container__coll__graph.png b/docs/structed247_1_1client__list__container__coll__graph.png new file mode 100644 index 00000000..09152394 Binary files /dev/null and b/docs/structed247_1_1client__list__container__coll__graph.png differ diff --git a/docs/structed247_1_1client__list__container__inherit__graph.map b/docs/structed247_1_1client__list__container__inherit__graph.map new file mode 100644 index 00000000..4c8cb084 --- /dev/null +++ b/docs/structed247_1_1client__list__container__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1client__list__container__inherit__graph.md5 b/docs/structed247_1_1client__list__container__inherit__graph.md5 new file mode 100644 index 00000000..a97cc9c1 --- /dev/null +++ b/docs/structed247_1_1client__list__container__inherit__graph.md5 @@ -0,0 +1 @@ +5ecd397c15c54e52b4d126e6d48de6a9 \ No newline at end of file diff --git a/docs/structed247_1_1client__list__container__inherit__graph.png b/docs/structed247_1_1client__list__container__inherit__graph.png new file mode 100644 index 00000000..076fcd50 Binary files /dev/null and b/docs/structed247_1_1client__list__container__inherit__graph.png differ diff --git a/docs/structed247_1_1client__list__inherit__graph.map b/docs/structed247_1_1client__list__inherit__graph.map new file mode 100644 index 00000000..717cdca5 --- /dev/null +++ b/docs/structed247_1_1client__list__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1client__list__inherit__graph.md5 b/docs/structed247_1_1client__list__inherit__graph.md5 new file mode 100644 index 00000000..fc0274cc --- /dev/null +++ b/docs/structed247_1_1client__list__inherit__graph.md5 @@ -0,0 +1 @@ +f1bdd7d71dee55f2f7b6467a8ad06b63 \ No newline at end of file diff --git a/docs/structed247_1_1client__list__inherit__graph.png b/docs/structed247_1_1client__list__inherit__graph.png new file mode 100644 index 00000000..4f8c8352 Binary files /dev/null and b/docs/structed247_1_1client__list__inherit__graph.png differ diff --git a/docs/structed247_1_1is__pair.html b/docs/structed247_1_1is__pair.html new file mode 100644 index 00000000..21f52af1 --- /dev/null +++ b/docs/structed247_1_1is__pair.html @@ -0,0 +1,140 @@ + + + + + + +ED247 Library: ed247::is_pair< typename > Struct Template Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247::is_pair< typename > Struct Template Reference
+
+
+
+Inheritance diagram for ed247::is_pair< typename >:
+
+
Inheritance graph
+
+
+Collaboration diagram for ed247::is_pair< typename >:
+
+
Collaboration graph
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4.html b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4.html new file mode 100644 index 00000000..2b042b19 --- /dev/null +++ b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4.html @@ -0,0 +1,140 @@ + + + + + + +ED247 Library: ed247::is_pair< std::pair< T, U > > Struct Template Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247::is_pair< std::pair< T, U > > Struct Template Reference
+
+
+
+Inheritance diagram for ed247::is_pair< std::pair< T, U > >:
+
+
Inheritance graph
+
+
+Collaboration diagram for ed247::is_pair< std::pair< T, U > >:
+
+
Collaboration graph
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__coll__graph.map b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__coll__graph.map new file mode 100644 index 00000000..eee53d13 --- /dev/null +++ b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__coll__graph.md5 b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__coll__graph.md5 new file mode 100644 index 00000000..743c0210 --- /dev/null +++ b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__coll__graph.md5 @@ -0,0 +1 @@ +d8fd97db31418a513a021d34ebad2e55 \ No newline at end of file diff --git a/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__coll__graph.png b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__coll__graph.png new file mode 100644 index 00000000..e478f487 Binary files /dev/null and b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__coll__graph.png differ diff --git a/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__inherit__graph.map b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__inherit__graph.map new file mode 100644 index 00000000..eee53d13 --- /dev/null +++ b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__inherit__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__inherit__graph.md5 b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__inherit__graph.md5 new file mode 100644 index 00000000..743c0210 --- /dev/null +++ b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__inherit__graph.md5 @@ -0,0 +1 @@ +d8fd97db31418a513a021d34ebad2e55 \ No newline at end of file diff --git a/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__inherit__graph.png b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__inherit__graph.png new file mode 100644 index 00000000..e478f487 Binary files /dev/null and b/docs/structed247_1_1is__pair_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4__inherit__graph.png differ diff --git a/docs/structed247_1_1is__pair__coll__graph.map b/docs/structed247_1_1is__pair__coll__graph.map new file mode 100644 index 00000000..2bdd557a --- /dev/null +++ b/docs/structed247_1_1is__pair__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247_1_1is__pair__coll__graph.md5 b/docs/structed247_1_1is__pair__coll__graph.md5 new file mode 100644 index 00000000..abd2bab7 --- /dev/null +++ b/docs/structed247_1_1is__pair__coll__graph.md5 @@ -0,0 +1 @@ +c9fd28e51726fd18299c1d16ad765aa1 \ No newline at end of file diff --git a/docs/structed247_1_1is__pair__coll__graph.png b/docs/structed247_1_1is__pair__coll__graph.png new file mode 100644 index 00000000..6f8a163f Binary files /dev/null and b/docs/structed247_1_1is__pair__coll__graph.png differ diff --git a/docs/structed247_1_1is__pair__inherit__graph.map b/docs/structed247_1_1is__pair__inherit__graph.map new file mode 100644 index 00000000..2bdd557a --- /dev/null +++ b/docs/structed247_1_1is__pair__inherit__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247_1_1is__pair__inherit__graph.md5 b/docs/structed247_1_1is__pair__inherit__graph.md5 new file mode 100644 index 00000000..abd2bab7 --- /dev/null +++ b/docs/structed247_1_1is__pair__inherit__graph.md5 @@ -0,0 +1 @@ +c9fd28e51726fd18299c1d16ad765aa1 \ No newline at end of file diff --git a/docs/structed247_1_1is__pair__inherit__graph.png b/docs/structed247_1_1is__pair__inherit__graph.png new file mode 100644 index 00000000..6f8a163f Binary files /dev/null and b/docs/structed247_1_1is__pair__inherit__graph.png differ diff --git a/docs/structed247_1_1log.html b/docs/structed247_1_1log.html new file mode 100644 index 00000000..ef2eef7b --- /dev/null +++ b/docs/structed247_1_1log.html @@ -0,0 +1,174 @@ + + + + + + +ED247 Library: ed247::log Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+
+Collaboration diagram for ed247::log:
+
+
Collaboration graph
+
+ + + + + + + + + + +

+Public Member Functions

+void reset (ed247_log_level_t level=ED247_LOG_LEVEL_DEFAULT, const char *filepath=nullptr)
 
+std::ostream & stream ()
 
+ed247_log_level_t level ()
 
+bool enabled (ed247_log_level_t level)
 
+ + + + + +

+Static Public Member Functions

+static logget ()
 
+static std::string level_name (ed247_log_level_t level)
 
+ + + + + +

+Static Public Attributes

+static constexpr const char * ENV_VAR_LEVEL = "ED247_LOG_LEVEL"
 
+static constexpr const char * ENV_VAR_FILEPATH = "ED247_LOG_FILEPATH"
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1log.js b/docs/structed247_1_1log.js new file mode 100644 index 00000000..70bdfd85 --- /dev/null +++ b/docs/structed247_1_1log.js @@ -0,0 +1,7 @@ +var structed247_1_1log = +[ + [ "reset", "structed247_1_1log.html#ab5418722a4408722c4dc74ea8b63ec31", null ], + [ "stream", "structed247_1_1log.html#a23f979b03cbdbcd4e88563dcb91fbbb5", null ], + [ "level", "structed247_1_1log.html#a9dbc363ee47074ca7b1efbc9bf06798f", null ], + [ "enabled", "structed247_1_1log.html#ad9b6948caf6ac178f1cfd98c2a50129b", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1log__coll__graph.map b/docs/structed247_1_1log__coll__graph.map new file mode 100644 index 00000000..538d7d6c --- /dev/null +++ b/docs/structed247_1_1log__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247_1_1log__coll__graph.md5 b/docs/structed247_1_1log__coll__graph.md5 new file mode 100644 index 00000000..fad92218 --- /dev/null +++ b/docs/structed247_1_1log__coll__graph.md5 @@ -0,0 +1 @@ +df2f32c445016bbd9977288371bce2c0 \ No newline at end of file diff --git a/docs/structed247_1_1log__coll__graph.png b/docs/structed247_1_1log__coll__graph.png new file mode 100644 index 00000000..b7698a68 Binary files /dev/null and b/docs/structed247_1_1log__coll__graph.png differ diff --git a/docs/structed247_1_1udp_1_1_receiver_1_1frame__t.html b/docs/structed247_1_1udp_1_1_receiver_1_1frame__t.html new file mode 100644 index 00000000..7d63cf90 --- /dev/null +++ b/docs/structed247_1_1udp_1_1_receiver_1_1frame__t.html @@ -0,0 +1,147 @@ + + + + + + +ED247 Library: ed247::udp::Receiver::frame_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::udp::Receiver::frame_t Struct Reference
+
+
+
+Collaboration diagram for ed247::udp::Receiver::frame_t:
+
+
Collaboration graph
+
+ + + + + + +

+Data Fields

+char payload [MAX_FRAME_SIZE]
 
+uint32_t size {MAX_FRAME_SIZE}
 
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247_1_1udp_1_1_receiver_1_1frame__t.js b/docs/structed247_1_1udp_1_1_receiver_1_1frame__t.js new file mode 100644 index 00000000..69c86fe6 --- /dev/null +++ b/docs/structed247_1_1udp_1_1_receiver_1_1frame__t.js @@ -0,0 +1,5 @@ +var structed247_1_1udp_1_1_receiver_1_1frame__t = +[ + [ "payload", "structed247_1_1udp_1_1_receiver_1_1frame__t.html#a420e8b869b6323fb2f79022d584bac5b", null ], + [ "size", "structed247_1_1udp_1_1_receiver_1_1frame__t.html#a3d671dd990cf83896de40f59afb4b604", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1udp_1_1_receiver_1_1frame__t__coll__graph.map b/docs/structed247_1_1udp_1_1_receiver_1_1frame__t__coll__graph.map new file mode 100644 index 00000000..30ef9c19 --- /dev/null +++ b/docs/structed247_1_1udp_1_1_receiver_1_1frame__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247_1_1udp_1_1_receiver_1_1frame__t__coll__graph.md5 b/docs/structed247_1_1udp_1_1_receiver_1_1frame__t__coll__graph.md5 new file mode 100644 index 00000000..0683d4e1 --- /dev/null +++ b/docs/structed247_1_1udp_1_1_receiver_1_1frame__t__coll__graph.md5 @@ -0,0 +1 @@ +15968cbc2964325507c5f0e4b353fcc2 \ No newline at end of file diff --git a/docs/structed247_1_1udp_1_1_receiver_1_1frame__t__coll__graph.png b/docs/structed247_1_1udp_1_1_receiver_1_1frame__t__coll__graph.png new file mode 100644 index 00000000..1f7ffd0d Binary files /dev/null and b/docs/structed247_1_1udp_1_1_receiver_1_1frame__t__coll__graph.png differ diff --git a/docs/structed247_1_1udp_1_1socket__address__equal__to.html b/docs/structed247_1_1udp_1_1socket__address__equal__to.html new file mode 100644 index 00000000..8df7a3e8 --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__equal__to.html @@ -0,0 +1,144 @@ + + + + + + +ED247 Library: ed247::udp::socket_address_equal_to Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::udp::socket_address_equal_to Struct Reference
+
+
+
+Collaboration diagram for ed247::udp::socket_address_equal_to:
+
+
Collaboration graph
+
+ + + + +

+Public Member Functions

+bool operator() (const socket_address_t &a, const socket_address_t &b) const
 
+
The documentation for this struct was generated from the following file:
    +
  • src/ed247/ed247_cominterface.cpp
  • +
+
+
+ + + + diff --git a/docs/structed247_1_1udp_1_1socket__address__equal__to.js b/docs/structed247_1_1udp_1_1socket__address__equal__to.js new file mode 100644 index 00000000..e368ddc7 --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__equal__to.js @@ -0,0 +1,4 @@ +var structed247_1_1udp_1_1socket__address__equal__to = +[ + [ "operator()", "structed247_1_1udp_1_1socket__address__equal__to.html#a591d5a60a2a321221e05ccf388b0a10a", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1udp_1_1socket__address__equal__to__coll__graph.map b/docs/structed247_1_1udp_1_1socket__address__equal__to__coll__graph.map new file mode 100644 index 00000000..7cc42bb5 --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__equal__to__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247_1_1udp_1_1socket__address__equal__to__coll__graph.md5 b/docs/structed247_1_1udp_1_1socket__address__equal__to__coll__graph.md5 new file mode 100644 index 00000000..6f461d4f --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__equal__to__coll__graph.md5 @@ -0,0 +1 @@ +70bd86c25cd22341f4941d7f59ea3c3c \ No newline at end of file diff --git a/docs/structed247_1_1udp_1_1socket__address__equal__to__coll__graph.png b/docs/structed247_1_1udp_1_1socket__address__equal__to__coll__graph.png new file mode 100644 index 00000000..54f2d65f Binary files /dev/null and b/docs/structed247_1_1udp_1_1socket__address__equal__to__coll__graph.png differ diff --git a/docs/structed247_1_1udp_1_1socket__address__hash.html b/docs/structed247_1_1udp_1_1socket__address__hash.html new file mode 100644 index 00000000..983e267e --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__hash.html @@ -0,0 +1,144 @@ + + + + + + +ED247 Library: ed247::udp::socket_address_hash Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::udp::socket_address_hash Struct Reference
+
+
+
+Collaboration diagram for ed247::udp::socket_address_hash:
+
+
Collaboration graph
+
+ + + + +

+Public Member Functions

+size_t operator() (const socket_address_t &socket_address) const
 
+
The documentation for this struct was generated from the following file:
    +
  • src/ed247/ed247_cominterface.cpp
  • +
+
+
+ + + + diff --git a/docs/structed247_1_1udp_1_1socket__address__hash.js b/docs/structed247_1_1udp_1_1socket__address__hash.js new file mode 100644 index 00000000..f21ff253 --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__hash.js @@ -0,0 +1,4 @@ +var structed247_1_1udp_1_1socket__address__hash = +[ + [ "operator()", "structed247_1_1udp_1_1socket__address__hash.html#a31c9dd63c370fc577fe6922a683db6bd", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1udp_1_1socket__address__hash__coll__graph.map b/docs/structed247_1_1udp_1_1socket__address__hash__coll__graph.map new file mode 100644 index 00000000..12c822e7 --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__hash__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247_1_1udp_1_1socket__address__hash__coll__graph.md5 b/docs/structed247_1_1udp_1_1socket__address__hash__coll__graph.md5 new file mode 100644 index 00000000..85926573 --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__hash__coll__graph.md5 @@ -0,0 +1 @@ +a26cdcce6cea40d178d170e8adb96d1d \ No newline at end of file diff --git a/docs/structed247_1_1udp_1_1socket__address__hash__coll__graph.png b/docs/structed247_1_1udp_1_1socket__address__hash__coll__graph.png new file mode 100644 index 00000000..d784ede9 Binary files /dev/null and b/docs/structed247_1_1udp_1_1socket__address__hash__coll__graph.png differ diff --git a/docs/structed247_1_1udp_1_1socket__address__t.html b/docs/structed247_1_1udp_1_1socket__address__t.html new file mode 100644 index 00000000..8db2c49c --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__t.html @@ -0,0 +1,171 @@ + + + + + + +ED247 Library: ed247::udp::socket_address_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::udp::socket_address_t Struct Reference
+
+
+
+Inheritance diagram for ed247::udp::socket_address_t:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::udp::socket_address_t:
+
+
Collaboration graph
+ + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

socket_address_t (std::string ip_address, uint16_t ip_port)
 
+void set_ip_address (std::string ip_address)
 
+void set_ip_port (uint16_t ip_port)
 
+bool is_multicast () const
 
+bool is_unicast () const
 
+bool is_any_addr () const
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1udp_1_1socket__address__t.js b/docs/structed247_1_1udp_1_1socket__address__t.js new file mode 100644 index 00000000..0aa22158 --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__t.js @@ -0,0 +1,9 @@ +var structed247_1_1udp_1_1socket__address__t = +[ + [ "socket_address_t", "structed247_1_1udp_1_1socket__address__t.html#a26c3ff605bf6c238e3bd95f91f57d996", null ], + [ "set_ip_address", "structed247_1_1udp_1_1socket__address__t.html#ab29315fea8d9e361a51e39538f639278", null ], + [ "set_ip_port", "structed247_1_1udp_1_1socket__address__t.html#adb47e61f0513c52836359fc7e6d1d26f", null ], + [ "is_multicast", "structed247_1_1udp_1_1socket__address__t.html#a74e91ec79533f9afbed5701784e34fb8", null ], + [ "is_unicast", "structed247_1_1udp_1_1socket__address__t.html#a1ebde3f83787faceb8cf94b52202a2b5", null ], + [ "is_any_addr", "structed247_1_1udp_1_1socket__address__t.html#ae0a056573e5665c6388e02349d7c55b2", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1udp_1_1socket__address__t__coll__graph.map b/docs/structed247_1_1udp_1_1socket__address__t__coll__graph.map new file mode 100644 index 00000000..00cd9bf3 --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__t__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1udp_1_1socket__address__t__coll__graph.md5 b/docs/structed247_1_1udp_1_1socket__address__t__coll__graph.md5 new file mode 100644 index 00000000..3f9266a1 --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__t__coll__graph.md5 @@ -0,0 +1 @@ +7e908b92bd80e5f9e35594257e2e0726 \ No newline at end of file diff --git a/docs/structed247_1_1udp_1_1socket__address__t__coll__graph.png b/docs/structed247_1_1udp_1_1socket__address__t__coll__graph.png new file mode 100644 index 00000000..7f824bd2 Binary files /dev/null and b/docs/structed247_1_1udp_1_1socket__address__t__coll__graph.png differ diff --git a/docs/structed247_1_1udp_1_1socket__address__t__inherit__graph.map b/docs/structed247_1_1udp_1_1socket__address__t__inherit__graph.map new file mode 100644 index 00000000..00cd9bf3 --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__t__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1udp_1_1socket__address__t__inherit__graph.md5 b/docs/structed247_1_1udp_1_1socket__address__t__inherit__graph.md5 new file mode 100644 index 00000000..3f9266a1 --- /dev/null +++ b/docs/structed247_1_1udp_1_1socket__address__t__inherit__graph.md5 @@ -0,0 +1 @@ +7e908b92bd80e5f9e35594257e2e0726 \ No newline at end of file diff --git a/docs/structed247_1_1udp_1_1socket__address__t__inherit__graph.png b/docs/structed247_1_1udp_1_1socket__address__t__inherit__graph.png new file mode 100644 index 00000000..7f824bd2 Binary files /dev/null and b/docs/structed247_1_1udp_1_1socket__address__t__inherit__graph.png differ diff --git a/docs/structed247_1_1udp_1_1system__socket__map__t.html b/docs/structed247_1_1udp_1_1system__socket__map__t.html new file mode 100644 index 00000000..711cbff6 --- /dev/null +++ b/docs/structed247_1_1udp_1_1system__socket__map__t.html @@ -0,0 +1,151 @@ + + + + + + +ED247 Library: ed247::udp::system_socket_map_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::udp::system_socket_map_t Struct Reference
+
+
+
+Collaboration diagram for ed247::udp::system_socket_map_t:
+
+
Collaboration graph
+
+ + + + + + + + +

+Public Member Functions

+ed247_socket_t create (const socket_address_t &address, EnableReuseAddr enableReuseAddr)
 
+void release (const socket_address_t &address)
 
+void assert_sockets_freed ()
 
+
The documentation for this struct was generated from the following file:
    +
  • src/ed247/ed247_cominterface.cpp
  • +
+
+
+ + + + diff --git a/docs/structed247_1_1udp_1_1system__socket__map__t.js b/docs/structed247_1_1udp_1_1system__socket__map__t.js new file mode 100644 index 00000000..2b8f6d53 --- /dev/null +++ b/docs/structed247_1_1udp_1_1system__socket__map__t.js @@ -0,0 +1,6 @@ +var structed247_1_1udp_1_1system__socket__map__t = +[ + [ "create", "structed247_1_1udp_1_1system__socket__map__t.html#a7f1de179c796eb19df3ea9e993793bf5", null ], + [ "release", "structed247_1_1udp_1_1system__socket__map__t.html#a21cc01106df5e4e737a952210b556857", null ], + [ "assert_sockets_freed", "structed247_1_1udp_1_1system__socket__map__t.html#a9d8f8461f8c426ef1be75bb784170b26", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1udp_1_1system__socket__map__t__coll__graph.map b/docs/structed247_1_1udp_1_1system__socket__map__t__coll__graph.map new file mode 100644 index 00000000..991c6889 --- /dev/null +++ b/docs/structed247_1_1udp_1_1system__socket__map__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247_1_1udp_1_1system__socket__map__t__coll__graph.md5 b/docs/structed247_1_1udp_1_1system__socket__map__t__coll__graph.md5 new file mode 100644 index 00000000..0f3ad95c --- /dev/null +++ b/docs/structed247_1_1udp_1_1system__socket__map__t__coll__graph.md5 @@ -0,0 +1 @@ +f0ebdb0d10f435b00a6a7b78776ec33d \ No newline at end of file diff --git a/docs/structed247_1_1udp_1_1system__socket__map__t__coll__graph.png b/docs/structed247_1_1udp_1_1system__socket__map__t__coll__graph.png new file mode 100644 index 00000000..3b155b00 Binary files /dev/null and b/docs/structed247_1_1udp_1_1system__socket__map__t__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_a429_stream.html b/docs/structed247_1_1xml_1_1_a429_stream.html new file mode 100644 index 00000000..eaea0708 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a429_stream.html @@ -0,0 +1,214 @@ + + + + + + +ED247 Library: ed247::xml::A429Stream Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::A429Stream Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::A429Stream:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::xml::A429Stream:
+
+
Collaboration graph
+ + + + + + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+virtual void validate (const xmlNodePtr closest_node) override final
 
- Public Member Functions inherited from ed247::xml::StreamProtocoled
+virtual bool is_signal_based () const override final
 
StreamProtocoled (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed=false)
 
- Public Member Functions inherited from ed247::xml::Stream
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Data Fields inherited from ed247::xml::StreamProtocoled
+Errors _errors
 
- Data Fields inherited from ed247::xml::Stream
+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_a429_stream.js b/docs/structed247_1_1xml_1_1_a429_stream.js new file mode 100644 index 00000000..1ebba983 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a429_stream.js @@ -0,0 +1,6 @@ +var structed247_1_1xml_1_1_a429_stream = +[ + [ "A429Stream", "structed247_1_1xml_1_1_a429_stream.html#ad7967b642f7fa82240c9dc584280cf44", null ], + [ "load", "structed247_1_1xml_1_1_a429_stream.html#a25c851ab0aa0c87ecd8dff9f2d72195a", null ], + [ "validate", "structed247_1_1xml_1_1_a429_stream.html#a6ecad9f1cbed1b47cf16b353f7d7a53c", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a429_stream__coll__graph.map b/docs/structed247_1_1xml_1_1_a429_stream__coll__graph.map new file mode 100644 index 00000000..d823c320 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a429_stream__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/structed247_1_1xml_1_1_a429_stream__coll__graph.md5 b/docs/structed247_1_1xml_1_1_a429_stream__coll__graph.md5 new file mode 100644 index 00000000..a7f1e670 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a429_stream__coll__graph.md5 @@ -0,0 +1 @@ +2ce3874c6013527a883567192d5259ea \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a429_stream__coll__graph.png b/docs/structed247_1_1xml_1_1_a429_stream__coll__graph.png new file mode 100644 index 00000000..93c5f8b5 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_a429_stream__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_a429_stream__inherit__graph.map b/docs/structed247_1_1xml_1_1_a429_stream__inherit__graph.map new file mode 100644 index 00000000..714ccc69 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a429_stream__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1xml_1_1_a429_stream__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_a429_stream__inherit__graph.md5 new file mode 100644 index 00000000..a1707623 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a429_stream__inherit__graph.md5 @@ -0,0 +1 @@ +1f14f92b0e9fea98a6c0a844bcf09f92 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a429_stream__inherit__graph.png b/docs/structed247_1_1xml_1_1_a429_stream__inherit__graph.png new file mode 100644 index 00000000..412c969e Binary files /dev/null and b/docs/structed247_1_1xml_1_1_a429_stream__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_a664_stream.html b/docs/structed247_1_1xml_1_1_a664_stream.html new file mode 100644 index 00000000..079db316 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a664_stream.html @@ -0,0 +1,218 @@ + + + + + + +ED247 Library: ed247::xml::A664Stream Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::A664Stream Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::A664Stream:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::xml::A664Stream:
+
+
Collaboration graph
+ + + + + + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+virtual void validate (const xmlNodePtr closest_node) override final
 
- Public Member Functions inherited from ed247::xml::StreamProtocoled
+virtual bool is_signal_based () const override final
 
StreamProtocoled (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed=false)
 
- Public Member Functions inherited from ed247::xml::Stream
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Fields

+ed247_yesno_t _enable_message_size
 
- Data Fields inherited from ed247::xml::StreamProtocoled
+Errors _errors
 
- Data Fields inherited from ed247::xml::Stream
+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_a664_stream.js b/docs/structed247_1_1xml_1_1_a664_stream.js new file mode 100644 index 00000000..9acd3630 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a664_stream.js @@ -0,0 +1,7 @@ +var structed247_1_1xml_1_1_a664_stream = +[ + [ "A664Stream", "structed247_1_1xml_1_1_a664_stream.html#afbee85a2ddd4c67868eb3cd31a8baef6", null ], + [ "load", "structed247_1_1xml_1_1_a664_stream.html#a854261651073d2565d56f73f524e3744", null ], + [ "validate", "structed247_1_1xml_1_1_a664_stream.html#a7f5437e94bc2b7f36a4151cbd27039cb", null ], + [ "_enable_message_size", "structed247_1_1xml_1_1_a664_stream.html#a432e5c2504d3b7919c34a5d18d0d886d", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a664_stream__coll__graph.map b/docs/structed247_1_1xml_1_1_a664_stream__coll__graph.map new file mode 100644 index 00000000..aaac474f --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a664_stream__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/structed247_1_1xml_1_1_a664_stream__coll__graph.md5 b/docs/structed247_1_1xml_1_1_a664_stream__coll__graph.md5 new file mode 100644 index 00000000..1b93c492 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a664_stream__coll__graph.md5 @@ -0,0 +1 @@ +325ec70156f13f02d75a63194faa91c9 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a664_stream__coll__graph.png b/docs/structed247_1_1xml_1_1_a664_stream__coll__graph.png new file mode 100644 index 00000000..9295eeb4 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_a664_stream__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_a664_stream__inherit__graph.map b/docs/structed247_1_1xml_1_1_a664_stream__inherit__graph.map new file mode 100644 index 00000000..2edf9aad --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a664_stream__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1xml_1_1_a664_stream__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_a664_stream__inherit__graph.md5 new file mode 100644 index 00000000..96dfa51a --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a664_stream__inherit__graph.md5 @@ -0,0 +1 @@ +85afe3420be0c81a5f1ac0df4501de44 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a664_stream__inherit__graph.png b/docs/structed247_1_1xml_1_1_a664_stream__inherit__graph.png new file mode 100644 index 00000000..3e4a3c4c Binary files /dev/null and b/docs/structed247_1_1xml_1_1_a664_stream__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_a825_stream.html b/docs/structed247_1_1xml_1_1_a825_stream.html new file mode 100644 index 00000000..f8544a32 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a825_stream.html @@ -0,0 +1,214 @@ + + + + + + +ED247 Library: ed247::xml::A825Stream Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::A825Stream Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::A825Stream:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::xml::A825Stream:
+
+
Collaboration graph
+ + + + + + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+virtual void validate (const xmlNodePtr closest_node) override final
 
- Public Member Functions inherited from ed247::xml::StreamProtocoled
+virtual bool is_signal_based () const override final
 
StreamProtocoled (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed=false)
 
- Public Member Functions inherited from ed247::xml::Stream
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Data Fields inherited from ed247::xml::StreamProtocoled
+Errors _errors
 
- Data Fields inherited from ed247::xml::Stream
+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_a825_stream.js b/docs/structed247_1_1xml_1_1_a825_stream.js new file mode 100644 index 00000000..06e6ab88 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a825_stream.js @@ -0,0 +1,6 @@ +var structed247_1_1xml_1_1_a825_stream = +[ + [ "A825Stream", "structed247_1_1xml_1_1_a825_stream.html#afb1d87d296dad9a5e9465117d49b9be1", null ], + [ "load", "structed247_1_1xml_1_1_a825_stream.html#aac091cce70f5324fb608d2678c445d86", null ], + [ "validate", "structed247_1_1xml_1_1_a825_stream.html#a4df895b50ddb89300c5a7d9a2eb77b73", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a825_stream__coll__graph.map b/docs/structed247_1_1xml_1_1_a825_stream__coll__graph.map new file mode 100644 index 00000000..b9954006 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a825_stream__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/structed247_1_1xml_1_1_a825_stream__coll__graph.md5 b/docs/structed247_1_1xml_1_1_a825_stream__coll__graph.md5 new file mode 100644 index 00000000..15bf0e16 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a825_stream__coll__graph.md5 @@ -0,0 +1 @@ +15c7d0100a159488da851bb4d9612b49 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a825_stream__coll__graph.png b/docs/structed247_1_1xml_1_1_a825_stream__coll__graph.png new file mode 100644 index 00000000..5b27e633 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_a825_stream__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_a825_stream__inherit__graph.map b/docs/structed247_1_1xml_1_1_a825_stream__inherit__graph.map new file mode 100644 index 00000000..92b0cc21 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a825_stream__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1xml_1_1_a825_stream__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_a825_stream__inherit__graph.md5 new file mode 100644 index 00000000..94ba2f14 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a825_stream__inherit__graph.md5 @@ -0,0 +1 @@ +dbf8983b9f86b99d727b3ed648c64540 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a825_stream__inherit__graph.png b/docs/structed247_1_1xml_1_1_a825_stream__inherit__graph.png new file mode 100644 index 00000000..158ddc17 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_a825_stream__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_a_n_a_signal.html b/docs/structed247_1_1xml_1_1_a_n_a_signal.html new file mode 100644 index 00000000..825804bc --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_signal.html @@ -0,0 +1,209 @@ + + + + + + +ED247 Library: ed247::xml::ANASignal Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::ANASignal Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::ANASignal:
+
+
Inheritance graph
+ + + + +
+
+Collaboration diagram for ed247::xml::ANASignal:
+
+
Collaboration graph
+ + + + +
+ + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
- Public Member Functions inherited from ed247::xml::Signal
+uint32_t get_sample_max_size_bytes () const
 
+uint32_t get_nad_type_size () const
 
Signal (ed247_signal_type_t type)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from ed247::xml::Signal
+static uint32_t get_nad_type_size (ed247_nad_type_t nad_type)
 
- Data Fields inherited from ed247::xml::Signal
+std::string _name
 
+ed247_signal_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+uint32_t _byte_offset
 
+std::string _analogue_electrical_unit
 
+ed247_nad_type_t _nad_type
 
+std::string _nad_unit
 
+std::vector< uint32_t > _nad_dimensions
 
+uint32_t _vnad_position
 
+uint32_t _vnad_max_number
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_a_n_a_signal.js b/docs/structed247_1_1xml_1_1_a_n_a_signal.js new file mode 100644 index 00000000..9fdd5160 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_signal.js @@ -0,0 +1,5 @@ +var structed247_1_1xml_1_1_a_n_a_signal = +[ + [ "ANASignal", "structed247_1_1xml_1_1_a_n_a_signal.html#aec339be476eed60bc2df35face9d4557", null ], + [ "load", "structed247_1_1xml_1_1_a_n_a_signal.html#a38520f9334afc35699f6d00a32ddf7ba", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a_n_a_signal__coll__graph.map b/docs/structed247_1_1xml_1_1_a_n_a_signal__coll__graph.map new file mode 100644 index 00000000..fb5007db --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_signal__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247_1_1xml_1_1_a_n_a_signal__coll__graph.md5 b/docs/structed247_1_1xml_1_1_a_n_a_signal__coll__graph.md5 new file mode 100644 index 00000000..3a16d699 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_signal__coll__graph.md5 @@ -0,0 +1 @@ +a95b85d7e6cb1552493cdf9198052e6a \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a_n_a_signal__coll__graph.png b/docs/structed247_1_1xml_1_1_a_n_a_signal__coll__graph.png new file mode 100644 index 00000000..fac9c76a Binary files /dev/null and b/docs/structed247_1_1xml_1_1_a_n_a_signal__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_a_n_a_signal__inherit__graph.map b/docs/structed247_1_1xml_1_1_a_n_a_signal__inherit__graph.map new file mode 100644 index 00000000..0f52aef8 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_signal__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247_1_1xml_1_1_a_n_a_signal__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_a_n_a_signal__inherit__graph.md5 new file mode 100644 index 00000000..93874565 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_signal__inherit__graph.md5 @@ -0,0 +1 @@ +ac4cbb6957d5b43ffdbdd7d2f1065a1f \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a_n_a_signal__inherit__graph.png b/docs/structed247_1_1xml_1_1_a_n_a_signal__inherit__graph.png new file mode 100644 index 00000000..351c3b9f Binary files /dev/null and b/docs/structed247_1_1xml_1_1_a_n_a_signal__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_a_n_a_stream.html b/docs/structed247_1_1xml_1_1_a_n_a_stream.html new file mode 100644 index 00000000..a675fef6 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_stream.html @@ -0,0 +1,216 @@ + + + + + + +ED247 Library: ed247::xml::ANAStream Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::ANAStream Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::ANAStream:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::xml::ANAStream:
+
+
Collaboration graph
+ + + + + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+virtual void validate (const xmlNodePtr closest_node) override final
 
- Public Member Functions inherited from ed247::xml::StreamSignals
+virtual bool is_signal_based () const override final
 
StreamSignals (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed=true)
 
- Public Member Functions inherited from ed247::xml::Stream
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Data Fields inherited from ed247::xml::StreamSignals
+std::vector< std::unique_ptr< Signal > > _signal_list
 
+uint32_t _sampling_period_us
 
- Data Fields inherited from ed247::xml::Stream
+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_a_n_a_stream.js b/docs/structed247_1_1xml_1_1_a_n_a_stream.js new file mode 100644 index 00000000..0a694ebe --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_stream.js @@ -0,0 +1,6 @@ +var structed247_1_1xml_1_1_a_n_a_stream = +[ + [ "ANAStream", "structed247_1_1xml_1_1_a_n_a_stream.html#aba9d4917cbb37f54748351557bbbd431", null ], + [ "load", "structed247_1_1xml_1_1_a_n_a_stream.html#a42b1624139c7857434aefa080cdc3932", null ], + [ "validate", "structed247_1_1xml_1_1_a_n_a_stream.html#aa71c4826fbe642617564955686150ff1", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a_n_a_stream__coll__graph.map b/docs/structed247_1_1xml_1_1_a_n_a_stream__coll__graph.map new file mode 100644 index 00000000..0bcd38e2 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_stream__coll__graph.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/structed247_1_1xml_1_1_a_n_a_stream__coll__graph.md5 b/docs/structed247_1_1xml_1_1_a_n_a_stream__coll__graph.md5 new file mode 100644 index 00000000..479eb229 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_stream__coll__graph.md5 @@ -0,0 +1 @@ +f614fdf64bd327a24f567212d01f037e \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a_n_a_stream__coll__graph.png b/docs/structed247_1_1xml_1_1_a_n_a_stream__coll__graph.png new file mode 100644 index 00000000..831ba290 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_a_n_a_stream__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_a_n_a_stream__inherit__graph.map b/docs/structed247_1_1xml_1_1_a_n_a_stream__inherit__graph.map new file mode 100644 index 00000000..73e1ed4a --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_stream__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1xml_1_1_a_n_a_stream__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_a_n_a_stream__inherit__graph.md5 new file mode 100644 index 00000000..fa7b7822 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_a_n_a_stream__inherit__graph.md5 @@ -0,0 +1 @@ +2a10bfdf39eb48f9f61617dd50808776 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_a_n_a_stream__inherit__graph.png b/docs/structed247_1_1xml_1_1_a_n_a_stream__inherit__graph.png new file mode 100644 index 00000000..963e533d Binary files /dev/null and b/docs/structed247_1_1xml_1_1_a_n_a_stream__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_channel.html b/docs/structed247_1_1xml_1_1_channel.html new file mode 100644 index 00000000..ca68cca8 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_channel.html @@ -0,0 +1,183 @@ + + + + + + +ED247 Library: ed247::xml::Channel Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::Channel Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::Channel:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::xml::Channel:
+
+
Collaboration graph
+ + + + + +
+ + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+ + + + + + + + + + + + + + + +

+Data Fields

+std::string _name
 
+std::string _comment
 
+ed247_standard_t _frame_standard_revision
 
+ComInterface _com_interface
 
+Header _header
 
+std::vector< std::unique_ptr< Stream > > _stream_list
 
+bool _is_simple_channel
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_channel.js b/docs/structed247_1_1xml_1_1_channel.js new file mode 100644 index 00000000..10da1463 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_channel.js @@ -0,0 +1,12 @@ +var structed247_1_1xml_1_1_channel = +[ + [ "Channel", "structed247_1_1xml_1_1_channel.html#a5f233a69b619ce5fbd6f83bed32036be", null ], + [ "load", "structed247_1_1xml_1_1_channel.html#acfac7dd3740ab02c91a1f566fcaa1e50", null ], + [ "_name", "structed247_1_1xml_1_1_channel.html#a130a206c4e719f051fee5a23dae58083", null ], + [ "_comment", "structed247_1_1xml_1_1_channel.html#ab884b38f0d52f1557f25d757eb685813", null ], + [ "_frame_standard_revision", "structed247_1_1xml_1_1_channel.html#a7c2cb85dfd4c9a2276bf28eba7a72b57", null ], + [ "_com_interface", "structed247_1_1xml_1_1_channel.html#a473050f55f272af5af40cc99444c3c5d", null ], + [ "_header", "structed247_1_1xml_1_1_channel.html#af0932abea5be563cbde8e7fcbf0786bf", null ], + [ "_stream_list", "structed247_1_1xml_1_1_channel.html#af6427a83027826bbf565b3fba8ad3bab", null ], + [ "_is_simple_channel", "structed247_1_1xml_1_1_channel.html#aef69f9cd4da3bad277860cc85cdc83c0", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_channel__coll__graph.map b/docs/structed247_1_1xml_1_1_channel__coll__graph.map new file mode 100644 index 00000000..77e03ca6 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_channel__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1xml_1_1_channel__coll__graph.md5 b/docs/structed247_1_1xml_1_1_channel__coll__graph.md5 new file mode 100644 index 00000000..48877fce --- /dev/null +++ b/docs/structed247_1_1xml_1_1_channel__coll__graph.md5 @@ -0,0 +1 @@ +489f3bea2017674bf53b8cc62974febf \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_channel__coll__graph.png b/docs/structed247_1_1xml_1_1_channel__coll__graph.png new file mode 100644 index 00000000..0db4b689 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_channel__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_channel__inherit__graph.map b/docs/structed247_1_1xml_1_1_channel__inherit__graph.map new file mode 100644 index 00000000..fd8fdaa2 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_channel__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_channel__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_channel__inherit__graph.md5 new file mode 100644 index 00000000..f0395ad0 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_channel__inherit__graph.md5 @@ -0,0 +1 @@ +08f01c8caf5d4ce7ff3b3db95e65f931 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_channel__inherit__graph.png b/docs/structed247_1_1xml_1_1_channel__inherit__graph.png new file mode 100644 index 00000000..3b7efe65 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_channel__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_com_interface.html b/docs/structed247_1_1xml_1_1_com_interface.html new file mode 100644 index 00000000..3941a80a --- /dev/null +++ b/docs/structed247_1_1xml_1_1_com_interface.html @@ -0,0 +1,163 @@ + + + + + + +ED247 Library: ed247::xml::ComInterface Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::ComInterface Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::ComInterface:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::xml::ComInterface:
+
+
Collaboration graph
+ + + +
+ + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+ + + +

+Data Fields

+std::vector< UdpSocket_udp_sockets
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_com_interface.js b/docs/structed247_1_1xml_1_1_com_interface.js new file mode 100644 index 00000000..4cbd5b54 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_com_interface.js @@ -0,0 +1,5 @@ +var structed247_1_1xml_1_1_com_interface = +[ + [ "load", "structed247_1_1xml_1_1_com_interface.html#a20cacf09338f472ee28cd4d19c2eb0b4", null ], + [ "_udp_sockets", "structed247_1_1xml_1_1_com_interface.html#a516a5ea912d8a26594fd3347849835f8", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_com_interface__coll__graph.map b/docs/structed247_1_1xml_1_1_com_interface__coll__graph.map new file mode 100644 index 00000000..0ebf96de --- /dev/null +++ b/docs/structed247_1_1xml_1_1_com_interface__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_com_interface__coll__graph.md5 b/docs/structed247_1_1xml_1_1_com_interface__coll__graph.md5 new file mode 100644 index 00000000..10c48401 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_com_interface__coll__graph.md5 @@ -0,0 +1 @@ +bf40e40e4bf62701cb4429c5bd848020 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_com_interface__coll__graph.png b/docs/structed247_1_1xml_1_1_com_interface__coll__graph.png new file mode 100644 index 00000000..eaab9069 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_com_interface__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_com_interface__inherit__graph.map b/docs/structed247_1_1xml_1_1_com_interface__inherit__graph.map new file mode 100644 index 00000000..1ed52973 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_com_interface__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_com_interface__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_com_interface__inherit__graph.md5 new file mode 100644 index 00000000..5bbb4394 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_com_interface__inherit__graph.md5 @@ -0,0 +1 @@ +d6aa057a2dca655e3ac2c494b4cd32cf \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_com_interface__inherit__graph.png b/docs/structed247_1_1xml_1_1_com_interface__inherit__graph.png new file mode 100644 index 00000000..fe9db9e2 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_com_interface__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_component.html b/docs/structed247_1_1xml_1_1_component.html new file mode 100644 index 00000000..04f82caa --- /dev/null +++ b/docs/structed247_1_1xml_1_1_component.html @@ -0,0 +1,187 @@ + + + + + + +ED247 Library: ed247::xml::Component Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::Component Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::Component:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::xml::Component:
+
+
Collaboration graph
+ + + +
+ + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+ + + + + + + + + + + + + + + + + + + +

+Data Fields

+ed247_uid_t _identifier
 
+std::string _name
 
+std::string _version
 
+ed247_component_type_t _component_type
 
+ed247_standard_t _standard_revision
 
+std::string _comment
 
+std::string _file_producer_identifier
 
+std::string _file_producer_comment
 
+std::vector< Channel_channel_list
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_component.js b/docs/structed247_1_1xml_1_1_component.js new file mode 100644 index 00000000..626ec9dd --- /dev/null +++ b/docs/structed247_1_1xml_1_1_component.js @@ -0,0 +1,14 @@ +var structed247_1_1xml_1_1_component = +[ + [ "Component", "structed247_1_1xml_1_1_component.html#a91e1d7ffe206b5343eb139f9831b4a9b", null ], + [ "load", "structed247_1_1xml_1_1_component.html#af63583e121ccb29acd831f0a4904c2da", null ], + [ "_identifier", "structed247_1_1xml_1_1_component.html#a8a1ced30c09b411df80ca953fdf5dd5c", null ], + [ "_name", "structed247_1_1xml_1_1_component.html#a32601d0e87602b8f203e4faf0efac95b", null ], + [ "_version", "structed247_1_1xml_1_1_component.html#ab911347c36911d21f7baee5723b1a1cb", null ], + [ "_component_type", "structed247_1_1xml_1_1_component.html#acead3684e383f98403afaa85b75e0a8e", null ], + [ "_standard_revision", "structed247_1_1xml_1_1_component.html#aac4c579d466064da9767fc5aa82431fb", null ], + [ "_comment", "structed247_1_1xml_1_1_component.html#a968a1b7db05476e42ec1040a83da529d", null ], + [ "_file_producer_identifier", "structed247_1_1xml_1_1_component.html#a0f4ffb9a956807418d6a5c07f07baf64", null ], + [ "_file_producer_comment", "structed247_1_1xml_1_1_component.html#aa285e055f5f4a3073db2dd81442f0de3", null ], + [ "_channel_list", "structed247_1_1xml_1_1_component.html#a935a2b2929b22d13bfc7befb52dbe0fe", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_component__coll__graph.map b/docs/structed247_1_1xml_1_1_component__coll__graph.map new file mode 100644 index 00000000..5f70f24b --- /dev/null +++ b/docs/structed247_1_1xml_1_1_component__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_component__coll__graph.md5 b/docs/structed247_1_1xml_1_1_component__coll__graph.md5 new file mode 100644 index 00000000..30beb770 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_component__coll__graph.md5 @@ -0,0 +1 @@ +124c6439541e56d303cfa4c1098c9dcf \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_component__coll__graph.png b/docs/structed247_1_1xml_1_1_component__coll__graph.png new file mode 100644 index 00000000..dd6d01b7 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_component__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_component__inherit__graph.map b/docs/structed247_1_1xml_1_1_component__inherit__graph.map new file mode 100644 index 00000000..b21fc83f --- /dev/null +++ b/docs/structed247_1_1xml_1_1_component__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_component__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_component__inherit__graph.md5 new file mode 100644 index 00000000..0377d11f --- /dev/null +++ b/docs/structed247_1_1xml_1_1_component__inherit__graph.md5 @@ -0,0 +1 @@ +c27085b639fdb20ea11c050908e72df9 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_component__inherit__graph.png b/docs/structed247_1_1xml_1_1_component__inherit__graph.png new file mode 100644 index 00000000..8a45c4e7 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_component__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_d_i_s_signal.html b/docs/structed247_1_1xml_1_1_d_i_s_signal.html new file mode 100644 index 00000000..efeef559 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_signal.html @@ -0,0 +1,209 @@ + + + + + + +ED247 Library: ed247::xml::DISSignal Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::DISSignal Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::DISSignal:
+
+
Inheritance graph
+ + + + +
+
+Collaboration diagram for ed247::xml::DISSignal:
+
+
Collaboration graph
+ + + + +
+ + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
- Public Member Functions inherited from ed247::xml::Signal
+uint32_t get_sample_max_size_bytes () const
 
+uint32_t get_nad_type_size () const
 
Signal (ed247_signal_type_t type)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from ed247::xml::Signal
+static uint32_t get_nad_type_size (ed247_nad_type_t nad_type)
 
- Data Fields inherited from ed247::xml::Signal
+std::string _name
 
+ed247_signal_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+uint32_t _byte_offset
 
+std::string _analogue_electrical_unit
 
+ed247_nad_type_t _nad_type
 
+std::string _nad_unit
 
+std::vector< uint32_t > _nad_dimensions
 
+uint32_t _vnad_position
 
+uint32_t _vnad_max_number
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_d_i_s_signal.js b/docs/structed247_1_1xml_1_1_d_i_s_signal.js new file mode 100644 index 00000000..6011eda3 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_signal.js @@ -0,0 +1,5 @@ +var structed247_1_1xml_1_1_d_i_s_signal = +[ + [ "DISSignal", "structed247_1_1xml_1_1_d_i_s_signal.html#a308a12694702750499d92bdfbd686e82", null ], + [ "load", "structed247_1_1xml_1_1_d_i_s_signal.html#ad1c53ed2578636e67751acb64b0039d0", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_d_i_s_signal__coll__graph.map b/docs/structed247_1_1xml_1_1_d_i_s_signal__coll__graph.map new file mode 100644 index 00000000..e588be4d --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_signal__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247_1_1xml_1_1_d_i_s_signal__coll__graph.md5 b/docs/structed247_1_1xml_1_1_d_i_s_signal__coll__graph.md5 new file mode 100644 index 00000000..dc95b068 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_signal__coll__graph.md5 @@ -0,0 +1 @@ +702a5345a7e86c9eb0ab0e49d53bbd5d \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_d_i_s_signal__coll__graph.png b/docs/structed247_1_1xml_1_1_d_i_s_signal__coll__graph.png new file mode 100644 index 00000000..eb3550b4 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_d_i_s_signal__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_d_i_s_signal__inherit__graph.map b/docs/structed247_1_1xml_1_1_d_i_s_signal__inherit__graph.map new file mode 100644 index 00000000..56ac59e9 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_signal__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247_1_1xml_1_1_d_i_s_signal__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_d_i_s_signal__inherit__graph.md5 new file mode 100644 index 00000000..bcc5bea7 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_signal__inherit__graph.md5 @@ -0,0 +1 @@ +0e6799ecdc66753a1e834929b6e177fa \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_d_i_s_signal__inherit__graph.png b/docs/structed247_1_1xml_1_1_d_i_s_signal__inherit__graph.png new file mode 100644 index 00000000..571e728e Binary files /dev/null and b/docs/structed247_1_1xml_1_1_d_i_s_signal__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_d_i_s_stream.html b/docs/structed247_1_1xml_1_1_d_i_s_stream.html new file mode 100644 index 00000000..08f33d8f --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_stream.html @@ -0,0 +1,216 @@ + + + + + + +ED247 Library: ed247::xml::DISStream Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::DISStream Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::DISStream:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::xml::DISStream:
+
+
Collaboration graph
+ + + + + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+virtual void validate (const xmlNodePtr closest_node) override final
 
- Public Member Functions inherited from ed247::xml::StreamSignals
+virtual bool is_signal_based () const override final
 
StreamSignals (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed=true)
 
- Public Member Functions inherited from ed247::xml::Stream
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Data Fields inherited from ed247::xml::StreamSignals
+std::vector< std::unique_ptr< Signal > > _signal_list
 
+uint32_t _sampling_period_us
 
- Data Fields inherited from ed247::xml::Stream
+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_d_i_s_stream.js b/docs/structed247_1_1xml_1_1_d_i_s_stream.js new file mode 100644 index 00000000..bd526e25 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_stream.js @@ -0,0 +1,6 @@ +var structed247_1_1xml_1_1_d_i_s_stream = +[ + [ "DISStream", "structed247_1_1xml_1_1_d_i_s_stream.html#a91c393ee77492ca78d25e7ac71894842", null ], + [ "load", "structed247_1_1xml_1_1_d_i_s_stream.html#a45fa3761328b6b1f0256944f42bb59c8", null ], + [ "validate", "structed247_1_1xml_1_1_d_i_s_stream.html#a9a912e644d2cbadc4295e6f2b926758f", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_d_i_s_stream__coll__graph.map b/docs/structed247_1_1xml_1_1_d_i_s_stream__coll__graph.map new file mode 100644 index 00000000..2a0042d0 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_stream__coll__graph.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/structed247_1_1xml_1_1_d_i_s_stream__coll__graph.md5 b/docs/structed247_1_1xml_1_1_d_i_s_stream__coll__graph.md5 new file mode 100644 index 00000000..12a93f01 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_stream__coll__graph.md5 @@ -0,0 +1 @@ +8b4d245bd478b1b0eaef98b3dfe6c104 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_d_i_s_stream__coll__graph.png b/docs/structed247_1_1xml_1_1_d_i_s_stream__coll__graph.png new file mode 100644 index 00000000..5d332595 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_d_i_s_stream__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_d_i_s_stream__inherit__graph.map b/docs/structed247_1_1xml_1_1_d_i_s_stream__inherit__graph.map new file mode 100644 index 00000000..2578bd6d --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_stream__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1xml_1_1_d_i_s_stream__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_d_i_s_stream__inherit__graph.md5 new file mode 100644 index 00000000..a1c78021 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_d_i_s_stream__inherit__graph.md5 @@ -0,0 +1 @@ +60813766f7193e5960a5a79f310f7509 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_d_i_s_stream__inherit__graph.png b/docs/structed247_1_1xml_1_1_d_i_s_stream__inherit__graph.png new file mode 100644 index 00000000..83464e9d Binary files /dev/null and b/docs/structed247_1_1xml_1_1_d_i_s_stream__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_data_timestamp.html b/docs/structed247_1_1xml_1_1_data_timestamp.html new file mode 100644 index 00000000..f245a377 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_data_timestamp.html @@ -0,0 +1,166 @@ + + + + + + +ED247 Library: ed247::xml::DataTimestamp Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::DataTimestamp Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::DataTimestamp:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::xml::DataTimestamp:
+
+
Collaboration graph
+ + + +
+ + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+ + + + + +

+Data Fields

+ed247_yesno_t _enable
 
+ed247_yesno_t _enable_sample_offset
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_data_timestamp.js b/docs/structed247_1_1xml_1_1_data_timestamp.js new file mode 100644 index 00000000..7eff71e7 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_data_timestamp.js @@ -0,0 +1,7 @@ +var structed247_1_1xml_1_1_data_timestamp = +[ + [ "DataTimestamp", "structed247_1_1xml_1_1_data_timestamp.html#a96e5f032e57b31b8769f23ccde213a46", null ], + [ "load", "structed247_1_1xml_1_1_data_timestamp.html#a6261fce233d08682495a4be559e18a32", null ], + [ "_enable", "structed247_1_1xml_1_1_data_timestamp.html#ab973a73e5da87ac2f390c617cbcaeec7", null ], + [ "_enable_sample_offset", "structed247_1_1xml_1_1_data_timestamp.html#abae3aef689116142c768f2b76a0b6fab", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_data_timestamp__coll__graph.map b/docs/structed247_1_1xml_1_1_data_timestamp__coll__graph.map new file mode 100644 index 00000000..f6259ea4 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_data_timestamp__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_data_timestamp__coll__graph.md5 b/docs/structed247_1_1xml_1_1_data_timestamp__coll__graph.md5 new file mode 100644 index 00000000..3e6b9a0f --- /dev/null +++ b/docs/structed247_1_1xml_1_1_data_timestamp__coll__graph.md5 @@ -0,0 +1 @@ +19e55d4c57ddd8c9a4c790e11003a666 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_data_timestamp__coll__graph.png b/docs/structed247_1_1xml_1_1_data_timestamp__coll__graph.png new file mode 100644 index 00000000..73089822 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_data_timestamp__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_data_timestamp__inherit__graph.map b/docs/structed247_1_1xml_1_1_data_timestamp__inherit__graph.map new file mode 100644 index 00000000..fd82de65 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_data_timestamp__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_data_timestamp__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_data_timestamp__inherit__graph.md5 new file mode 100644 index 00000000..235b37c8 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_data_timestamp__inherit__graph.md5 @@ -0,0 +1 @@ +26741300b0a2710cc32d5b8604659e12 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_data_timestamp__inherit__graph.png b/docs/structed247_1_1xml_1_1_data_timestamp__inherit__graph.png new file mode 100644 index 00000000..421c9a2b Binary files /dev/null and b/docs/structed247_1_1xml_1_1_data_timestamp__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_e_t_h_stream.html b/docs/structed247_1_1xml_1_1_e_t_h_stream.html new file mode 100644 index 00000000..86e0eb96 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_e_t_h_stream.html @@ -0,0 +1,221 @@ + + + + + + +ED247 Library: ed247::xml::ETHStream Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::ETHStream Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::ETHStream:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::xml::ETHStream:
+
+
Collaboration graph
+ + + + + + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+virtual void validate (const xmlNodePtr closest_node) override final
 
- Public Member Functions inherited from ed247::xml::StreamProtocoled
+virtual bool is_signal_based () const override final
 
StreamProtocoled (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed=false)
 
- Public Member Functions inherited from ed247::xml::Stream
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Fields

+ed247_yesno_t _enable_message_size
 
+std::string _layer
 
- Data Fields inherited from ed247::xml::StreamProtocoled
+Errors _errors
 
- Data Fields inherited from ed247::xml::Stream
+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_e_t_h_stream.js b/docs/structed247_1_1xml_1_1_e_t_h_stream.js new file mode 100644 index 00000000..fe68775e --- /dev/null +++ b/docs/structed247_1_1xml_1_1_e_t_h_stream.js @@ -0,0 +1,8 @@ +var structed247_1_1xml_1_1_e_t_h_stream = +[ + [ "ETHStream", "structed247_1_1xml_1_1_e_t_h_stream.html#a81b9a09272cb01e5697b2b6f6bfe91cc", null ], + [ "load", "structed247_1_1xml_1_1_e_t_h_stream.html#a01d6f86876d9df746a18887029aa3067", null ], + [ "validate", "structed247_1_1xml_1_1_e_t_h_stream.html#ab698e3467ddf35ce986bbd5fbd13ca78", null ], + [ "_enable_message_size", "structed247_1_1xml_1_1_e_t_h_stream.html#ac792c1efae5f9c5f93d54166efa4cabb", null ], + [ "_layer", "structed247_1_1xml_1_1_e_t_h_stream.html#a7d9df5906323dd84c51cf6cc550345ea", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_e_t_h_stream__coll__graph.map b/docs/structed247_1_1xml_1_1_e_t_h_stream__coll__graph.map new file mode 100644 index 00000000..d8587122 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_e_t_h_stream__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/structed247_1_1xml_1_1_e_t_h_stream__coll__graph.md5 b/docs/structed247_1_1xml_1_1_e_t_h_stream__coll__graph.md5 new file mode 100644 index 00000000..61d17cd7 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_e_t_h_stream__coll__graph.md5 @@ -0,0 +1 @@ +e22f816c7a23a3c636d312846074a6ca \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_e_t_h_stream__coll__graph.png b/docs/structed247_1_1xml_1_1_e_t_h_stream__coll__graph.png new file mode 100644 index 00000000..ba31256b Binary files /dev/null and b/docs/structed247_1_1xml_1_1_e_t_h_stream__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_e_t_h_stream__inherit__graph.map b/docs/structed247_1_1xml_1_1_e_t_h_stream__inherit__graph.map new file mode 100644 index 00000000..d40496e8 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_e_t_h_stream__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1xml_1_1_e_t_h_stream__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_e_t_h_stream__inherit__graph.md5 new file mode 100644 index 00000000..044c5d5d --- /dev/null +++ b/docs/structed247_1_1xml_1_1_e_t_h_stream__inherit__graph.md5 @@ -0,0 +1 @@ +d914743d8cbdec7ad74f2ad42db1d93b \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_e_t_h_stream__inherit__graph.png b/docs/structed247_1_1xml_1_1_e_t_h_stream__inherit__graph.png new file mode 100644 index 00000000..f18d0d52 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_e_t_h_stream__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_errors.html b/docs/structed247_1_1xml_1_1_errors.html new file mode 100644 index 00000000..968d0a2b --- /dev/null +++ b/docs/structed247_1_1xml_1_1_errors.html @@ -0,0 +1,163 @@ + + + + + + +ED247 Library: ed247::xml::Errors Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::Errors Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::Errors:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::xml::Errors:
+
+
Collaboration graph
+ + + +
+ + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+ + + +

+Data Fields

+ed247_yesno_t _enable
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_errors.js b/docs/structed247_1_1xml_1_1_errors.js new file mode 100644 index 00000000..d58a8718 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_errors.js @@ -0,0 +1,6 @@ +var structed247_1_1xml_1_1_errors = +[ + [ "Errors", "structed247_1_1xml_1_1_errors.html#a81d51b622467d2fb10c978225504c454", null ], + [ "load", "structed247_1_1xml_1_1_errors.html#a955b4cdbbc79dcf0e2886dd151a5580e", null ], + [ "_enable", "structed247_1_1xml_1_1_errors.html#ad0eb7eaf82cf84d5fa184b2afde0d7f7", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_errors__coll__graph.map b/docs/structed247_1_1xml_1_1_errors__coll__graph.map new file mode 100644 index 00000000..232b2059 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_errors__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_errors__coll__graph.md5 b/docs/structed247_1_1xml_1_1_errors__coll__graph.md5 new file mode 100644 index 00000000..28f0291e --- /dev/null +++ b/docs/structed247_1_1xml_1_1_errors__coll__graph.md5 @@ -0,0 +1 @@ +629ec8abd4c119829411eb645e1639ac \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_errors__coll__graph.png b/docs/structed247_1_1xml_1_1_errors__coll__graph.png new file mode 100644 index 00000000..b73a9f48 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_errors__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_errors__inherit__graph.map b/docs/structed247_1_1xml_1_1_errors__inherit__graph.map new file mode 100644 index 00000000..3a426ad6 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_errors__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_errors__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_errors__inherit__graph.md5 new file mode 100644 index 00000000..6e95ae26 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_errors__inherit__graph.md5 @@ -0,0 +1 @@ +b998f1c63a38b53ad38af843c08645c5 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_errors__inherit__graph.png b/docs/structed247_1_1xml_1_1_errors__inherit__graph.png new file mode 100644 index 00000000..fd79b7f9 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_errors__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_header.html b/docs/structed247_1_1xml_1_1_header.html new file mode 100644 index 00000000..c2445411 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_header.html @@ -0,0 +1,166 @@ + + + + + + +ED247 Library: ed247::xml::Header Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::Header Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::Header:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::xml::Header:
+
+
Collaboration graph
+ + + +
+ + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+ + + + + +

+Data Fields

+ed247_yesno_t _enable
 
+ed247_yesno_t _transport_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_header.js b/docs/structed247_1_1xml_1_1_header.js new file mode 100644 index 00000000..be5c021a --- /dev/null +++ b/docs/structed247_1_1xml_1_1_header.js @@ -0,0 +1,7 @@ +var structed247_1_1xml_1_1_header = +[ + [ "Header", "structed247_1_1xml_1_1_header.html#ae1f69adedd25ec69dbcd16f579c2b514", null ], + [ "load", "structed247_1_1xml_1_1_header.html#a0770ead66bdf928dae6ee0534344f85c", null ], + [ "_enable", "structed247_1_1xml_1_1_header.html#a7ccfc8f891e106ea3c6e0feaad65e198", null ], + [ "_transport_timestamp", "structed247_1_1xml_1_1_header.html#a440cdac4d9526e70594f0dddb4fc2e5f", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_header__coll__graph.map b/docs/structed247_1_1xml_1_1_header__coll__graph.map new file mode 100644 index 00000000..72495525 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_header__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_header__coll__graph.md5 b/docs/structed247_1_1xml_1_1_header__coll__graph.md5 new file mode 100644 index 00000000..13569c41 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_header__coll__graph.md5 @@ -0,0 +1 @@ +0c02c4e073add391a8d3a2df6e022241 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_header__coll__graph.png b/docs/structed247_1_1xml_1_1_header__coll__graph.png new file mode 100644 index 00000000..91795bd9 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_header__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_header__inherit__graph.map b/docs/structed247_1_1xml_1_1_header__inherit__graph.map new file mode 100644 index 00000000..18324ab6 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_header__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_header__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_header__inherit__graph.md5 new file mode 100644 index 00000000..bafb4758 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_header__inherit__graph.md5 @@ -0,0 +1 @@ +ecca1ea4088598827e93a9711e510cd6 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_header__inherit__graph.png b/docs/structed247_1_1xml_1_1_header__inherit__graph.png new file mode 100644 index 00000000..f6979509 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_header__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_n_a_d_signal.html b/docs/structed247_1_1xml_1_1_n_a_d_signal.html new file mode 100644 index 00000000..204d0bc7 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_signal.html @@ -0,0 +1,209 @@ + + + + + + +ED247 Library: ed247::xml::NADSignal Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::NADSignal Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::NADSignal:
+
+
Inheritance graph
+ + + + +
+
+Collaboration diagram for ed247::xml::NADSignal:
+
+
Collaboration graph
+ + + + +
+ + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
- Public Member Functions inherited from ed247::xml::Signal
+uint32_t get_sample_max_size_bytes () const
 
+uint32_t get_nad_type_size () const
 
Signal (ed247_signal_type_t type)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from ed247::xml::Signal
+static uint32_t get_nad_type_size (ed247_nad_type_t nad_type)
 
- Data Fields inherited from ed247::xml::Signal
+std::string _name
 
+ed247_signal_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+uint32_t _byte_offset
 
+std::string _analogue_electrical_unit
 
+ed247_nad_type_t _nad_type
 
+std::string _nad_unit
 
+std::vector< uint32_t > _nad_dimensions
 
+uint32_t _vnad_position
 
+uint32_t _vnad_max_number
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_n_a_d_signal.js b/docs/structed247_1_1xml_1_1_n_a_d_signal.js new file mode 100644 index 00000000..615f2857 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_signal.js @@ -0,0 +1,5 @@ +var structed247_1_1xml_1_1_n_a_d_signal = +[ + [ "NADSignal", "structed247_1_1xml_1_1_n_a_d_signal.html#a9c4dc825ff9fa340603b1c1013ee788f", null ], + [ "load", "structed247_1_1xml_1_1_n_a_d_signal.html#a0ace94b0c698ed3aaf42d18070dcbd35", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_n_a_d_signal__coll__graph.map b/docs/structed247_1_1xml_1_1_n_a_d_signal__coll__graph.map new file mode 100644 index 00000000..1a0d087a --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_signal__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247_1_1xml_1_1_n_a_d_signal__coll__graph.md5 b/docs/structed247_1_1xml_1_1_n_a_d_signal__coll__graph.md5 new file mode 100644 index 00000000..420b661b --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_signal__coll__graph.md5 @@ -0,0 +1 @@ +7b5c8d4151f4d533fd68881cf0ce69b4 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_n_a_d_signal__coll__graph.png b/docs/structed247_1_1xml_1_1_n_a_d_signal__coll__graph.png new file mode 100644 index 00000000..bb79f54f Binary files /dev/null and b/docs/structed247_1_1xml_1_1_n_a_d_signal__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_n_a_d_signal__inherit__graph.map b/docs/structed247_1_1xml_1_1_n_a_d_signal__inherit__graph.map new file mode 100644 index 00000000..d645593a --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_signal__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247_1_1xml_1_1_n_a_d_signal__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_n_a_d_signal__inherit__graph.md5 new file mode 100644 index 00000000..9c50de63 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_signal__inherit__graph.md5 @@ -0,0 +1 @@ +04e891efb3eee947552d74aee382f15f \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_n_a_d_signal__inherit__graph.png b/docs/structed247_1_1xml_1_1_n_a_d_signal__inherit__graph.png new file mode 100644 index 00000000..dbc16974 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_n_a_d_signal__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_n_a_d_stream.html b/docs/structed247_1_1xml_1_1_n_a_d_stream.html new file mode 100644 index 00000000..5322310e --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_stream.html @@ -0,0 +1,216 @@ + + + + + + +ED247 Library: ed247::xml::NADStream Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::NADStream Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::NADStream:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::xml::NADStream:
+
+
Collaboration graph
+ + + + + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+virtual void validate (const xmlNodePtr closest_node) override final
 
- Public Member Functions inherited from ed247::xml::StreamSignals
+virtual bool is_signal_based () const override final
 
StreamSignals (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed=true)
 
- Public Member Functions inherited from ed247::xml::Stream
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Data Fields inherited from ed247::xml::StreamSignals
+std::vector< std::unique_ptr< Signal > > _signal_list
 
+uint32_t _sampling_period_us
 
- Data Fields inherited from ed247::xml::Stream
+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_n_a_d_stream.js b/docs/structed247_1_1xml_1_1_n_a_d_stream.js new file mode 100644 index 00000000..4dc97171 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_stream.js @@ -0,0 +1,6 @@ +var structed247_1_1xml_1_1_n_a_d_stream = +[ + [ "NADStream", "structed247_1_1xml_1_1_n_a_d_stream.html#a918c1c92ee110ea3f75e5a525a6366c6", null ], + [ "load", "structed247_1_1xml_1_1_n_a_d_stream.html#a6ce8040b6e8680aca733d02efbb578f8", null ], + [ "validate", "structed247_1_1xml_1_1_n_a_d_stream.html#aa94df0ad2eb3f408b3aeb0219ebc4d86", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_n_a_d_stream__coll__graph.map b/docs/structed247_1_1xml_1_1_n_a_d_stream__coll__graph.map new file mode 100644 index 00000000..5d647072 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_stream__coll__graph.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/structed247_1_1xml_1_1_n_a_d_stream__coll__graph.md5 b/docs/structed247_1_1xml_1_1_n_a_d_stream__coll__graph.md5 new file mode 100644 index 00000000..56ae9ec7 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_stream__coll__graph.md5 @@ -0,0 +1 @@ +ed4da11cc9275ef76344ed7a490cbeef \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_n_a_d_stream__coll__graph.png b/docs/structed247_1_1xml_1_1_n_a_d_stream__coll__graph.png new file mode 100644 index 00000000..40d2e71d Binary files /dev/null and b/docs/structed247_1_1xml_1_1_n_a_d_stream__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_n_a_d_stream__inherit__graph.map b/docs/structed247_1_1xml_1_1_n_a_d_stream__inherit__graph.map new file mode 100644 index 00000000..17a8bc33 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_stream__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1xml_1_1_n_a_d_stream__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_n_a_d_stream__inherit__graph.md5 new file mode 100644 index 00000000..f780e619 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_n_a_d_stream__inherit__graph.md5 @@ -0,0 +1 @@ +0d25de716e38eb9bba794966bae31289 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_n_a_d_stream__inherit__graph.png b/docs/structed247_1_1xml_1_1_n_a_d_stream__inherit__graph.png new file mode 100644 index 00000000..3258335e Binary files /dev/null and b/docs/structed247_1_1xml_1_1_n_a_d_stream__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_node.html b/docs/structed247_1_1xml_1_1_node.html new file mode 100644 index 00000000..1f52cf96 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_node.html @@ -0,0 +1,175 @@ + + + + + + +ED247 Library: ed247::xml::Node Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::Node Struct Referenceabstract
+
+
+
+Inheritance diagram for ed247::xml::Node:
+
+
Inheritance graph
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+Collaboration diagram for ed247::xml::Node:
+
+
Collaboration graph
+
+ + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node)=0
 
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_node.js b/docs/structed247_1_1xml_1_1_node.js new file mode 100644 index 00000000..61d35d35 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_node.js @@ -0,0 +1,4 @@ +var structed247_1_1xml_1_1_node = +[ + [ "load", "structed247_1_1xml_1_1_node.html#a702a8d58f756cbeaf095d759b4527b25", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_node__coll__graph.map b/docs/structed247_1_1xml_1_1_node__coll__graph.map new file mode 100644 index 00000000..d5e62c62 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_node__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247_1_1xml_1_1_node__coll__graph.md5 b/docs/structed247_1_1xml_1_1_node__coll__graph.md5 new file mode 100644 index 00000000..164039d0 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_node__coll__graph.md5 @@ -0,0 +1 @@ +5353d87e0f67ba5eab0a62f93a45c8ba \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_node__coll__graph.png b/docs/structed247_1_1xml_1_1_node__coll__graph.png new file mode 100644 index 00000000..69990f6f Binary files /dev/null and b/docs/structed247_1_1xml_1_1_node__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_node__inherit__graph.map b/docs/structed247_1_1xml_1_1_node__inherit__graph.map new file mode 100644 index 00000000..148461d6 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_node__inherit__graph.map @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/structed247_1_1xml_1_1_node__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_node__inherit__graph.md5 new file mode 100644 index 00000000..528eac56 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_node__inherit__graph.md5 @@ -0,0 +1 @@ +e31aa66295d7667ef16a3dd21572b1c3 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_node__inherit__graph.png b/docs/structed247_1_1xml_1_1_node__inherit__graph.png new file mode 100644 index 00000000..e79507c8 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_node__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream.html b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream.html new file mode 100644 index 00000000..f4a9788c --- /dev/null +++ b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream.html @@ -0,0 +1,214 @@ + + + + + + +ED247 Library: ed247::xml::SERIALStream Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::SERIALStream Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::SERIALStream:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::xml::SERIALStream:
+
+
Collaboration graph
+ + + + + + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+virtual void validate (const xmlNodePtr closest_node) override final
 
- Public Member Functions inherited from ed247::xml::StreamProtocoled
+virtual bool is_signal_based () const override final
 
StreamProtocoled (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed=false)
 
- Public Member Functions inherited from ed247::xml::Stream
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Data Fields inherited from ed247::xml::StreamProtocoled
+Errors _errors
 
- Data Fields inherited from ed247::xml::Stream
+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream.js b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream.js new file mode 100644 index 00000000..8a57b3c2 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream.js @@ -0,0 +1,6 @@ +var structed247_1_1xml_1_1_s_e_r_i_a_l_stream = +[ + [ "SERIALStream", "structed247_1_1xml_1_1_s_e_r_i_a_l_stream.html#aa93ab83afe6aea36abb9789e0a402d21", null ], + [ "load", "structed247_1_1xml_1_1_s_e_r_i_a_l_stream.html#aa63db017de2a886d5c293bcd376418c9", null ], + [ "validate", "structed247_1_1xml_1_1_s_e_r_i_a_l_stream.html#ab843692c46c60d501e3fa59c304935ec", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__coll__graph.map b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__coll__graph.map new file mode 100644 index 00000000..d62648a6 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__coll__graph.md5 b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__coll__graph.md5 new file mode 100644 index 00000000..57ab3737 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__coll__graph.md5 @@ -0,0 +1 @@ +67533f30cfa7e2efc9d4f356f7fbeb95 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__coll__graph.png b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__coll__graph.png new file mode 100644 index 00000000..dd7040ea Binary files /dev/null and b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__inherit__graph.map b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__inherit__graph.map new file mode 100644 index 00000000..c79462ea --- /dev/null +++ b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__inherit__graph.md5 new file mode 100644 index 00000000..929c93cd --- /dev/null +++ b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__inherit__graph.md5 @@ -0,0 +1 @@ +79604adad4de189219ca81b6d2492fea \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__inherit__graph.png b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__inherit__graph.png new file mode 100644 index 00000000..f84aed7e Binary files /dev/null and b/docs/structed247_1_1xml_1_1_s_e_r_i_a_l_stream__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_signal.html b/docs/structed247_1_1xml_1_1_signal.html new file mode 100644 index 00000000..978b20ad --- /dev/null +++ b/docs/structed247_1_1xml_1_1_signal.html @@ -0,0 +1,214 @@ + + + + + + +ED247 Library: ed247::xml::Signal Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::Signal Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::Signal:
+
+
Inheritance graph
+ + + + + + + +
+
+Collaboration diagram for ed247::xml::Signal:
+
+
Collaboration graph
+ + + +
+ + + + + + + + + + + +

+Public Member Functions

+uint32_t get_sample_max_size_bytes () const
 
+uint32_t get_nad_type_size () const
 
Signal (ed247_signal_type_t type)
 
- Public Member Functions inherited from ed247::xml::Node
+virtual void load (const xmlNodePtr xml_node)=0
 
+ + + +

+Static Public Member Functions

+static uint32_t get_nad_type_size (ed247_nad_type_t nad_type)
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Data Fields

+std::string _name
 
+ed247_signal_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+uint32_t _byte_offset
 
+std::string _analogue_electrical_unit
 
+ed247_nad_type_t _nad_type
 
+std::string _nad_unit
 
+std::vector< uint32_t > _nad_dimensions
 
+uint32_t _vnad_position
 
+uint32_t _vnad_max_number
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_signal.js b/docs/structed247_1_1xml_1_1_signal.js new file mode 100644 index 00000000..c9e90c82 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_signal.js @@ -0,0 +1,18 @@ +var structed247_1_1xml_1_1_signal = +[ + [ "Signal", "structed247_1_1xml_1_1_signal.html#a895ec91489a150ac812450781924e28f", null ], + [ "~Signal", "structed247_1_1xml_1_1_signal.html#a36394ed006439e0bf0415b763bf65be0", null ], + [ "get_sample_max_size_bytes", "structed247_1_1xml_1_1_signal.html#a5e35afdc155d7b9f8e22b23768123171", null ], + [ "get_nad_type_size", "structed247_1_1xml_1_1_signal.html#abad8dadb0b6c2058b922032fa96eedd3", null ], + [ "_name", "structed247_1_1xml_1_1_signal.html#a11267b595c35c06b7a04ed1f96ba17e8", null ], + [ "_type", "structed247_1_1xml_1_1_signal.html#acbd24f1cd7b2eb051f49e3654a2d1a1c", null ], + [ "_comment", "structed247_1_1xml_1_1_signal.html#a4a20db8a6a12211e067d5914dcf19ff4", null ], + [ "_icd", "structed247_1_1xml_1_1_signal.html#a397a16f1cbd984af076a23ff086b4251", null ], + [ "_byte_offset", "structed247_1_1xml_1_1_signal.html#a8e2dd35fa1c948ec395b35b25e0d709e", null ], + [ "_analogue_electrical_unit", "structed247_1_1xml_1_1_signal.html#a9df1f93c420039fb73ea5665a6df267a", null ], + [ "_nad_type", "structed247_1_1xml_1_1_signal.html#a1c84adf54e859c71db3c74729a8713c4", null ], + [ "_nad_unit", "structed247_1_1xml_1_1_signal.html#a4bc0259368e4ceb07ee01f66f4cd7114", null ], + [ "_nad_dimensions", "structed247_1_1xml_1_1_signal.html#a1c1770645b0f938c60aef3a9f5108353", null ], + [ "_vnad_position", "structed247_1_1xml_1_1_signal.html#ae3006f38a19462afddead5f570533d58", null ], + [ "_vnad_max_number", "structed247_1_1xml_1_1_signal.html#ae298b496b467ca04b47161daf7ce41ef", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_signal__coll__graph.map b/docs/structed247_1_1xml_1_1_signal__coll__graph.map new file mode 100644 index 00000000..dc92762b --- /dev/null +++ b/docs/structed247_1_1xml_1_1_signal__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_signal__coll__graph.md5 b/docs/structed247_1_1xml_1_1_signal__coll__graph.md5 new file mode 100644 index 00000000..40d38e46 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_signal__coll__graph.md5 @@ -0,0 +1 @@ +01440f1b76c165fb53faac3939601ee9 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_signal__coll__graph.png b/docs/structed247_1_1xml_1_1_signal__coll__graph.png new file mode 100644 index 00000000..186a3b4d Binary files /dev/null and b/docs/structed247_1_1xml_1_1_signal__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_signal__inherit__graph.map b/docs/structed247_1_1xml_1_1_signal__inherit__graph.map new file mode 100644 index 00000000..bdedd6bf --- /dev/null +++ b/docs/structed247_1_1xml_1_1_signal__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/structed247_1_1xml_1_1_signal__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_signal__inherit__graph.md5 new file mode 100644 index 00000000..95a53563 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_signal__inherit__graph.md5 @@ -0,0 +1 @@ +6db73331cc68588b335a05ef2f8c0e2d \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_signal__inherit__graph.png b/docs/structed247_1_1xml_1_1_signal__inherit__graph.png new file mode 100644 index 00000000..7278b9a2 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_signal__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_stream.html b/docs/structed247_1_1xml_1_1_stream.html new file mode 100644 index 00000000..a78679c8 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream.html @@ -0,0 +1,212 @@ + + + + + + +ED247 Library: ed247::xml::Stream Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::Stream Struct Referenceabstract
+
+
+
+Inheritance diagram for ed247::xml::Stream:
+
+
Inheritance graph
+ + + + + + + + + + + + + + +
+
+Collaboration diagram for ed247::xml::Stream:
+
+
Collaboration graph
+ + + + +
+ + + + + + + + + + + +

+Public Member Functions

+virtual bool is_signal_based () const =0
 
+virtual void validate (const xmlNodePtr closest_node)=0
 
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
- Public Member Functions inherited from ed247::xml::Node
+virtual void load (const xmlNodePtr xml_node)=0
 
+ + + + + + + + + + + + + + + + + + + + + +

+Data Fields

+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_stream.js b/docs/structed247_1_1xml_1_1_stream.js new file mode 100644 index 00000000..53a71a54 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream.js @@ -0,0 +1,17 @@ +var structed247_1_1xml_1_1_stream = +[ + [ "Stream", "structed247_1_1xml_1_1_stream.html#a2bc3315297a117bd75905253e3f0c46d", null ], + [ "~Stream", "structed247_1_1xml_1_1_stream.html#a710842682d56ea38b8985c6f80a7ef38", null ], + [ "is_signal_based", "structed247_1_1xml_1_1_stream.html#ab7bec6b01832dfcfd35b6348a0cc5572", null ], + [ "validate", "structed247_1_1xml_1_1_stream.html#a7923b38f2e7090794cb11cd0a140c9bc", null ], + [ "_name", "structed247_1_1xml_1_1_stream.html#a05ca132eb82c8d6da870dfe0a56fbbeb", null ], + [ "_direction", "structed247_1_1xml_1_1_stream.html#a81392f8e54c88d3c8cc22467a9f36128", null ], + [ "_type", "structed247_1_1xml_1_1_stream.html#a626317d466487074551fb3941958850c", null ], + [ "_comment", "structed247_1_1xml_1_1_stream.html#a6f8b7d3fa379e6503e7a5ae97879d0b3", null ], + [ "_icd", "structed247_1_1xml_1_1_stream.html#a29eddfbc22a389ef6c0be66550c7e042", null ], + [ "_uid", "structed247_1_1xml_1_1_stream.html#a21d09d20de051736002e5d0d35c16a9a", null ], + [ "_sample_max_number", "structed247_1_1xml_1_1_stream.html#a76f908d31b76a82415666f9cfd077006", null ], + [ "_sample_max_size_bytes", "structed247_1_1xml_1_1_stream.html#abe1e187b4823bf028f505c140c951809", null ], + [ "_sample_size_fixed", "structed247_1_1xml_1_1_stream.html#adc589d6b59b5ddf013e024510834065b", null ], + [ "_data_timestamp", "structed247_1_1xml_1_1_stream.html#a8e49f5b19f4f670d47d7372bf1ed27bb", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_stream__coll__graph.map b/docs/structed247_1_1xml_1_1_stream__coll__graph.map new file mode 100644 index 00000000..34358b42 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247_1_1xml_1_1_stream__coll__graph.md5 b/docs/structed247_1_1xml_1_1_stream__coll__graph.md5 new file mode 100644 index 00000000..7a2a3f1a --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream__coll__graph.md5 @@ -0,0 +1 @@ +c61998ee112899b4a7700526f44d8176 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_stream__coll__graph.png b/docs/structed247_1_1xml_1_1_stream__coll__graph.png new file mode 100644 index 00000000..0e09e64c Binary files /dev/null and b/docs/structed247_1_1xml_1_1_stream__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_stream__inherit__graph.map b/docs/structed247_1_1xml_1_1_stream__inherit__graph.map new file mode 100644 index 00000000..30904de7 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream__inherit__graph.map @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/docs/structed247_1_1xml_1_1_stream__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_stream__inherit__graph.md5 new file mode 100644 index 00000000..0fb28a3b --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream__inherit__graph.md5 @@ -0,0 +1 @@ +a1bb45dbf1f8a9afa7ab122d3342522b \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_stream__inherit__graph.png b/docs/structed247_1_1xml_1_1_stream__inherit__graph.png new file mode 100644 index 00000000..6a6122c9 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_stream__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_stream_protocoled.html b/docs/structed247_1_1xml_1_1_stream_protocoled.html new file mode 100644 index 00000000..c8119da7 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_protocoled.html @@ -0,0 +1,217 @@ + + + + + + +ED247 Library: ed247::xml::StreamProtocoled Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::StreamProtocoled Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::StreamProtocoled:
+
+
Inheritance graph
+ + + + + + + + + +
+
+Collaboration diagram for ed247::xml::StreamProtocoled:
+
+
Collaboration graph
+ + + + + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

+virtual bool is_signal_based () const override final
 
StreamProtocoled (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed=false)
 
- Public Member Functions inherited from ed247::xml::Stream
+virtual void validate (const xmlNodePtr closest_node)=0
 
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
- Public Member Functions inherited from ed247::xml::Node
+virtual void load (const xmlNodePtr xml_node)=0
 
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Data Fields

+Errors _errors
 
- Data Fields inherited from ed247::xml::Stream
+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_stream_protocoled.js b/docs/structed247_1_1xml_1_1_stream_protocoled.js new file mode 100644 index 00000000..2d53ba48 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_protocoled.js @@ -0,0 +1,6 @@ +var structed247_1_1xml_1_1_stream_protocoled = +[ + [ "StreamProtocoled", "structed247_1_1xml_1_1_stream_protocoled.html#a892f725538e600dd9b66cedffef3a868", null ], + [ "is_signal_based", "structed247_1_1xml_1_1_stream_protocoled.html#a4a9c47dbc57071f5396ca4a1567bc22f", null ], + [ "_errors", "structed247_1_1xml_1_1_stream_protocoled.html#af8a266aaec3b272f2e47746310f96977", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_stream_protocoled__coll__graph.map b/docs/structed247_1_1xml_1_1_stream_protocoled__coll__graph.map new file mode 100644 index 00000000..2a8e019b --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_protocoled__coll__graph.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/structed247_1_1xml_1_1_stream_protocoled__coll__graph.md5 b/docs/structed247_1_1xml_1_1_stream_protocoled__coll__graph.md5 new file mode 100644 index 00000000..69efa94c --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_protocoled__coll__graph.md5 @@ -0,0 +1 @@ +35c09660c308bcae0fff154ccebd652b \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_stream_protocoled__coll__graph.png b/docs/structed247_1_1xml_1_1_stream_protocoled__coll__graph.png new file mode 100644 index 00000000..0b92dbdc Binary files /dev/null and b/docs/structed247_1_1xml_1_1_stream_protocoled__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_stream_protocoled__inherit__graph.map b/docs/structed247_1_1xml_1_1_stream_protocoled__inherit__graph.map new file mode 100644 index 00000000..9f846d7d --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_protocoled__inherit__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/structed247_1_1xml_1_1_stream_protocoled__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_stream_protocoled__inherit__graph.md5 new file mode 100644 index 00000000..ba62609b --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_protocoled__inherit__graph.md5 @@ -0,0 +1 @@ +004ac04a891ca41b3092c95876bbccfc \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_stream_protocoled__inherit__graph.png b/docs/structed247_1_1xml_1_1_stream_protocoled__inherit__graph.png new file mode 100644 index 00000000..eed4c3f7 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_stream_protocoled__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_stream_signals.html b/docs/structed247_1_1xml_1_1_stream_signals.html new file mode 100644 index 00000000..d0c1926f --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_signals.html @@ -0,0 +1,218 @@ + + + + + + +ED247 Library: ed247::xml::StreamSignals Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::StreamSignals Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::StreamSignals:
+
+
Inheritance graph
+ + + + + + + + +
+
+Collaboration diagram for ed247::xml::StreamSignals:
+
+
Collaboration graph
+ + + + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

+virtual bool is_signal_based () const override final
 
StreamSignals (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed=true)
 
- Public Member Functions inherited from ed247::xml::Stream
+virtual void validate (const xmlNodePtr closest_node)=0
 
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
- Public Member Functions inherited from ed247::xml::Node
+virtual void load (const xmlNodePtr xml_node)=0
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Fields

+std::vector< std::unique_ptr< Signal > > _signal_list
 
+uint32_t _sampling_period_us
 
- Data Fields inherited from ed247::xml::Stream
+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_stream_signals.js b/docs/structed247_1_1xml_1_1_stream_signals.js new file mode 100644 index 00000000..0dcc8c44 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_signals.js @@ -0,0 +1,7 @@ +var structed247_1_1xml_1_1_stream_signals = +[ + [ "StreamSignals", "structed247_1_1xml_1_1_stream_signals.html#a31173dc0c3d232dc154f990a4a45af66", null ], + [ "is_signal_based", "structed247_1_1xml_1_1_stream_signals.html#a799c7277a4c5b25dfdd2f0a4cef6b03f", null ], + [ "_signal_list", "structed247_1_1xml_1_1_stream_signals.html#a01c499a41691b0555c5e1de731da339a", null ], + [ "_sampling_period_us", "structed247_1_1xml_1_1_stream_signals.html#a34b5d66cb820e315ce6192726dec6128", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_stream_signals__coll__graph.map b/docs/structed247_1_1xml_1_1_stream_signals__coll__graph.map new file mode 100644 index 00000000..ef433f31 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_signals__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1xml_1_1_stream_signals__coll__graph.md5 b/docs/structed247_1_1xml_1_1_stream_signals__coll__graph.md5 new file mode 100644 index 00000000..2917128d --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_signals__coll__graph.md5 @@ -0,0 +1 @@ +574d50e786d742923544f3e85abb3bcc \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_stream_signals__coll__graph.png b/docs/structed247_1_1xml_1_1_stream_signals__coll__graph.png new file mode 100644 index 00000000..c3e376d8 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_stream_signals__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_stream_signals__inherit__graph.map b/docs/structed247_1_1xml_1_1_stream_signals__inherit__graph.map new file mode 100644 index 00000000..d7232f7b --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_signals__inherit__graph.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/structed247_1_1xml_1_1_stream_signals__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_stream_signals__inherit__graph.md5 new file mode 100644 index 00000000..4d4ba5ae --- /dev/null +++ b/docs/structed247_1_1xml_1_1_stream_signals__inherit__graph.md5 @@ -0,0 +1 @@ +a7043da7c5b19e65b7643bd8aa607a5a \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_stream_signals__inherit__graph.png b/docs/structed247_1_1xml_1_1_stream_signals__inherit__graph.png new file mode 100644 index 00000000..f912e0b5 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_stream_signals__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_udp_socket.html b/docs/structed247_1_1xml_1_1_udp_socket.html new file mode 100644 index 00000000..16167abf --- /dev/null +++ b/docs/structed247_1_1xml_1_1_udp_socket.html @@ -0,0 +1,181 @@ + + + + + + +ED247 Library: ed247::xml::UdpSocket Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::UdpSocket Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::UdpSocket:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247::xml::UdpSocket:
+
+
Collaboration graph
+ + + +
+ + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+ + + + + + + + + + + + + + + +

+Data Fields

+std::string _dst_ip_address
 
+uint16_t _dst_ip_port
 
+std::string _src_ip_address
 
+uint16_t _src_ip_port
 
+std::string _mc_ip_address
 
+uint16_t _mc_ttl
 
+ed247_direction_t _direction
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_udp_socket.js b/docs/structed247_1_1xml_1_1_udp_socket.js new file mode 100644 index 00000000..0a0c53a4 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_udp_socket.js @@ -0,0 +1,12 @@ +var structed247_1_1xml_1_1_udp_socket = +[ + [ "UdpSocket", "structed247_1_1xml_1_1_udp_socket.html#a8d71369cb92ce60e7b5ff34207467918", null ], + [ "load", "structed247_1_1xml_1_1_udp_socket.html#a29693689b8318e47b4f5bde29b13a1ae", null ], + [ "_dst_ip_address", "structed247_1_1xml_1_1_udp_socket.html#a304c28ffa451e5769f4cb55cb7bdd587", null ], + [ "_dst_ip_port", "structed247_1_1xml_1_1_udp_socket.html#aabe7e6c809e2e213652bc4b3db6ebe4a", null ], + [ "_src_ip_address", "structed247_1_1xml_1_1_udp_socket.html#ae94f47d5e963800c54ea38a2d8bc3f71", null ], + [ "_src_ip_port", "structed247_1_1xml_1_1_udp_socket.html#a63eb6197004df6dc86ac93a48042b0af", null ], + [ "_mc_ip_address", "structed247_1_1xml_1_1_udp_socket.html#abadac52e03c444efef62fcd8c7522338", null ], + [ "_mc_ttl", "structed247_1_1xml_1_1_udp_socket.html#a1d44ae1beec144c5094def435ed28f39", null ], + [ "_direction", "structed247_1_1xml_1_1_udp_socket.html#ae29163559c8817d38bed7d4ce85b3657", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_udp_socket__coll__graph.map b/docs/structed247_1_1xml_1_1_udp_socket__coll__graph.map new file mode 100644 index 00000000..cfa77442 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_udp_socket__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_udp_socket__coll__graph.md5 b/docs/structed247_1_1xml_1_1_udp_socket__coll__graph.md5 new file mode 100644 index 00000000..21ea6bbb --- /dev/null +++ b/docs/structed247_1_1xml_1_1_udp_socket__coll__graph.md5 @@ -0,0 +1 @@ +7354e74322cd01274b7eb6777425c582 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_udp_socket__coll__graph.png b/docs/structed247_1_1xml_1_1_udp_socket__coll__graph.png new file mode 100644 index 00000000..e99b7244 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_udp_socket__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_udp_socket__inherit__graph.map b/docs/structed247_1_1xml_1_1_udp_socket__inherit__graph.map new file mode 100644 index 00000000..ed993ec8 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_udp_socket__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247_1_1xml_1_1_udp_socket__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_udp_socket__inherit__graph.md5 new file mode 100644 index 00000000..bfc70ce3 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_udp_socket__inherit__graph.md5 @@ -0,0 +1 @@ +80cc905b520b797f98fe1875f7256b8c \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_udp_socket__inherit__graph.png b/docs/structed247_1_1xml_1_1_udp_socket__inherit__graph.png new file mode 100644 index 00000000..8403a33d Binary files /dev/null and b/docs/structed247_1_1xml_1_1_udp_socket__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_signal.html b/docs/structed247_1_1xml_1_1_v_n_a_d_signal.html new file mode 100644 index 00000000..b0e637a9 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_signal.html @@ -0,0 +1,209 @@ + + + + + + +ED247 Library: ed247::xml::VNADSignal Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::VNADSignal Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::VNADSignal:
+
+
Inheritance graph
+ + + + +
+
+Collaboration diagram for ed247::xml::VNADSignal:
+
+
Collaboration graph
+ + + + +
+ + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
- Public Member Functions inherited from ed247::xml::Signal
+uint32_t get_sample_max_size_bytes () const
 
+uint32_t get_nad_type_size () const
 
Signal (ed247_signal_type_t type)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from ed247::xml::Signal
+static uint32_t get_nad_type_size (ed247_nad_type_t nad_type)
 
- Data Fields inherited from ed247::xml::Signal
+std::string _name
 
+ed247_signal_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+uint32_t _byte_offset
 
+std::string _analogue_electrical_unit
 
+ed247_nad_type_t _nad_type
 
+std::string _nad_unit
 
+std::vector< uint32_t > _nad_dimensions
 
+uint32_t _vnad_position
 
+uint32_t _vnad_max_number
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_signal.js b/docs/structed247_1_1xml_1_1_v_n_a_d_signal.js new file mode 100644 index 00000000..cdf863f6 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_signal.js @@ -0,0 +1,5 @@ +var structed247_1_1xml_1_1_v_n_a_d_signal = +[ + [ "VNADSignal", "structed247_1_1xml_1_1_v_n_a_d_signal.html#adb0c3f20ad6db83c6d2e35f31c0a977a", null ], + [ "load", "structed247_1_1xml_1_1_v_n_a_d_signal.html#a76bbc04df92c38e1dcba32e7cb26df8c", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_signal__coll__graph.map b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__coll__graph.map new file mode 100644 index 00000000..7469391d --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_signal__coll__graph.md5 b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__coll__graph.md5 new file mode 100644 index 00000000..e1a957bc --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__coll__graph.md5 @@ -0,0 +1 @@ +7f5cd1deaf581d287c87fa2d1b1eb2b8 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_signal__coll__graph.png b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__coll__graph.png new file mode 100644 index 00000000..f6404b74 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_signal__inherit__graph.map b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__inherit__graph.map new file mode 100644 index 00000000..fe6ab964 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_signal__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__inherit__graph.md5 new file mode 100644 index 00000000..19b417e8 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__inherit__graph.md5 @@ -0,0 +1 @@ +b43b963205246b0967bbab0db66302b9 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_signal__inherit__graph.png b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__inherit__graph.png new file mode 100644 index 00000000..e27af83d Binary files /dev/null and b/docs/structed247_1_1xml_1_1_v_n_a_d_signal__inherit__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_stream.html b/docs/structed247_1_1xml_1_1_v_n_a_d_stream.html new file mode 100644 index 00000000..af7adfb6 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_stream.html @@ -0,0 +1,216 @@ + + + + + + +ED247 Library: ed247::xml::VNADStream Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247::xml::VNADStream Struct Reference
+
+
+
+Inheritance diagram for ed247::xml::VNADStream:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247::xml::VNADStream:
+
+
Collaboration graph
+ + + + + + +
+ + + + + + + + + + + + + + +

+Public Member Functions

+virtual void load (const xmlNodePtr xml_node) override final
 
+virtual void validate (const xmlNodePtr closest_node) override final
 
- Public Member Functions inherited from ed247::xml::StreamSignals
+virtual bool is_signal_based () const override final
 
StreamSignals (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed=true)
 
- Public Member Functions inherited from ed247::xml::Stream
Stream (ed247_stream_type_t type, uint32_t sample_max_size_bytes, bool sample_size_fixed)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Data Fields inherited from ed247::xml::StreamSignals
+std::vector< std::unique_ptr< Signal > > _signal_list
 
+uint32_t _sampling_period_us
 
- Data Fields inherited from ed247::xml::Stream
+std::string _name
 
+ed247_direction_t _direction
 
+ed247_stream_type_t _type
 
+std::string _comment
 
+std::string _icd
 
+ed247_uid_t _uid
 
+uint32_t _sample_max_number
 
+uint32_t _sample_max_size_bytes
 
+bool _sample_size_fixed
 
+DataTimestamp _data_timestamp
 
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_stream.js b/docs/structed247_1_1xml_1_1_v_n_a_d_stream.js new file mode 100644 index 00000000..b940f549 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_stream.js @@ -0,0 +1,6 @@ +var structed247_1_1xml_1_1_v_n_a_d_stream = +[ + [ "VNADStream", "structed247_1_1xml_1_1_v_n_a_d_stream.html#acb1b510dc1374f5364ce26b1c2ff0d86", null ], + [ "load", "structed247_1_1xml_1_1_v_n_a_d_stream.html#a119f22b930ac47773b86a1f6e6ce643b", null ], + [ "validate", "structed247_1_1xml_1_1_v_n_a_d_stream.html#aef4042ade0813b2d8cd38826f47ca765", null ] +]; \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_stream__coll__graph.map b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__coll__graph.map new file mode 100644 index 00000000..4b3181e9 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__coll__graph.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_stream__coll__graph.md5 b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__coll__graph.md5 new file mode 100644 index 00000000..7f96355a --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__coll__graph.md5 @@ -0,0 +1 @@ +de0c95906c9fd19f1923a510a5b9d949 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_stream__coll__graph.png b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__coll__graph.png new file mode 100644 index 00000000..c0875783 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__coll__graph.png differ diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_stream__inherit__graph.map b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__inherit__graph.map new file mode 100644 index 00000000..44e770bb --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_stream__inherit__graph.md5 b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__inherit__graph.md5 new file mode 100644 index 00000000..d9676270 --- /dev/null +++ b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__inherit__graph.md5 @@ -0,0 +1 @@ +12f683979e6a6f9005e3552071f60ac3 \ No newline at end of file diff --git a/docs/structed247_1_1xml_1_1_v_n_a_d_stream__inherit__graph.png b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__inherit__graph.png new file mode 100644 index 00000000..cdf38588 Binary files /dev/null and b/docs/structed247_1_1xml_1_1_v_n_a_d_stream__inherit__graph.png differ diff --git a/docs/structed247__internal__channel__list__t.html b/docs/structed247__internal__channel__list__t.html new file mode 100644 index 00000000..ce814103 --- /dev/null +++ b/docs/structed247__internal__channel__list__t.html @@ -0,0 +1,135 @@ + + + + + + +ED247 Library: ed247_internal_channel_list_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_internal_channel_list_t Struct Reference
+
+
+
+Collaboration diagram for ed247_internal_channel_list_t:
+
+
Collaboration graph
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247__internal__channel__list__t.js b/docs/structed247__internal__channel__list__t.js new file mode 100644 index 00000000..c5f8cbc7 --- /dev/null +++ b/docs/structed247__internal__channel__list__t.js @@ -0,0 +1,4 @@ +var structed247__internal__channel__list__t = +[ + [ "~ed247_internal_channel_list_t", "structed247__internal__channel__list__t.html#ab9b270bf4a05a270f5a835f133ab60c8", null ] +]; \ No newline at end of file diff --git a/docs/structed247__internal__channel__list__t__coll__graph.map b/docs/structed247__internal__channel__list__t__coll__graph.map new file mode 100644 index 00000000..cca2d8b2 --- /dev/null +++ b/docs/structed247__internal__channel__list__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247__internal__channel__list__t__coll__graph.md5 b/docs/structed247__internal__channel__list__t__coll__graph.md5 new file mode 100644 index 00000000..6f1602d2 --- /dev/null +++ b/docs/structed247__internal__channel__list__t__coll__graph.md5 @@ -0,0 +1 @@ +6a5053cd02214614f085b1525c1b30b0 \ No newline at end of file diff --git a/docs/structed247__internal__channel__list__t__coll__graph.png b/docs/structed247__internal__channel__list__t__coll__graph.png new file mode 100644 index 00000000..764a1c0f Binary files /dev/null and b/docs/structed247__internal__channel__list__t__coll__graph.png differ diff --git a/docs/structed247__internal__channel__t.html b/docs/structed247__internal__channel__t.html new file mode 100644 index 00000000..9f318e2a --- /dev/null +++ b/docs/structed247__internal__channel__t.html @@ -0,0 +1,143 @@ + + + + + + +ED247 Library: ed247_internal_channel_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_internal_channel_t Struct Reference
+
+
+
+Inheritance diagram for ed247_internal_channel_t:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247_internal_channel_t:
+
+
Collaboration graph
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247__internal__channel__t__coll__graph.map b/docs/structed247__internal__channel__t__coll__graph.map new file mode 100644 index 00000000..2c736611 --- /dev/null +++ b/docs/structed247__internal__channel__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247__internal__channel__t__coll__graph.md5 b/docs/structed247__internal__channel__t__coll__graph.md5 new file mode 100644 index 00000000..ef8a6a23 --- /dev/null +++ b/docs/structed247__internal__channel__t__coll__graph.md5 @@ -0,0 +1 @@ +bf084fa85653ed2bb1355b94153f500a \ No newline at end of file diff --git a/docs/structed247__internal__channel__t__coll__graph.png b/docs/structed247__internal__channel__t__coll__graph.png new file mode 100644 index 00000000..d5795dee Binary files /dev/null and b/docs/structed247__internal__channel__t__coll__graph.png differ diff --git a/docs/structed247__internal__channel__t__inherit__graph.map b/docs/structed247__internal__channel__t__inherit__graph.map new file mode 100644 index 00000000..5df22aba --- /dev/null +++ b/docs/structed247__internal__channel__t__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247__internal__channel__t__inherit__graph.md5 b/docs/structed247__internal__channel__t__inherit__graph.md5 new file mode 100644 index 00000000..13cb320b --- /dev/null +++ b/docs/structed247__internal__channel__t__inherit__graph.md5 @@ -0,0 +1 @@ +99a85d2d4df63217e1bf90a0acb283a6 \ No newline at end of file diff --git a/docs/structed247__internal__channel__t__inherit__graph.png b/docs/structed247__internal__channel__t__inherit__graph.png new file mode 100644 index 00000000..3da499c7 Binary files /dev/null and b/docs/structed247__internal__channel__t__inherit__graph.png differ diff --git a/docs/structed247__internal__context__t.html b/docs/structed247__internal__context__t.html new file mode 100644 index 00000000..5a3ea9ab --- /dev/null +++ b/docs/structed247__internal__context__t.html @@ -0,0 +1,143 @@ + + + + + + +ED247 Library: ed247_internal_context_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_internal_context_t Struct Reference
+
+
+
+Inheritance diagram for ed247_internal_context_t:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247_internal_context_t:
+
+
Collaboration graph
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247__internal__context__t__coll__graph.map b/docs/structed247__internal__context__t__coll__graph.map new file mode 100644 index 00000000..b3467eb9 --- /dev/null +++ b/docs/structed247__internal__context__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247__internal__context__t__coll__graph.md5 b/docs/structed247__internal__context__t__coll__graph.md5 new file mode 100644 index 00000000..0944f43d --- /dev/null +++ b/docs/structed247__internal__context__t__coll__graph.md5 @@ -0,0 +1 @@ +1278cfe9a813f39b6ea80020af09ebc7 \ No newline at end of file diff --git a/docs/structed247__internal__context__t__coll__graph.png b/docs/structed247__internal__context__t__coll__graph.png new file mode 100644 index 00000000..124b3b3c Binary files /dev/null and b/docs/structed247__internal__context__t__coll__graph.png differ diff --git a/docs/structed247__internal__context__t__inherit__graph.map b/docs/structed247__internal__context__t__inherit__graph.map new file mode 100644 index 00000000..809b1cc2 --- /dev/null +++ b/docs/structed247__internal__context__t__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247__internal__context__t__inherit__graph.md5 b/docs/structed247__internal__context__t__inherit__graph.md5 new file mode 100644 index 00000000..01234227 --- /dev/null +++ b/docs/structed247__internal__context__t__inherit__graph.md5 @@ -0,0 +1 @@ +2e2097be67d64bd88a9e5f563151ac4a \ No newline at end of file diff --git a/docs/structed247__internal__context__t__inherit__graph.png b/docs/structed247__internal__context__t__inherit__graph.png new file mode 100644 index 00000000..0a78474e Binary files /dev/null and b/docs/structed247__internal__context__t__inherit__graph.png differ diff --git a/docs/structed247__internal__signal__list__t.html b/docs/structed247__internal__signal__list__t.html new file mode 100644 index 00000000..910d9d63 --- /dev/null +++ b/docs/structed247__internal__signal__list__t.html @@ -0,0 +1,135 @@ + + + + + + +ED247 Library: ed247_internal_signal_list_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_internal_signal_list_t Struct Reference
+
+
+
+Collaboration diagram for ed247_internal_signal_list_t:
+
+
Collaboration graph
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247__internal__signal__list__t.js b/docs/structed247__internal__signal__list__t.js new file mode 100644 index 00000000..bae20ad7 --- /dev/null +++ b/docs/structed247__internal__signal__list__t.js @@ -0,0 +1,4 @@ +var structed247__internal__signal__list__t = +[ + [ "~ed247_internal_signal_list_t", "structed247__internal__signal__list__t.html#a594332fc0c3a96882ba33419cd7fa31b", null ] +]; \ No newline at end of file diff --git a/docs/structed247__internal__signal__list__t__coll__graph.map b/docs/structed247__internal__signal__list__t__coll__graph.map new file mode 100644 index 00000000..8e8cd8c8 --- /dev/null +++ b/docs/structed247__internal__signal__list__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247__internal__signal__list__t__coll__graph.md5 b/docs/structed247__internal__signal__list__t__coll__graph.md5 new file mode 100644 index 00000000..16e0879f --- /dev/null +++ b/docs/structed247__internal__signal__list__t__coll__graph.md5 @@ -0,0 +1 @@ +b6a06a07366e1879140d3f1dba1e2272 \ No newline at end of file diff --git a/docs/structed247__internal__signal__list__t__coll__graph.png b/docs/structed247__internal__signal__list__t__coll__graph.png new file mode 100644 index 00000000..c1b228b3 Binary files /dev/null and b/docs/structed247__internal__signal__list__t__coll__graph.png differ diff --git a/docs/structed247__internal__signal__t.html b/docs/structed247__internal__signal__t.html new file mode 100644 index 00000000..ebe57aac --- /dev/null +++ b/docs/structed247__internal__signal__t.html @@ -0,0 +1,143 @@ + + + + + + +ED247 Library: ed247_internal_signal_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_internal_signal_t Struct Reference
+
+
+
+Inheritance diagram for ed247_internal_signal_t:
+
+
Inheritance graph
+ + + +
+
+Collaboration diagram for ed247_internal_signal_t:
+
+
Collaboration graph
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247__internal__signal__t__coll__graph.map b/docs/structed247__internal__signal__t__coll__graph.map new file mode 100644 index 00000000..eb1a1b27 --- /dev/null +++ b/docs/structed247__internal__signal__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247__internal__signal__t__coll__graph.md5 b/docs/structed247__internal__signal__t__coll__graph.md5 new file mode 100644 index 00000000..fcab8089 --- /dev/null +++ b/docs/structed247__internal__signal__t__coll__graph.md5 @@ -0,0 +1 @@ +c5e6f90fcd19ecf37a30acecc1488dcd \ No newline at end of file diff --git a/docs/structed247__internal__signal__t__coll__graph.png b/docs/structed247__internal__signal__t__coll__graph.png new file mode 100644 index 00000000..cf4c9716 Binary files /dev/null and b/docs/structed247__internal__signal__t__coll__graph.png differ diff --git a/docs/structed247__internal__signal__t__inherit__graph.map b/docs/structed247__internal__signal__t__inherit__graph.map new file mode 100644 index 00000000..20738edd --- /dev/null +++ b/docs/structed247__internal__signal__t__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247__internal__signal__t__inherit__graph.md5 b/docs/structed247__internal__signal__t__inherit__graph.md5 new file mode 100644 index 00000000..685b0330 --- /dev/null +++ b/docs/structed247__internal__signal__t__inherit__graph.md5 @@ -0,0 +1 @@ +75c33cb01bcc84e61593d5e55307b21c \ No newline at end of file diff --git a/docs/structed247__internal__signal__t__inherit__graph.png b/docs/structed247__internal__signal__t__inherit__graph.png new file mode 100644 index 00000000..727dd8a8 Binary files /dev/null and b/docs/structed247__internal__signal__t__inherit__graph.png differ diff --git a/docs/structed247__internal__stream__assistant__t.html b/docs/structed247__internal__stream__assistant__t.html new file mode 100644 index 00000000..09f6b06c --- /dev/null +++ b/docs/structed247__internal__stream__assistant__t.html @@ -0,0 +1,145 @@ + + + + + + +ED247 Library: ed247_internal_stream_assistant_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_internal_stream_assistant_t Struct Reference
+
+
+
+Inheritance diagram for ed247_internal_stream_assistant_t:
+
+
Inheritance graph
+ + + + + +
+
+Collaboration diagram for ed247_internal_stream_assistant_t:
+
+
Collaboration graph
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247__internal__stream__assistant__t.js b/docs/structed247__internal__stream__assistant__t.js new file mode 100644 index 00000000..8e3e21ff --- /dev/null +++ b/docs/structed247__internal__stream__assistant__t.js @@ -0,0 +1,4 @@ +var structed247__internal__stream__assistant__t = +[ + [ "~ed247_internal_stream_assistant_t", "structed247__internal__stream__assistant__t.html#ad39cfe2c74909e21bea4726428e0c34c", null ] +]; \ No newline at end of file diff --git a/docs/structed247__internal__stream__assistant__t__coll__graph.map b/docs/structed247__internal__stream__assistant__t__coll__graph.map new file mode 100644 index 00000000..9ae28559 --- /dev/null +++ b/docs/structed247__internal__stream__assistant__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247__internal__stream__assistant__t__coll__graph.md5 b/docs/structed247__internal__stream__assistant__t__coll__graph.md5 new file mode 100644 index 00000000..228d04da --- /dev/null +++ b/docs/structed247__internal__stream__assistant__t__coll__graph.md5 @@ -0,0 +1 @@ +099e6dc4b8eddb6ffea981296299b6e3 \ No newline at end of file diff --git a/docs/structed247__internal__stream__assistant__t__coll__graph.png b/docs/structed247__internal__stream__assistant__t__coll__graph.png new file mode 100644 index 00000000..a6b4c5e4 Binary files /dev/null and b/docs/structed247__internal__stream__assistant__t__coll__graph.png differ diff --git a/docs/structed247__internal__stream__assistant__t__inherit__graph.map b/docs/structed247__internal__stream__assistant__t__inherit__graph.map new file mode 100644 index 00000000..9d155bbf --- /dev/null +++ b/docs/structed247__internal__stream__assistant__t__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/structed247__internal__stream__assistant__t__inherit__graph.md5 b/docs/structed247__internal__stream__assistant__t__inherit__graph.md5 new file mode 100644 index 00000000..236a41b8 --- /dev/null +++ b/docs/structed247__internal__stream__assistant__t__inherit__graph.md5 @@ -0,0 +1 @@ +e72be563ad4a58b5d74a88c4fe44cfa6 \ No newline at end of file diff --git a/docs/structed247__internal__stream__assistant__t__inherit__graph.png b/docs/structed247__internal__stream__assistant__t__inherit__graph.png new file mode 100644 index 00000000..0a414bfa Binary files /dev/null and b/docs/structed247__internal__stream__assistant__t__inherit__graph.png differ diff --git a/docs/structed247__internal__stream__list__t.html b/docs/structed247__internal__stream__list__t.html new file mode 100644 index 00000000..912b5e2c --- /dev/null +++ b/docs/structed247__internal__stream__list__t.html @@ -0,0 +1,135 @@ + + + + + + +ED247 Library: ed247_internal_stream_list_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_internal_stream_list_t Struct Reference
+
+
+
+Collaboration diagram for ed247_internal_stream_list_t:
+
+
Collaboration graph
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247__internal__stream__list__t.js b/docs/structed247__internal__stream__list__t.js new file mode 100644 index 00000000..1c488e20 --- /dev/null +++ b/docs/structed247__internal__stream__list__t.js @@ -0,0 +1,4 @@ +var structed247__internal__stream__list__t = +[ + [ "~ed247_internal_stream_list_t", "structed247__internal__stream__list__t.html#a95a6cf9bc1c2cd0b4c1f2b9425dc75ab", null ] +]; \ No newline at end of file diff --git a/docs/structed247__internal__stream__list__t__coll__graph.map b/docs/structed247__internal__stream__list__t__coll__graph.map new file mode 100644 index 00000000..7dc337cb --- /dev/null +++ b/docs/structed247__internal__stream__list__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247__internal__stream__list__t__coll__graph.md5 b/docs/structed247__internal__stream__list__t__coll__graph.md5 new file mode 100644 index 00000000..5a753286 --- /dev/null +++ b/docs/structed247__internal__stream__list__t__coll__graph.md5 @@ -0,0 +1 @@ +108d1af149ef89f38d7a251669b09aa0 \ No newline at end of file diff --git a/docs/structed247__internal__stream__list__t__coll__graph.png b/docs/structed247__internal__stream__list__t__coll__graph.png new file mode 100644 index 00000000..df592696 Binary files /dev/null and b/docs/structed247__internal__stream__list__t__coll__graph.png differ diff --git a/docs/structed247__internal__stream__t.html b/docs/structed247__internal__stream__t.html new file mode 100644 index 00000000..ba10d44f --- /dev/null +++ b/docs/structed247__internal__stream__t.html @@ -0,0 +1,144 @@ + + + + + + +ED247 Library: ed247_internal_stream_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ed247_internal_stream_t Struct Reference
+
+
+
+Inheritance diagram for ed247_internal_stream_t:
+
+
Inheritance graph
+ + + + +
+
+Collaboration diagram for ed247_internal_stream_t:
+
+
Collaboration graph
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247__internal__stream__t__coll__graph.map b/docs/structed247__internal__stream__t__coll__graph.map new file mode 100644 index 00000000..fb10d809 --- /dev/null +++ b/docs/structed247__internal__stream__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247__internal__stream__t__coll__graph.md5 b/docs/structed247__internal__stream__t__coll__graph.md5 new file mode 100644 index 00000000..334a37d1 --- /dev/null +++ b/docs/structed247__internal__stream__t__coll__graph.md5 @@ -0,0 +1 @@ +7a9ed01962ccdccbdbbf516b523bb104 \ No newline at end of file diff --git a/docs/structed247__internal__stream__t__coll__graph.png b/docs/structed247__internal__stream__t__coll__graph.png new file mode 100644 index 00000000..2ce12a34 Binary files /dev/null and b/docs/structed247__internal__stream__t__coll__graph.png differ diff --git a/docs/structed247__internal__stream__t__inherit__graph.map b/docs/structed247__internal__stream__t__inherit__graph.map new file mode 100644 index 00000000..7c280357 --- /dev/null +++ b/docs/structed247__internal__stream__t__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/structed247__internal__stream__t__inherit__graph.md5 b/docs/structed247__internal__stream__t__inherit__graph.md5 new file mode 100644 index 00000000..f6381c1d --- /dev/null +++ b/docs/structed247__internal__stream__t__inherit__graph.md5 @@ -0,0 +1 @@ +728d7e84f047923ca880185252af2946 \ No newline at end of file diff --git a/docs/structed247__internal__stream__t__inherit__graph.png b/docs/structed247__internal__stream__t__inherit__graph.png new file mode 100644 index 00000000..118c0681 Binary files /dev/null and b/docs/structed247__internal__stream__t__inherit__graph.png differ diff --git a/docs/structed247__sample__details__s.html b/docs/structed247__sample__details__s.html new file mode 100644 index 00000000..6ef65bbb --- /dev/null +++ b/docs/structed247__sample__details__s.html @@ -0,0 +1,160 @@ + + + + + + +ED247 Library: ed247_sample_details_s Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247_sample_details_s Struct Reference
+
+
+ +

Sample Details. + More...

+ +

#include <ed247.h>

+
+Collaboration diagram for ed247_sample_details_s:
+
+
Collaboration graph
+ + + +
+ + + + + + + + +

+Data Fields

+ed247_uid_t component_identifier
 
+uint16_t sequence_number
 
+ed247_timestamp_t transport_timestamp
 
+

Detailed Description

+

Sample Details.

+

The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247__sample__details__s.js b/docs/structed247__sample__details__s.js new file mode 100644 index 00000000..dad321f2 --- /dev/null +++ b/docs/structed247__sample__details__s.js @@ -0,0 +1,6 @@ +var structed247__sample__details__s = +[ + [ "component_identifier", "structed247__sample__details__s.html#a624b93b818532685b2de442853c9ffc7", null ], + [ "sequence_number", "structed247__sample__details__s.html#af59da40c8f0ea63d34e833debfd5c494", null ], + [ "transport_timestamp", "structed247__sample__details__s.html#acdd4ad89db183eb4f28585fa1c40530e", null ] +]; \ No newline at end of file diff --git a/docs/structed247__sample__details__s__coll__graph.map b/docs/structed247__sample__details__s__coll__graph.map new file mode 100644 index 00000000..5aba65b3 --- /dev/null +++ b/docs/structed247__sample__details__s__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/structed247__sample__details__s__coll__graph.md5 b/docs/structed247__sample__details__s__coll__graph.md5 new file mode 100644 index 00000000..da9f26d5 --- /dev/null +++ b/docs/structed247__sample__details__s__coll__graph.md5 @@ -0,0 +1 @@ +111e47f46a56464f9caf458704f88117 \ No newline at end of file diff --git a/docs/structed247__sample__details__s__coll__graph.png b/docs/structed247__sample__details__s__coll__graph.png new file mode 100644 index 00000000..d97f57bf Binary files /dev/null and b/docs/structed247__sample__details__s__coll__graph.png differ diff --git a/docs/structed247__timestamp__t.html b/docs/structed247__timestamp__t.html new file mode 100644 index 00000000..f73cfc58 --- /dev/null +++ b/docs/structed247__timestamp__t.html @@ -0,0 +1,154 @@ + + + + + + +ED247 Library: ed247_timestamp_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ed247_timestamp_t Struct Reference
+
+
+ +

Timestamp structure, seconds from EPOCH (January 1st 1970) and nanoseconds offset with reference to previous field. + More...

+ +

#include <ed247.h>

+
+Collaboration diagram for ed247_timestamp_t:
+
+
Collaboration graph
+
+ + + + + + +

+Data Fields

+uint32_t epoch_s
 
+uint32_t offset_ns
 
+

Detailed Description

+

Timestamp structure, seconds from EPOCH (January 1st 1970) and nanoseconds offset with reference to previous field.

+

The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structed247__timestamp__t.js b/docs/structed247__timestamp__t.js new file mode 100644 index 00000000..a3ee416b --- /dev/null +++ b/docs/structed247__timestamp__t.js @@ -0,0 +1,5 @@ +var structed247__timestamp__t = +[ + [ "epoch_s", "structed247__timestamp__t.html#aa8b7a95dd8c8520aa3f574005a8fabe3", null ], + [ "offset_ns", "structed247__timestamp__t.html#a9e4cccbc67d3d38659b9438da1ea37f0", null ] +]; \ No newline at end of file diff --git a/docs/structed247__timestamp__t__coll__graph.map b/docs/structed247__timestamp__t__coll__graph.map new file mode 100644 index 00000000..c2a28ebc --- /dev/null +++ b/docs/structed247__timestamp__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structed247__timestamp__t__coll__graph.md5 b/docs/structed247__timestamp__t__coll__graph.md5 new file mode 100644 index 00000000..f3fa3fa4 --- /dev/null +++ b/docs/structed247__timestamp__t__coll__graph.md5 @@ -0,0 +1 @@ +abd8e9df39e7dfb1d0b985c8e33641f8 \ No newline at end of file diff --git a/docs/structed247__timestamp__t__coll__graph.png b/docs/structed247__timestamp__t__coll__graph.png new file mode 100644 index 00000000..1c778381 Binary files /dev/null and b/docs/structed247__timestamp__t__coll__graph.png differ diff --git a/docs/structlibed247__runtime__metrics__t.html b/docs/structlibed247__runtime__metrics__t.html new file mode 100644 index 00000000..ec4eda37 --- /dev/null +++ b/docs/structlibed247__runtime__metrics__t.html @@ -0,0 +1,147 @@ + + + + + + +ED247 Library: libed247_runtime_metrics_t Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
libed247_runtime_metrics_t Struct Reference
+
+
+
+Collaboration diagram for libed247_runtime_metrics_t:
+
+
Collaboration graph
+
+ + + + + + +

+Data Fields

+uint32_t a
 
+uint32_t b
 
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structlibed247__runtime__metrics__t.js b/docs/structlibed247__runtime__metrics__t.js new file mode 100644 index 00000000..1558ec62 --- /dev/null +++ b/docs/structlibed247__runtime__metrics__t.js @@ -0,0 +1,5 @@ +var structlibed247__runtime__metrics__t = +[ + [ "a", "structlibed247__runtime__metrics__t.html#ab3df350de9b45423d870f9a98b8a2d9b", null ], + [ "b", "structlibed247__runtime__metrics__t.html#acefb23498022404b31785250e2580b24", null ] +]; \ No newline at end of file diff --git a/docs/structlibed247__runtime__metrics__t__coll__graph.map b/docs/structlibed247__runtime__metrics__t__coll__graph.map new file mode 100644 index 00000000..1475d000 --- /dev/null +++ b/docs/structlibed247__runtime__metrics__t__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structlibed247__runtime__metrics__t__coll__graph.md5 b/docs/structlibed247__runtime__metrics__t__coll__graph.md5 new file mode 100644 index 00000000..210f594d --- /dev/null +++ b/docs/structlibed247__runtime__metrics__t__coll__graph.md5 @@ -0,0 +1 @@ +a523ccf3c38d4e0f2ef7a0afa1579cf3 \ No newline at end of file diff --git a/docs/structlibed247__runtime__metrics__t__coll__graph.png b/docs/structlibed247__runtime__metrics__t__coll__graph.png new file mode 100644 index 00000000..723c6220 Binary files /dev/null and b/docs/structlibed247__runtime__metrics__t__coll__graph.png differ diff --git a/docs/structstrize.html b/docs/structstrize.html new file mode 100644 index 00000000..c2a06d56 --- /dev/null +++ b/docs/structstrize.html @@ -0,0 +1,148 @@ + + + + + + +ED247 Library: strize Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
ED247 Library +  VA2.3.0_RC1 +
+
Implementation of ED247-A standard
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
strize Struct Reference
+
+
+
+Collaboration diagram for strize:
+
+
Collaboration graph
+
+ + + + + + + +

+Public Member Functions

+template<typename T >
strizeoperator<< (T value)
 
operator std::string () const
 
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/structstrize.js b/docs/structstrize.js new file mode 100644 index 00000000..0dc8c745 --- /dev/null +++ b/docs/structstrize.js @@ -0,0 +1,5 @@ +var structstrize = +[ + [ "operator<<", "structstrize.html#a7e1b8615672294d0ee352f479a42fdd8", null ], + [ "operator std::string", "structstrize.html#acaadb2a1705be496f906054e3ec15abb", null ] +]; \ No newline at end of file diff --git a/docs/structstrize__coll__graph.map b/docs/structstrize__coll__graph.map new file mode 100644 index 00000000..8046047c --- /dev/null +++ b/docs/structstrize__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/structstrize__coll__graph.md5 b/docs/structstrize__coll__graph.md5 new file mode 100644 index 00000000..91731b4d --- /dev/null +++ b/docs/structstrize__coll__graph.md5 @@ -0,0 +1 @@ +2dc2e741155a6c292472713a0516e0ef \ No newline at end of file diff --git a/docs/structstrize__coll__graph.png b/docs/structstrize__coll__graph.png new file mode 100644 index 00000000..c9443765 Binary files /dev/null and b/docs/structstrize__coll__graph.png differ diff --git a/docs/sync_off.png b/docs/sync_off.png new file mode 100644 index 00000000..3b443fc6 Binary files /dev/null and b/docs/sync_off.png differ diff --git a/docs/sync_on.png b/docs/sync_on.png new file mode 100644 index 00000000..e08320fb Binary files /dev/null and b/docs/sync_on.png differ diff --git a/docs/tab_a.png b/docs/tab_a.png new file mode 100644 index 00000000..3b725c41 Binary files /dev/null and b/docs/tab_a.png differ diff --git a/docs/tab_b.png b/docs/tab_b.png new file mode 100644 index 00000000..e2b4a863 Binary files /dev/null and b/docs/tab_b.png differ diff --git a/docs/tab_h.png b/docs/tab_h.png new file mode 100644 index 00000000..fd5cb705 Binary files /dev/null and b/docs/tab_h.png differ diff --git a/docs/tab_s.png b/docs/tab_s.png new file mode 100644 index 00000000..ab478c95 Binary files /dev/null and b/docs/tab_s.png differ diff --git a/docs/tabs.css b/docs/tabs.css new file mode 100644 index 00000000..9cf578f2 --- /dev/null +++ b/docs/tabs.css @@ -0,0 +1,60 @@ +.tabs, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 13px; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + line-height: 36px; + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +}