00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file CSI_Utils.h 00006 * 00007 * CSI_Utils.h,v 1.4 2005/11/16 07:53:25 ossama Exp 00008 * 00009 * @author Ossama Othman <ossama@dre.vanderbilt.edu> 00010 */ 00011 //============================================================================= 00012 00013 00014 #ifndef TAO_CSI_UTILS_H 00015 #define TAO_CSI_UTILS_H 00016 00017 // No need to include "ace/pre.h" and "ace/post.h". This header and 00018 // the declared types/variables are not meant to be used outside TAO's 00019 // CSIv2 implementation. 00020 00021 #include "tao/orbconf.h" 00022 #include "tao/Versioned_Namespace.h" 00023 00024 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00025 00026 // Forward declarations 00027 namespace IOP 00028 { 00029 struct ServiceContext; 00030 } 00031 00032 namespace CSI 00033 { 00034 class SASContextBody; 00035 } 00036 00037 namespace TAO 00038 { 00039 namespace CSI_Utils 00040 { 00041 /// Populate given IOP::ServiceContext with given CSI::SASContextBody. 00042 void create_sas_service_context (const CSI::SASContextBody & sas_context, 00043 IOP::ServiceContext & sc); 00044 00045 /// Extract CSI::SASContextBody from given IOP::ServiceContext. 00046 /** 00047 * @return Success == true, Failure == false. 00048 */ 00049 bool extract_sas_service_context (const IOP::ServiceContext & sc, 00050 CSI::SASContextBody & sas_context); 00051 } 00052 } 00053 00054 TAO_END_VERSIONED_NAMESPACE_DECL 00055 00056 #endif /* TAO_CSI_UTILS_H */