Stephen Fisher:
[obnox/wireshark/wip.git] / epan / dissectors / packet-h245.h
index 2c0d3633a2a7f552e3312c9a03c817a6a82694a2..264ecd636887bef2da0c2cfd5e20d40e6d5a220a 100644 (file)
@@ -1,18 +1,19 @@
 /* Do not modify this file.                                                   */
-/* It is created automatically by the ASN.1 to Ethereal dissector compiler    */
-/* ./packet-h245.h                                                            */
-/* ../../tools/asn2eth.py -X -e -p h245 -c h245.cnf -s packet-h245-template h245.asn */
+/* It is created automatically by the ASN.1 to Wireshark dissector compiler   */
+/* .\packet-h245.h                                                            */
+/* ../../tools/asn2wrs.py -e -p h245 -c h245.cnf -s packet-h245-template MULTIMEDIA-SYSTEM-CONTROL.asn */
 
 /* Input file: packet-h245-template.h */
 
+#line 1 "packet-h245-template.h"
 /* packet-h245.h
  * Routines for h245 packet dissection
  * Copyright 2005, Anders Broman <anders.broman@ericsson.com>
  *
  * $Id$
  *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@ethereal.com>
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
  * Copyright 1998 Gerald Combs
  *
  * This program is free software; you can redistribute it and/or
@@ -56,18 +57,91 @@ typedef struct _h245_packet_info {
         gchar comment[50];                      /* the Frame Comment used by graph_analysis, what is a message desc */
 } h245_packet_info;
 
+/*
+ * h223 LC info
+ */
 
+typedef enum {
+       al_nonStandard,
+       al1Framed,
+       al1NotFramed,
+       al2WithoutSequenceNumbers,
+       al2WithSequenceNumbers,
+       al3,
+       /*...*/
+       /* al?M: unimplemented annex C adaptation layers */
+       al1M,
+       al2M,
+       al3M
+} h223_al_type;
 
-/*--- Included file: packet-h245-exp.h ---*/
+typedef struct {
+       guint8 control_field_octets;
+       guint32 send_buffer_size;
+} h223_al3_params;
+
+typedef struct {
+       h223_al_type al_type;
+       gpointer al_params;
+       gboolean segmentable;
+       dissector_handle_t subdissector;
+} h223_lc_params;
+
+typedef enum {
+       nonStandardDataType,
+       nullData,
+       videoData,
+       audioData,
+       data,
+       encryptionData,
+       /*...,*/
+       h235Control,
+       h235Media,
+       multiplexedStream,
+       redundancyEncoding,
+       multiplePayloadStream,
+       fec
+} h245_lc_data_type_enum;
+
+typedef struct {
+       h245_lc_data_type_enum data_type;
+       gpointer               params;
+} h245_lc_data_type;
+
+/*
+ * h223 MUX info
+ */
 
+typedef struct _h223_mux_element h223_mux_element;
+struct _h223_mux_element {
+    h223_mux_element* sublist; /* if NULL, use vc instead */
+    guint16 vc;
+    guint16 repeat_count; /* 0 == untilClosingFlag */
+    h223_mux_element* next;
+};
+
+#include <epan/packet_info.h>
+#include <epan/dissectors/packet-per.h>
+
+typedef void (*h223_set_mc_handle_t) ( packet_info* pinfo, guint8 mc, h223_mux_element* me );
+extern void h245_set_h223_set_mc_handle( h223_set_mc_handle_t handle );
+
+typedef void (*h223_add_lc_handle_t) ( packet_info* pinfo, guint16 lc, h223_lc_params* params );
+extern void h245_set_h223_add_lc_handle( h223_add_lc_handle_t handle );
+
+
+/*--- Included file: packet-h245-exp.h ---*/
+#line 1 "packet-h245-exp.h"
 extern const value_string DataProtocolCapability_vals[];
-int dissect_h245_DataProtocolCapability(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
-int dissect_h245_T38FaxProfile(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
-int dissect_h245_OpenLogicalChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int hf_index);
+int dissect_h245_H223Capability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+int dissect_h245_QOSCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+int dissect_h245_DataProtocolCapability(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+int dissect_h245_T38FaxProfile(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+int dissect_h245_OpenLogicalChannel(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
 
 /*--- End of included file: packet-h245-exp.h ---*/
-
-int dissect_h245_OpenLogicalChannelCodec(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index, char *codec_str);
+#line 125 "packet-h245-template.h"
+void dissect_h245_OpenLogicalChannelCodec(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, char *codec_str);
 
 
 #endif  /* PACKET_H245_H */