blob: 48bdfb53d4b3c2c7aae52be7037f91ef4d3b4d87 [file] [log] [blame]
// File: IOP_N.idl
// These definitions are intended to be added to the IOP module in
// version "N" of CORBA. At that time, all references to the IOP_N
// module should be changed appropriately and this file should not
// be separate from <IOP.idl>.
#ifndef _IOP_N_IDL_
#define _IOP_N_IDL_
#ifndef CORBA3
#define local
#endif
#include <orb.idl>
#include <IOP.idl>
#pragma prefix "omg.org"
module IOP_N {
typedef sequence<IOP::TaggedComponent> TaggedComponentSeq;
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;
};
interface CodecFactory {
exception UnknownEncoding {};
Codec create_codec (in Encoding enc) raises (UnknownEncoding);
};
};
#endif // _IOP_N_IDL_