00001 00045 #define _EXPORT_CCL_ 00046 00047 #include "CigiBaseAerosolResp.h" 00048 #include "CigiSwapping.h" 00049 #include "CigiExceptions.h" 00050 00051 00052 // ==================================================================== 00053 // Construction/Destruction 00054 // ==================================================================== 00055 00056 00057 // ================================================ 00058 // CigiBaseAerosolResp 00059 // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 00060 CigiBaseAerosolResp::CigiBaseAerosolResp() 00061 { 00062 00063 } 00064 00065 00066 00067 // ================================================ 00068 // ~CigiBaseAerosolResp 00069 // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 00070 CigiBaseAerosolResp::~CigiBaseAerosolResp() 00071 { 00072 00073 } 00074 00075 // ==================================================================== 00076 // Conversion Control 00077 // ==================================================================== 00078 00079 00080 // ================================================ 00081 // GetCnvt 00082 // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 00083 int CigiBaseAerosolResp::GetCnvt(CigiVersionID &CnvtVersion, 00084 CigiCnvtInfoType::Type &CnvtInfo) 00085 { 00086 if(CnvtVersion.CigiMajorVersion < 3) 00087 { 00088 CnvtInfo.ProcID = CigiProcessType::ProcNone; 00089 CnvtInfo.CnvtPacketID = 0; 00090 } 00091 else 00092 { 00093 CnvtInfo.ProcID = CigiProcessType::ProcStd; 00094 CnvtInfo.CnvtPacketID = CIGI_AEROSOL_RESP_PACKET_ID_V3; 00095 } 00096 00097 return(CIGI_SUCCESS); 00098 } 00099 00100 // ==================================================================== 00101 // Accessors 00102 // ==================================================================== 00103 00104 00105 // ================================================ 00106 // AerosolConcentration 00107 // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 00108 int CigiBaseAerosolResp::SetAerosolConcentration(const float AerosolConcentrationIn, bool bndchk) 00109 { 00110 00111 #ifndef CIGI_NO_BND_CHK 00112 if(bndchk && (AerosolConcentrationIn < 0.0)) 00113 { 00114 #ifndef CIGI_NO_EXCEPT 00115 throw CigiValueOutOfRangeException("AerosolConcentration",(float)AerosolConcentrationIn,">",0.0); 00116 #endif 00117 return(CIGI_ERROR_VALUE_OUT_OF_RANGE); 00118 } 00119 #endif 00120 00121 AerosolConcentration = AerosolConcentrationIn; 00122 return(CIGI_SUCCESS); 00123 00124 } 00125 00126