summaryrefslogtreecommitdiff
path: root/TAO/tao/CDR.h
diff options
context:
space:
mode:
authorcoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-03-30 01:11:58 +0000
committercoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-03-30 01:11:58 +0000
commit05d0ae9686ed8cc2ec6502352f4b5b90049ad713 (patch)
tree6403dda108f9ce718bfe1c6a641d459fad0bf38f /TAO/tao/CDR.h
parent25375f67eb4b821475b9cdb9583cfa438cc67a9d (diff)
downloadATCD-05d0ae9686ed8cc2ec6502352f4b5b90049ad713.tar.gz
ChangeLogTag:Mon Mar 29 19:10:09 1999 Carlos O'Ryan <coryan@cs.wustl.edu>
Diffstat (limited to 'TAO/tao/CDR.h')
-rw-r--r--TAO/tao/CDR.h24
1 files changed, 19 insertions, 5 deletions
diff --git a/TAO/tao/CDR.h b/TAO/tao/CDR.h
index f51a406525a..0a100768379 100644
--- a/TAO/tao/CDR.h
+++ b/TAO/tao/CDR.h
@@ -47,6 +47,8 @@
#include "tao/corbafwd.h"
#include "tao/Typecode.h"
+class TAO_ORB_Core;
+
class TAO_Export TAO_OutputCDR : public ACE_OutputCDR
{
//
@@ -157,22 +159,26 @@ public:
TAO_InputCDR (const char* buf,
size_t bufsiz,
- int byte_order = ACE_CDR_BYTE_ORDER);
+ int byte_order = ACE_CDR_BYTE_ORDER,
+ TAO_ORB_Core* orb_core = 0);
// Create an input stream from an arbitrary buffer, care must be
// exercised wrt alignment, because this contructor will *not* work
// if the buffer is unproperly aligned.
TAO_InputCDR (size_t bufsiz,
- int byte_order = ACE_CDR_BYTE_ORDER);
+ int byte_order = ACE_CDR_BYTE_ORDER,
+ TAO_ORB_Core* orb_core = 0);
// Create an empty input stream. The caller is responsible for
// putting the right data and providing the right alignment.
TAO_InputCDR (const ACE_Message_Block *data,
- int byte_order = ACE_CDR_BYTE_ORDER);
+ int byte_order = ACE_CDR_BYTE_ORDER,
+ TAO_ORB_Core* orb_core = 0);
// Create an input stream from an ACE_Message_Block
TAO_InputCDR (ACE_Data_Block *data,
- int byte_order = ACE_CDR_BYTE_ORDER);
+ int byte_order = ACE_CDR_BYTE_ORDER,
+ TAO_ORB_Core* orb_core = 0);
// Create an input stream from an ACE_Data_Block
TAO_InputCDR (const TAO_InputCDR& rhs);
@@ -198,7 +204,8 @@ public:
TAO_InputCDR (const TAO_OutputCDR& rhs,
ACE_Allocator* buffer_allocator = 0,
- ACE_Allocator* data_block_allocator = 0);
+ ACE_Allocator* data_block_allocator = 0,
+ TAO_ORB_Core* orb_core = 0);
// Create an input CDR from an output CDR.
~TAO_InputCDR (void);
@@ -221,6 +228,13 @@ public:
CORBA::default_environment ());
// Skip the contents of the CDR stream based on information
// described by <tc>; returning any errors in <TAO_IN_ENV>.
+
+ TAO_ORB_Core* orb_core (void) const;
+ // Accessor
+
+private:
+ TAO_ORB_Core* orb_core_;
+ // The ORB_Core, required to extract object references.
};
// This operators are too complex to be inline....