Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

DC_BasicDatabase.cpp

00001 // 00002 // Copyright 2004 P&P Software GmbH - All Rights Reserved 00003 // 00004 // DC_BasicDatabase.cpp 00005 // 00006 // Version 1.0 00007 // Date 12.10.02 00008 // Author A. Pasetti (P&P Software) 00009 00010 #include "../GeneralInclude/CompilerSwitches.h" 00011 #include "../GeneralInclude/DebugSupport.h" 00012 #include "../GeneralInclude/BasicTypes.h" 00013 #include "../GeneralInclude/ClassId.h" 00014 #include "../GeneralInclude/Constants.h" 00015 #include "DC_BasicDatabase.h" 00016 00017 DC_BasicDatabase::DC_BasicDatabase(void) { 00018 setClassId(ID_BASICDATABASE); 00019 pDefaultTable = pNULL; 00020 pOperationalTable = pNULL; 00021 resetWasCalled = false; 00022 tableLength = 0; 00023 } 00024 00025 void DC_BasicDatabase::reset(void) { 00026 assert( (pDefaultTable != pNULL) && (pOperationalTable != pNULL) ); 00027 assert( tableLength > 0 ); 00028 for (TD_DatabaseId i=0; i<tableLength; i++) 00029 pOperationalTable[i] = pDefaultTable[i]; 00030 resetWasCalled = true; 00031 } 00032 00033 void DC_BasicDatabase::setTableLength(TD_DatabaseId length) { 00034 assert( length > 0 ); 00035 tableLength = length; 00036 } 00037 00038 TD_DatabaseId DC_BasicDatabase::getTableLength(void) { 00039 return tableLength; 00040 } 00041 00042 void DC_BasicDatabase::setDefaultTable(char* pDefTable) { 00043 assert( pDefTable != pNULL ); 00044 pDefaultTable = pDefTable; 00045 } 00046 00047 void DC_BasicDatabase::setOperationalTable(char* pOperTable) { 00048 assert( pOperTable != pNULL ); 00049 pOperationalTable = pOperTable; 00050 } 00051 00052 bool DC_BasicDatabase::isObjectConfigured(void) { 00053 return (CC_RootObject::isObjectConfigured() && tableLength>0 && 00054 pDefaultTable!=pNULL && pOperationalTable!=pNULL && resetWasCalled); 00055 } 00056 00057 // ------------------------------------------------------------------------- 00058 00059 void DC_BasicDatabase::setParameter(TD_DatabaseId parId, unsigned int newValue) { 00060 assert( pOperationalTable != pNULL ); 00061 *( (unsigned int*)(pOperationalTable+parId) ) = newValue; 00062 } 00063 00064 void DC_BasicDatabase::setParameter(TD_DatabaseId parId, int newValue) { 00065 assert( pOperationalTable != pNULL ); 00066 *( (int*)(pOperationalTable+parId) ) = newValue; 00067 } 00068 00069 void DC_BasicDatabase::setParameter(TD_DatabaseId parId, unsigned short newValue) { 00070 assert( pOperationalTable != pNULL ); 00071 *( (unsigned short*)(pOperationalTable+parId) ) = newValue; 00072 } 00073 00074 void DC_BasicDatabase::setParameter(TD_DatabaseId parId, short newValue) { 00075 assert( pOperationalTable != pNULL ); 00076 *( (short*)(pOperationalTable+parId) ) = newValue; 00077 } 00078 00079 void DC_BasicDatabase::setParameter(TD_DatabaseId parId, bool newValue) { 00080 assert( pOperationalTable != pNULL ); 00081 *( (bool*)(pOperationalTable+parId) ) = newValue; 00082 } 00083 00084 void DC_BasicDatabase::setParameter(TD_DatabaseId parId, char newValue) { 00085 assert( pOperationalTable != pNULL ); 00086 *( (char*)(pOperationalTable+parId) ) = newValue; 00087 } 00088 00089 void DC_BasicDatabase::setParameter(TD_DatabaseId parId, unsigned char newValue) { 00090 assert( pOperationalTable != pNULL ); 00091 *( (unsigned char*)(pOperationalTable+parId) ) = newValue; 00092 } 00093 00094 void DC_BasicDatabase::setParameter(TD_DatabaseId parId, float newValue) { 00095 assert( pOperationalTable != pNULL ); 00096 *( (float*)(pOperationalTable+parId) ) = newValue; 00097 } 00098 00099 void DC_BasicDatabase::setParameter(TD_DatabaseId parId, double newValue) { 00100 assert( pOperationalTable != pNULL ); 00101 *( (double*)(pOperationalTable+parId) ) = newValue; 00102 } 00103 00104 // ------------------------------------------------------------------------- 00105 00106 unsigned int DC_BasicDatabase::getParameterUnsignedInt(TD_DatabaseId parId) { 00107 assert( pOperationalTable != pNULL ); 00108 return *(unsigned int*)(pOperationalTable+parId); 00109 } 00110 00111 int DC_BasicDatabase::getParameterInt(TD_DatabaseId parId) { 00112 assert( pOperationalTable != pNULL ); 00113 return *(int*)(pOperationalTable+parId); 00114 } 00115 00116 unsigned short DC_BasicDatabase::getParameterUnsignedShort(TD_DatabaseId parId) { 00117 assert( pOperationalTable != pNULL ); 00118 return *(unsigned short*)(pOperationalTable+parId); 00119 } 00120 00121 short DC_BasicDatabase::getParameterShort(TD_DatabaseId parId) { 00122 assert( pOperationalTable != pNULL ); 00123 return *(short*)(pOperationalTable+parId); 00124 } 00125 00126 unsigned char DC_BasicDatabase::getParameterUnsignedChar(TD_DatabaseId parId) { 00127 assert( pOperationalTable != pNULL ); 00128 return *(unsigned char*)(pOperationalTable+parId); 00129 } 00130 00131 char DC_BasicDatabase::getParameterChar(TD_DatabaseId parId) { 00132 assert( pOperationalTable != pNULL ); 00133 return *(char*)(pOperationalTable+parId); 00134 } 00135 00136 bool DC_BasicDatabase::getParameterBool(TD_DatabaseId parId) { 00137 assert( pOperationalTable != pNULL ); 00138 return *(bool*)(pOperationalTable+parId); 00139 } 00140 00141 float DC_BasicDatabase::getParameterFloat(TD_DatabaseId parId) { 00142 assert( pOperationalTable != pNULL ); 00143 return *(float*)(pOperationalTable+parId); 00144 } 00145 00146 double DC_BasicDatabase::getParameterDouble(TD_DatabaseId parId) { 00147 assert( pOperationalTable != pNULL ); 00148 return *(double*)(pOperationalTable+parId); 00149 } 00150 00151 // ------------------------------------------------------------------------- 00152 00153 unsigned int* DC_BasicDatabase::getParameterPointerUnsignedInt(TD_DatabaseId parId) { 00154 assert( pOperationalTable != pNULL ); 00155 return (unsigned int*)(pOperationalTable+parId); 00156 } 00157 00158 int* DC_BasicDatabase::getParameterPointerInt(TD_DatabaseId parId) { 00159 assert( pOperationalTable != pNULL ); 00160 return (int*)(pOperationalTable+parId); 00161 } 00162 00163 unsigned short* DC_BasicDatabase::getParameterPointerUnsignedShort(TD_DatabaseId parId) { 00164 assert( pOperationalTable != pNULL ); 00165 return (unsigned short*)(pOperationalTable+parId); 00166 } 00167 00168 short* DC_BasicDatabase::getParameterPointerShort(TD_DatabaseId parId) { 00169 assert( pOperationalTable != pNULL ); 00170 return (short*)(pOperationalTable+parId); 00171 } 00172 00173 unsigned char* DC_BasicDatabase::getParameterPointerUnsignedChar(TD_DatabaseId parId) { 00174 assert( pOperationalTable != pNULL ); 00175 return (unsigned char*)(pOperationalTable+parId); 00176 } 00177 00178 char* DC_BasicDatabase::getParameterPointerChar(TD_DatabaseId parId) { 00179 assert( pOperationalTable != pNULL ); 00180 return (char*)(pOperationalTable+parId); 00181 } 00182 00183 bool* DC_BasicDatabase::getParameterPointerBool(TD_DatabaseId parId) { 00184 assert( pOperationalTable != pNULL ); 00185 return (bool*)(pOperationalTable+parId); 00186 } 00187 00188 float* DC_BasicDatabase::getParameterPointerFloat(TD_DatabaseId parId) { 00189 assert( pOperationalTable != pNULL ); 00190 return (float*)(pOperationalTable+parId); 00191 } 00192 00193 double* DC_BasicDatabase::getParameterPointerDouble(TD_DatabaseId parId) { 00194 assert( pOperationalTable != pNULL ); 00195 return (double*)(pOperationalTable+parId); 00196 }
Copyright 2003 P&P Software GmbH - All Rights Reserved