Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

GIOPC.h

Go to the documentation of this file.
00001 /* -*- C++ -*- $Id: GIOPC.h,v 1.1.1.4 2003/02/21 18:36:44 chad Exp $ */
00002 
00003 
00004 //=============================================================================
00005 /**
00006  *  @file   GIOPC.h
00007  *
00008  *  $Id: GIOPC.h,v 1.1.1.4 2003/02/21 18:36:44 chad Exp $
00009 
00010  *
00011  * Generated from GIOP1_2.pidl, that contains a part of the new data
00012  * type definitions for GIOP1.2 module.
00013  * The code was generated by the IDL compiler and then hand-crafted
00014  * to reduce the includes interdependencies.
00015  * hand crafted by Balachandran Natarajan <bala@cs.wustl.edu>
00016  *
00017  */
00018 //=============================================================================
00019 
00020 // ******  Code generated by the The ACE ORB (TAO) IDL Compiler *******
00021 // TAO and the TAO IDL Compiler have been developed by the Center for
00022 // Distributed Object Computing at Washington University, St. Louis.
00023 //
00024 // Information about TAO is available at:
00025 //                 http://www.cs.wustl.edu/~schmidt/TAO.html
00026 
00027 // Readers Note:
00028 // This file is named GIOPC.h intentionally. Shortly the file GIOP.h
00029 // in $TAO_ROOT/ta would dissappear giving way to new files once the
00030 // pluggable messaging stuff is done. So I would assume that there
00031 // should be no such name clashes.
00032 
00033 #ifndef _TAO_IDL_GIOPC_H_
00034 #define _TAO_IDL_GIOPC_H_
00035 #include "ace/pre.h"
00036 
00037 #include "tao/corbafwd.h"
00038 #include "tao/IOPC.h"
00039 #include "tao/Object_KeyC.h"
00040 
00041 #if defined (ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION)
00042 #include "ace/streams.h"
00043 #endif /* ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION */
00044 
00045 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00046 # pragma once
00047 #endif /* ACE_LACKS_PRAGMA_ONCE */
00048 
00049 
00050 #if defined (TAO_EXPORT_MACRO)
00051 #undef TAO_EXPORT_MACRO
00052 #endif
00053 #define TAO_EXPORT_MACRO TAO_Export
00054 
00055 #if defined (TAO_EXPORT_NESTED_CLASSES)
00056 #  if defined (TAO_EXPORT_NESTED_MACRO)
00057 #    undef TAO_EXPORT_NESTED_MACRO
00058 #  endif /* defined (TAO_EXPORT_NESTED_MACRO) */
00059 #  define TAO_EXPORT_NESTED_MACRO TAO_Export
00060 #endif /* TAO_EXPORT_NESTED_CLASSES */
00061 
00062 #if defined(_MSC_VER)
00063 #if (_MSC_VER >= 1200)
00064 #pragma warning(push)
00065 #endif /* _MSC_VER >= 1200 */
00066 #pragma warning(disable:4250)
00067 #endif /* _MSC_VER */
00068 
00069 TAO_NAMESPACE  GIOP
00070 {
00071   typedef CORBA::Short AddressingDisposition;
00072   typedef CORBA::Short_out AddressingDisposition_out;
00073     TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_AddressingDisposition;
00074 
00075   TAO_NAMESPACE_STORAGE_CLASS const CORBA::Short KeyAddr;
00076 
00077   TAO_NAMESPACE_STORAGE_CLASS const CORBA::Short ProfileAddr;
00078 
00079   TAO_NAMESPACE_STORAGE_CLASS const CORBA::Short ReferenceAddr;
00080 
00081 
00082   struct IORAddressingInfo;
00083   class IORAddressingInfo_var;
00084 
00085   struct TAO_Export IORAddressingInfo
00086   {
00087 
00088 #if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
00089     typedef IORAddressingInfo_var _var_type;
00090 #endif /* ! __GNUC__ || g++ >= 2.8 */
00091     static void _tao_any_destructor (void*);
00092 
00093     CORBA::ULong selected_profile_index;
00094     IOP::IOR ior;
00095   };
00096 
00097   class TAO_Export IORAddressingInfo_var
00098   {
00099   public:
00100     IORAddressingInfo_var (void); // default constructor
00101     IORAddressingInfo_var (IORAddressingInfo *);
00102     IORAddressingInfo_var (const IORAddressingInfo_var &); // copy constructor
00103     ~IORAddressingInfo_var (void); // destructor
00104 
00105     IORAddressingInfo_var &operator= (IORAddressingInfo *);
00106     IORAddressingInfo_var &operator= (const IORAddressingInfo_var &);
00107     IORAddressingInfo *operator-> (void);
00108     const IORAddressingInfo *operator-> (void) const;
00109 
00110     operator const IORAddressingInfo &() const;
00111     operator IORAddressingInfo &();
00112     operator IORAddressingInfo &() const;
00113     // in, inout, out, _retn
00114     const IORAddressingInfo &in (void) const;
00115     IORAddressingInfo &inout (void);
00116     IORAddressingInfo *&out (void);
00117     IORAddressingInfo *_retn (void);
00118     IORAddressingInfo *ptr (void) const;
00119 
00120   private:
00121     IORAddressingInfo *ptr_;
00122   };
00123 
00124   class TAO_Export IORAddressingInfo_out
00125   {
00126   public:
00127     IORAddressingInfo_out (IORAddressingInfo *&);
00128     IORAddressingInfo_out (IORAddressingInfo_var &);
00129     IORAddressingInfo_out (const IORAddressingInfo_out &);
00130     IORAddressingInfo_out &operator= (const IORAddressingInfo_out &);
00131     IORAddressingInfo_out &operator= (IORAddressingInfo *);
00132     operator IORAddressingInfo *&();
00133     IORAddressingInfo *&ptr (void);
00134     IORAddressingInfo *operator-> (void);
00135 
00136   private:
00137     IORAddressingInfo *&ptr_;
00138     // assignment from T_var not allowed
00139     void operator= (const IORAddressingInfo_var &);
00140   };
00141 
00142   TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_IORAddressingInfo;
00143 
00144 
00145   class TargetAddress;
00146   class TargetAddress_var;
00147 
00148   class TAO_Export TargetAddress
00149   {
00150   public:
00151     TargetAddress (void); // default constructor
00152     TargetAddress (const TargetAddress &); // copy constructor
00153     ~TargetAddress (void); // destructor
00154     TargetAddress &operator= (const TargetAddress &); // copy constructor
00155 
00156     void _d (CORBA::Short);
00157     CORBA::Short _d (void) const;
00158 
00159 #if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
00160     typedef TargetAddress_var _var_type;
00161 #endif /* ! __GNUC__ || g++ >= 2.8 */
00162     static void _tao_any_destructor (void*);
00163 
00164 
00165     void object_key (const TAO_ObjectKey &);// set
00166     const TAO_ObjectKey &object_key (void) const; // get method (read only)
00167     TAO_ObjectKey &object_key (void); // get method (read/write only)
00168 
00169     void profile (const IOP::TaggedProfile &);// set
00170     const IOP::TaggedProfile &profile (void) const; // get method (read only)
00171     IOP::TaggedProfile &profile (void); // get method (read/write only)
00172 
00173     void ior (const ACE_NESTED_CLASS (GIOP, IORAddressingInfo) &);// set
00174     const ACE_NESTED_CLASS (GIOP, IORAddressingInfo) &ior (void) const; // get method (read only)
00175     ACE_NESTED_CLASS (GIOP, IORAddressingInfo) &ior (void); // get method (read/write only)
00176 
00177     void _default ();
00178   private:
00179     CORBA::Short disc_;
00180     union
00181     {
00182       TAO_ObjectKey *object_key_;
00183       IOP::TaggedProfile *profile_;
00184       ACE_NESTED_CLASS (GIOP, IORAddressingInfo) *ior_;
00185     } u_; // end of union
00186   // TAO extensions
00187   void _reset (CORBA::Short, CORBA::Boolean);
00188   // Frees any allocated storage
00189 
00190   void _reset (void);
00191   // calls the above reset with finalize=1
00192 
00193 }; // GIOP::TargetAddress
00194 
00195 TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_TargetAddress;
00196 
00197 class TAO_Export TargetAddress_var
00198 {
00199 public:
00200   TargetAddress_var (void); // default constructor
00201   TargetAddress_var (TargetAddress *);
00202   TargetAddress_var (const TargetAddress_var &); // copy constructor
00203   ~TargetAddress_var (void); // destructor
00204 
00205   TargetAddress_var &operator= (TargetAddress *);
00206   TargetAddress_var &operator= (const TargetAddress_var &);
00207   TargetAddress *operator-> (void);
00208   const TargetAddress *operator-> (void) const;
00209 
00210   operator const TargetAddress &() const;
00211   operator TargetAddress &();
00212   operator TargetAddress &() const;
00213   // in, inout, out, _retn
00214   const TargetAddress &in (void) const;
00215   TargetAddress &inout (void);
00216   TargetAddress *&out (void);
00217   TargetAddress *_retn (void);
00218   TargetAddress *ptr(void) const;
00219 
00220 private:
00221   TargetAddress *ptr_;
00222 };
00223 
00224 class TAO_Export TargetAddress_out
00225 {
00226 public:
00227   TargetAddress_out (TargetAddress *&);
00228   TargetAddress_out (TargetAddress_var &);
00229   TargetAddress_out (const TargetAddress_out &);
00230   TargetAddress_out &operator= (const TargetAddress_out &);
00231   TargetAddress_out &operator= (TargetAddress *);
00232   operator TargetAddress *&();
00233   TargetAddress *&ptr (void);
00234   TargetAddress *operator-> (void);
00235 
00236 private:
00237   TargetAddress *&ptr_;
00238   // assignment from T_var not allowed
00239   void operator= (const TargetAddress_var &);
00240 };
00241 
00242 // We dont have the _var _out for this struct. If need arises we can
00243 // add them later. For the present the Version struct alone should be
00244 // sufficient
00245 struct TAO_Export Version
00246 {
00247   CORBA::Octet major;
00248   CORBA::Octet minor;
00249 };
00250 
00251 class  TAO_Export Version_var
00252 {
00253 public:
00254   Version_var (void);
00255   Version_var (Version *);
00256   Version_var (const Version_var &);
00257   // Fixed-size types only.
00258   Version_var (const Version &);
00259   ~Version_var (void);
00260 
00261   Version_var &operator= (Version *);
00262   Version_var &operator= (const Version_var &);
00263   // Fixed-size types only.
00264   Version_var &operator= (const Version &);
00265   Version *operator-> (void);
00266   const Version *operator-> (void) const;
00267 
00268   operator const Version &() const;
00269   operator Version &();
00270   operator Version &() const;
00271 
00272   // in, inout, out, _retn
00273   const Version &in (void) const;
00274   Version &inout (void);
00275   Version &out (void);
00276   Version _retn (void);
00277   Version *ptr (void) const;
00278 
00279 private:
00280   Version *ptr_;
00281 };
00282 
00283 typedef Version &Version_out;
00284 
00285 TAO_NAMESPACE_STORAGE_CLASS ::CORBA::TypeCode_ptr _tc_Version;
00286 
00287 }
00288 TAO_NAMESPACE_CLOSE // module GIOP
00289 
00290 TAO_Export void operator<<= (CORBA::Any &,
00291                              const GIOP::IORAddressingInfo &); // copying version
00292 TAO_Export void operator<<= (CORBA::Any &,
00293                              GIOP::IORAddressingInfo*); // noncopying version
00294 TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &,
00295                                        GIOP::IORAddressingInfo *&); // deprecated
00296 TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &,
00297                                        const GIOP::IORAddressingInfo *&);
00298 TAO_Export void operator<<= (CORBA::Any &,
00299                              const GIOP::TargetAddress &); // copying version
00300 TAO_Export void operator<<= (CORBA::Any &,
00301                              GIOP::TargetAddress*); // noncopying version
00302 TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &,
00303                                        GIOP::TargetAddress *&); // deprecated
00304 TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &,
00305                                        const GIOP::TargetAddress *&);
00306 
00307 #ifndef __ACE_INLINE__
00308 
00309 TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const GIOP::IORAddressingInfo &);
00310 TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, GIOP::IORAddressingInfo &);
00311 TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const GIOP::TargetAddress &); //
00312 TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, GIOP::TargetAddress &);
00313 TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const GIOP::Version &);
00314 TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, GIOP::Version &);
00315 
00316 #endif /* __ACE_INLINE__ */
00317 
00318 
00319 #if defined (__ACE_INLINE__)
00320 #include "GIOPC.i"
00321 #endif /* defined INLINE */
00322 
00323 #if defined(_MSC_VER) && (_MSC_VER >= 1200)
00324 #pragma warning(pop)
00325 #endif /* _MSC_VER */
00326 
00327 #include "ace/post.h"
00328 #endif /* ifndef */

Generated on Mon Jun 16 13:48:27 2003 for TAO by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002