CDR.h File Reference

#include "tao/orbconf.h"
#include "tao/Basic_Types.h"
#include "tao/GIOP_Message_Version.h"
#include "ace/CDR_Stream.h"
#include "tao/CDR.inl"

Include dependency graph for CDR.h:

This graph shows which files directly or indirectly include this file:


class  TAO_OutputCDR
 A CDR stream for writing, i.e. for marshalling. More...
class  TAO_InputCDR
 A CDR stream for reading, i.e. for demarshalling. More...

Detailed Description

CDR.h 79012 2007-07-24 14:21:05Z johnnyw

Common Data Representation (CDR) marshaling streams.

This implementation assumes that the native numeric representation is two's complement for integers, IEEE single/double for floats. Also that characters are in ISO Latin/1.

Note that CDR itself makes no such assumptions, but this implementation makes such assumptions for reasons of efficiency. Careful enhancements could preserve that efficiency where the assumptions are true, yet still allow the code to work when they aren't true.

The implementation expects that buffers are aligned according to the strongest CDR alignment restriction.

NOTE: this does everything "CDR 1.1" does ... that is, it supports the five extended OMG-IDL data types in UNO Appendix A, which provide richer arithmetic types (64 bit integers, "quad precision" FP) and UNICODE-based characters and strings. Those types are not standard parts of OMG-IDL at this time.

THREADING NOTE: CDR data structures must be protected against concurrent access by their owning thread.

Copyright 1994-1995 by Sun Microsystems Inc.

Aniruddha Gokhale

Carlos O'Ryan

Generated on Fri Dec 14 03:36:31 2007 for TAO by  doxygen 1.5.3-6