diff options
Diffstat (limited to 'TAO/tao/CodecFactory/IOP_Codec.pidl')
-rw-r--r-- | TAO/tao/CodecFactory/IOP_Codec.pidl | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/TAO/tao/CodecFactory/IOP_Codec.pidl b/TAO/tao/CodecFactory/IOP_Codec.pidl new file mode 100644 index 00000000000..619d63e9217 --- /dev/null +++ b/TAO/tao/CodecFactory/IOP_Codec.pidl @@ -0,0 +1,78 @@ +// -*- IDL -*- + +/** + * @file IOP_Codec.pidl + * + * $Id$ + * + * @brief Pre-compiled IDL source for the IOP module. + * + * This file is used to generate IOP_CodecC.{h,cpp}, using the following + * command: + * + * tao_idl.exe + * -o orig -Gp -Gd -SS -Sci + * -Wb,export_macro=TAO_Export + * -Wb,export_include=tao/TAO_Export.h + * -Wb,pre_include="ace/pre.h" + * -Wb,post_include="ace/post.h" + * -Wb,versioning_begin=TAO_BEGIN_VERSIONED_NAMESPACE_DECL + * -Wb,versioning_end=TAO_END_VERSIONED_NAMESPACE_DECL + * IOP_Codec.pidl + * + */ + +#ifndef TAO_IOP_CODEC_PIDL +#define TAO_IOP_CODEC_PIDL + +#include "tao/Typecode_types.pidl" +#include "tao/OctetSeq.pidl" +#include "tao/CONV_FRAME.pidl" + +#pragma prefix "omg.org" + +module IOP +{ + local interface Codec { + exception InvalidTypeForEncoding {}; + exception FormatMismatch {}; + exception TypeMismatch {}; + + CORBA::OctetSeq encode (in any data) raises (InvalidTypeForEncoding); + any decode (in CORBA::OctetSeq data) raises (FormatMismatch); + CORBA::OctetSeq encode_value (in any data) raises (InvalidTypeForEncoding); + any decode_value (in CORBA::OctetSeq data, in CORBA::TypeCode tc) + raises (FormatMismatch, TypeMismatch); + }; + + typedef short EncodingFormat; + const EncodingFormat ENCODING_CDR_ENCAPS = 0; + + struct Encoding { + EncodingFormat format; + octet major_version; + octet minor_version; + }; + + struct Encoding_1_2 { + EncodingFormat format; + octet major_version; + octet minor_version; + CONV_FRAME::CodeSetId char_codeset; + CONV_FRAME::CodeSetId wchar_codeset; + }; + + local interface CodecFactory { + exception UnknownEncoding {}; + exception UnsupportedCodeset { + CONV_FRAME::CodeSetId codeset; + }; + + Codec create_codec (in Encoding enc) raises (UnknownEncoding); + Codec create_codec_with_codesets (in Encoding_1_2 enc) raises (UnknownEncoding, UnsupportedCodeset); + }; +}; + +#pragma prefix "" + +#endif /* TAO_IOP_CODEC_PIDL */ |