00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file GIOP_Message_Locate_Header.h 00006 * 00007 * $Id: GIOP_Message_Locate_Header.h 76407 2007-01-08 19:41:10Z johnnyw $ 00008 * 00009 * Some assorted GIOP structure mappings 00010 * 00011 * 00012 * @author Balachandran Natarajan <bala@cs.wustl.edu> 00013 */ 00014 //============================================================================= 00015 00016 00017 #ifndef TAO_GIOP_MESSAGE_LOCATE_HEADER_H 00018 #define TAO_GIOP_MESSAGE_LOCATE_HEADER_H 00019 00020 #include /**/ "ace/pre.h" 00021 00022 #include "tao/Tagged_Profile.h" 00023 00024 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00025 # pragma once 00026 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00027 00028 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00029 00030 /** 00031 * @class TAO_GIOP_Locate_Request_Header 00032 * 00033 * @brief Location service support 00034 */ 00035 class TAO_GIOP_Locate_Request_Header 00036 { 00037 public: 00038 00039 /// Constructor 00040 TAO_GIOP_Locate_Request_Header (TAO_InputCDR &msg, 00041 TAO_ORB_Core *core); 00042 00043 /// Set the id 00044 void request_id (CORBA::ULong id); 00045 00046 /// Get the request id 00047 CORBA::ULong request_id (void) const; 00048 00049 /// Get the object_key in read mode.. 00050 const TAO::ObjectKey &object_key (void) const; 00051 00052 /// Get the object_key in read/write mode.. 00053 TAO::ObjectKey &object_key (void); 00054 00055 /// Get the reference to the underlying profile 00056 TAO_Tagged_Profile &profile (void); 00057 00058 /// Get the CDR stream for read/write 00059 TAO_InputCDR &incoming_stream (void); 00060 00061 private: 00062 /// Request id 00063 CORBA::ULong request_id_; 00064 00065 /// Profile info. 00066 TAO_Tagged_Profile profile_; 00067 00068 /// Object Key 00069 TAO::ObjectKey object_key_; 00070 00071 /// Incoming CDR stream 00072 TAO_InputCDR *incoming_; 00073 }; 00074 00075 TAO_END_VERSIONED_NAMESPACE_DECL 00076 00077 #if defined (__ACE_INLINE__) 00078 # include "tao/GIOP_Message_Locate_Header.inl" 00079 #endif /* __ACE_INLINE__ */ 00080 00081 #include /**/ "ace/post.h" 00082 #endif /*TAO_GIOP_MESSAGE_LOCATE_HEADER_H*/