00001 // /******************************************************************************\ 00002 // * 00003 // * File: MethParam.h 00004 // * Creation date: May 17, 2001 11:37 00005 // * Author: ClassBuilder 00006 // * XXXX 00007 // * Purpose: Declaration of class 'SCMethParam' 00008 // * 00009 // * Modifications: @INSERT_MODIFICATIONS(* ) 00010 // * June 19, 2001 16:42 WERS 00011 // * Added member 'm_convInfo' 00012 // * Added member 'm_convId' 00013 // * June 15, 2001 15:37 WERS 00014 // * Updated interface of method 'SCMethParam' 00015 // * June 15, 2001 14:50 WERS 00016 // * Updated interface of method 'SCMethParam' 00017 // * June 15, 2001 14:48 WERS 00018 // * Updated interface of method 'SCMethParam' 00019 // * June 15, 2001 14:36 WERS 00020 // * Deleted method 'GetDynAnyPtr' 00021 // * Deleted member 'm_DynEmptyValue' 00022 // * Deleted method 'SCMethParam' 00023 // * Added method 'SCMethParam' 00024 // * Added member 'm_tc' 00025 // * May 25, 2001 14:33 WERS 00026 // * Updated member 'm_DynEmptyValue' 00027 // * May 25, 2001 14:29 WERS 00028 // * Added method 'GetDynAnyPtr' 00029 // * Updated member 'm_DynEmptyValue' 00030 // * May 18, 2001 10:41 WERS 00031 // * Updated interface of method 'ConstructorInclude' 00032 // * Updated interface of method 'SCMethParam' 00033 // * Updated relation 'InterfaceMethod(SCInterfaceMethod) <>-->> MethParam(SCMethParam)' 00034 // * Updated relation 'MethParam(SCMethParam) <>-->> ParamField(SCParamField)' 00035 // * Updated member 'm_prmName' 00036 // * Updated member 'm_DynEmptyValue' 00037 // * Updated member 'm_prmKind' 00038 // * Updated member 'm_prmId' 00039 // * May 17, 2001 11:37 WERS 00040 // * Added method 'DestructorInclude' 00041 // * Added method 'ConstructorInclude' 00042 // * Added method 'getMthId' 00043 // * Added method '~SCMethParam' 00044 // * Added method 'SCMethParam' 00045 // * Added relation 'InterfaceMethod(SCInterfaceMethod) <>-->> MethParam(SCMethParam)' 00046 // * Added relation 'MethParam(SCMethParam) <>-->> ParamField(SCParamField)' 00047 // * Added member 'm_prmName' 00048 // * Added member 'm_DynEmptyValue' 00049 // * Added member 'm_prmKind' 00050 // * Added member 'm_prmId' 00051 // * Updated return type of method 'AllocateDynAny' 00052 // * 00053 // * 00054 // \******************************************************************************/ 00055 #ifndef _METHPARAM_H 00056 #define _METHPARAM_H 00057 00058 //@START_USER1 00063 /* -------------------------------------------------------------- 00064 Copyright (C) 2001 LifeLine Networks BV <soap2corba@lifeline.nl> 00065 00066 This program is free software; you can redistribute it and/or 00067 modify it under the terms of the GNU General Public License 00068 as published by the Free Software Foundation; either 00069 version 2 of the License, or (at your option) any later 00070 version. 00071 00072 This program is distributed in the hope that it will be useful, 00073 but WITHOUT ANY WARRANTY; without even the implied warranty of 00074 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00075 GNU General Public License for more details. 00076 00077 You should have received a copy of the GNU General Public License 00078 along with this program; if not, write to the Free Software 00079 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00080 -------------------------------------------------------------- */ 00081 //@END_USER1 00082 00083 00087 class SCMethParam 00088 { 00089 // RELATION_MULTI_OWNED_PASSIVE(SCInterfaceMethod, InterfaceMethod, SCMethParam, MethParam) 00090 00091 public: 00092 SCInterfaceMethod * _refInterfaceMethod; 00093 SCMethParam * _prevInterfaceMethod; 00094 SCMethParam * _nextInterfaceMethod; 00095 00096 public: 00097 SCInterfaceMethod* GetInterfaceMethod() const { return _refInterfaceMethod; }; 00098 00099 //@START_USER2 00100 //@END_USER2 00101 00102 // Members 00103 private: 00104 00105 protected: 00106 00107 public: 00108 int m_prmId; 00109 InOutExcept m_prmKind; 00110 CString m_prmName; 00111 CORBA::TypeCode_var m_tc; 00112 int m_convId; 00113 CString m_convInfo; 00114 00115 // Methods 00116 private: 00117 void ConstructorInclude(SCInterfaceMethod* pInterfaceMethod); 00118 void DestructorInclude(); 00119 00120 protected: 00121 00122 public: 00123 SCMethParam(SCInterfaceMethod* pInterfaceMethod, int prmId, 00124 const char* prmName, InOutExcept prmKind, 00125 CORBA::TypeCode_ptr ptc, CORBA::ORB_ptr orb); 00126 virtual ~SCMethParam(); 00127 int getMthId(); 00128 }; 00129 00130 #endif 00131 00132 00133 #ifdef CB_INLINES 00134 #ifndef _METHPARAM_H_INLINES 00135 #define _METHPARAM_H_INLINES 00136 00140 inline int SCMethParam::getMthId() 00141 {//@CODE_386 00142 return GetInterfaceMethod()->m_mthId; 00143 }//@CODE_386 00144 00145 00146 00147 //@START_USER3 00148 //@END_USER3 00149 00150 #endif 00151 #endif 00152