GlobalObjects
Lade ...
Suche ...
Keine Treffer
GloTAllSet.h
gehe zur Dokumentation dieser Datei
1#ifndef INC_GLOTALLSET_H
2#define INC_GLOTALLSET_H
3//-----------------------------------------------------------------------------
36//-----------------------------------------------------------------------------
37#include <list>
38#include "GloTypes.h"
39#include "GloBaseAllSet.h"
40#include "GloBasePersistent.h"
41#include "GloBase.h"
42#include "GloObjectMaker.h"
43//-----------------------------------------------------------------------------
44namespace glo
45{
46 //---------------------------------------------------------------------------
170 template < class T > class TAllSet : public BaseAllSet
171 {
172 public:
173 //============== Konstruktoren
174 //-----------------------------------------------------------------------
184 TAllSet();
185 //-----------------------------------------------------------------------
203 TAllSet( Base & rBase, bool bWithSubClasses = true );
204 //-----------------------------------------------------------------------
224 TAllSet( Base & rBase, const std::string & rsFullIndexName );
225 //-----------------------------------------------------------------------
235 virtual ~TAllSet();
236 //-----------------------------------------------------------------------
237
238 private:
239 //============== Konstruktoren
240 //-----------------------------------------------------------------------
250 TAllSet( const TAllSet & );
251 //-----------------------------------------------------------------------
252
253 public:
254 //============== Methoden
255 //-----------------------------------------------------------------------
301 int get( T *& prRetVal, EnSeekMode eMode );
302 //-----------------------------------------------------------------------
338 int get( std::shared_ptr<T> & rRetVal, EnSeekMode eMode );
339 //-----------------------------------------------------------------------
392 int get( ObjID & rObjID, T *& prRetVal, EnSeekMode eMode );
393 //-----------------------------------------------------------------------
435 int get( ObjID & rObjID, std::shared_ptr<T> & rRetVal, EnSeekMode eMode );
436 //-----------------------------------------------------------------------
438
466 virtual int getPersistent( BasePersistent *& prRetVal, const ObjID & rObjID );
467 int get( T *& prRetVal, const ObjID & rObjID );
469 //-----------------------------------------------------------------------
487 int get( std::shared_ptr<T> & rRetVal, const ObjID & rObjID );
488 //-----------------------------------------------------------------------
504 virtual int getPersistent( std::shared_ptr<BasePersistent> & rRetVal,
505 const ObjID & rObjID );
506 //-----------------------------------------------------------------------
558 int getOndemand( TOndemand<T> *& prRetVal, EnSeekMode eMode );
559 //-----------------------------------------------------------------------
595 int getOndemand( std::shared_ptr< TOndemand<T> > & rRetVal, EnSeekMode eMode );
596 //-----------------------------------------------------------------------
633 int getOndemand( TOndemand<T> & rRetVal, EnSeekMode eMode );
634 //-----------------------------------------------------------------------
667 int getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
668 const std::string & rsIndexSearchValue,
669 EnQueryType eQuerryType );
670 //-----------------------------------------------------------------------
705 int getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
706 const std::string & rsIndexName,
707 const std::string & rsIndexSearchValue,
708 EnQueryType eQuerryType );
709 //-----------------------------------------------------------------------
749 int getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
750 const std::string & rsIndexName,
751 unsigned long ulIndexClassID,
752 const std::string & rsIndexSearchValue,
753 EnQueryType eQuerryType );
754 //-----------------------------------------------------------------------
795 int getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
796 const std::string & rsIndexSearchValue,
797 EnComparisionOp eComparisionOp );
798 //-----------------------------------------------------------------------
840 int getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
841 const std::string & rsIndexName,
842 const std::string & rsIndexSearchValue,
843 EnComparisionOp eComparisionOp );
844 //-----------------------------------------------------------------------
891 int getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
892 const std::string & rsIndexName,
893 unsigned long ulIndexClassID,
894 const std::string & rsIndexSearchValue,
895 EnComparisionOp eComparisionOp );
896 //-----------------------------------------------------------------------
929 int getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
930 const std::string & rsRangeStartIndex,
931 const std::string & rsRangeEndIndex );
932 //-----------------------------------------------------------------------
969 int getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
970 const std::string & rsIndexName,
971 const std::string & rsRangeStartIndexSearchValue,
972 const std::string & rsRangeEndIndexSearchValue );
973 //-----------------------------------------------------------------------
1016 int getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
1017 const std::string & rsIndexName,
1018 unsigned long ulIndexClassID,
1019 const std::string & rsRangeStartIndexSearchValue,
1020 const std::string & rsRangeEndIndexSearchValue );
1021 //-----------------------------------------------------------------------
1070 virtual int setWatch( TdWatchNotifyMode ulWatchMode, CallBack * pCallBack = 0 );
1071 //-----------------------------------------------------------------------
1111 virtual int unsetWatch( TdWatchNotifyMode ulWatchMode, CallBack * pCallBack = 0 );
1112 //-----------------------------------------------------------------------
1113
1114 private:
1115 //============== Methoden
1116 //-----------------------------------------------------------------------
1132 void transferObjIListIntoOndemandVector( const std::list<ObjID> & rSourceList,
1133 std::vector< TOndemand<T> > & rTargetVevtor );
1134 //-----------------------------------------------------------------------
1135
1136 //============== Operatoren
1137 //-----------------------------------------------------------------------
1148 //-----------------------------------------------------------------------
1149 };
1150 //---------------------------------------------------------------------------
1151 #define SUPER BaseAllSet
1152 //---------------------------------------------------------------------------
1153 template < class T >
1155 : SUPER()
1156 {
1157 #ifdef _DEBUG
1158 m_strDebugInfo = "TAllSet";
1159 #endif
1160 std::shared_ptr<T> t_TempT( new T, Forgeter<T>() );
1161 SUPER::setClassIDFromTemplate( t_TempT->getGloClassID() );
1162 }
1163 //---------------------------------------------------------------------------
1164 template < class T >
1165 TAllSet< T >::TAllSet( Base & rBase, bool bWithSubClasses )
1166 : SUPER( rBase, 0, bWithSubClasses )
1167 {
1168 #ifdef _DEBUG
1169 m_strDebugInfo = "TAllSet";
1170 #endif
1171 std::shared_ptr<T> t_TempT( new T, Forgeter<T>() );
1172 SUPER::setClassIDFromTemplate( t_TempT->getGloClassID() );
1173 }
1174 //---------------------------------------------------------------------------
1175 template < class T >
1176 TAllSet< T >::TAllSet( Base & rBase, const std::string & rsFullIndexName )
1177 : SUPER( rBase, 0 )
1178 {
1179 #ifdef _DEBUG
1180 m_strDebugInfo = "TAllSet";
1181 #endif
1182 std::shared_ptr<T> t_TempT( new T, Forgeter<T>() );
1183 SUPER::setClassIDFromTemplate( t_TempT->getGloClassID() );
1184 int t_iErr = SUPER::setFullIndexName( rsFullIndexName );
1185 if ( t_iErr )
1186 {
1187 throw eut::ErrorNException( "TAllSet::setBase(Base * pBase, unsigned long ulClassID, const std::string & rsFullIndexName)", t_iErr, __FILE__, __LINE__ );
1188 }
1189 }
1190 //---------------------------------------------------------------------------
1191 template < class T >
1193 {
1194 }
1195 //---------------------------------------------------------------------------
1196 template < class T >
1197 int TAllSet< T >::get( T *& prRetVal, EnSeekMode eMode )
1198 {
1199 ObjID t_TempObjID;
1200 return this->get( t_TempObjID, prRetVal, eMode );
1201 }
1202 //---------------------------------------------------------------------------
1203 template < class T >
1204 int TAllSet< T >::get( std::shared_ptr<T> & rRetVal, EnSeekMode eMode )
1205 {
1206 ObjID t_TempObjID;
1207 return this->get( t_TempObjID, rRetVal, eMode );
1208 }
1209 //---------------------------------------------------------------------------
1210 template < class T >
1211 int TAllSet< T >::get( ObjID & rObjID, T *& prRetVal, EnSeekMode eMode )
1212 {
1213 int t_iErr = 0;
1214
1215 prRetVal = 0;
1216 t_iErr = this->open();
1217 if ( ! t_iErr )
1218 {
1219 BasePersistent * t_pGetObj = 0;
1220
1221 t_iErr = this->getBase()->getObjectFromAllSet( rObjID, t_pGetObj, *this, eMode );
1222 if ( ! t_iErr )
1223 {
1224 do
1225 {
1226 prRetVal = dynamic_cast<T*>( t_pGetObj );
1227 if ( ! prRetVal )
1228 {
1229 t_pGetObj->forget();
1230
1231 if ( eMode == glo::START || eMode == glo::NEXT )
1232 {
1233 t_iErr = this->getBase()->getObjectFromAllSet( rObjID, t_pGetObj, *this, glo::NEXT );
1234 }
1235 else if ( eMode == glo::END || eMode == glo::PREVIOUS )
1236 {
1237 t_iErr = this->getBase()->getObjectFromAllSet( rObjID, t_pGetObj, *this, glo::PREVIOUS );
1238 }
1239 }
1240 else
1241 {
1242 break;
1243 }
1244 } while ( ! t_iErr );
1245 }
1246 }
1247 return t_iErr;
1248 }
1249 //---------------------------------------------------------------------------
1250 template < class T >
1251 int TAllSet< T >::get( ObjID & rObjID, std::shared_ptr<T> & rRetVal, EnSeekMode eMode )
1252 {
1253 rRetVal.reset();
1254
1255 T * t_pPersistent = 0;
1256 int t_iErr = this->get( rObjID, t_pPersistent, eMode );
1257
1258 if ( t_pPersistent )
1259 {
1260 rRetVal = std::shared_ptr<T>( t_pPersistent, Forgeter<T>() );
1261 }
1262 return t_iErr;
1263 }
1264 //---------------------------------------------------------------------------
1265 template < class T >
1266 int TAllSet< T >::getPersistent( BasePersistent *& prRetVal, const ObjID & rObjID )
1267 {
1268 int t_iErr = 0;
1269
1270 prRetVal = NULL_PTR;
1271 if ( ! this->getBase() ) return ERR_NO_BASE;
1272 if ( this->getBase()->objIDInAllSet( rObjID, *this ) )
1273 {
1274 t_iErr = this->getBase()->getAnObject( prRetVal, rObjID );
1275 }
1276 else
1277 {
1279 }
1280 return t_iErr;
1281 }
1282 //---------------------------------------------------------------------------
1283 template < class T >
1284 int TAllSet< T >::get( T *& prRetVal, const ObjID & rObjID )
1285 {
1286 int t_iErr = 0;
1287
1288 prRetVal = 0;
1289 t_iErr = this->open();
1290 if ( ! t_iErr )
1291 {
1292 BasePersistent * t_pReceivedObject = 0;
1293 if ( this->getBase()->objIDInAllSet( rObjID, *this ) )
1294 {
1295 t_iErr = this->getBase()->getAnObject( t_pReceivedObject, rObjID );
1296 if ( ! t_iErr )
1297 {
1298 prRetVal = dynamic_cast<T*>( t_pReceivedObject );
1299 if ( ! prRetVal )
1300 {
1301 t_pReceivedObject->forget();
1302 t_iErr = ERR_WRONG_TYPE;
1303 }
1304 }
1305 }
1306 else
1307 {
1309 }
1310 }
1311 return t_iErr;
1312 }
1313 //---------------------------------------------------------------------------
1314 template < class T >
1315 int TAllSet< T >::get( std::shared_ptr<T> & rRetVal, const ObjID & rObjID )
1316 {
1317 rRetVal.reset();
1318
1319 T * t_pPersistent = 0;
1320 int t_iErr = this->get( t_pPersistent, rObjID );
1321
1322 if ( t_pPersistent )
1323 {
1324 rRetVal = std::shared_ptr<T>( t_pPersistent, Forgeter<T>() );
1325 }
1326 return t_iErr;
1327 }
1328 //---------------------------------------------------------------------------
1329 template < class T >
1330 int TAllSet< T >::getPersistent( std::shared_ptr<BasePersistent> & rRetVal,
1331 const ObjID & rObjID )
1332 {
1333 return SUPER::getPersistent( rRetVal, rObjID );
1334 }
1335 //---------------------------------------------------------------------------
1336 template < class T >
1338 {
1339 int t_iErr = 0;
1340
1341 t_iErr = this->open();
1342 if ( ! t_iErr )
1343 {
1344 ObjID t_ObjID;
1345
1346 t_iErr = this->getBase()->getObjIdFromAllSet( t_ObjID, *this, eMode );
1347 if ( ! t_iErr )
1348 {
1349 // Erfragen, ob ObjID-Klasse hier verarbeitbar
1350 bool t_bIsKnownClassID = false;
1351
1352 t_iErr = this->getBase()->isKnownClassID( t_bIsKnownClassID, t_ObjID.getClassID() );
1353 if ( ! t_iErr )
1354 {
1355 if ( ! t_bIsKnownClassID )
1356 {
1357 // Unbekannte Klasse! Auch OK, dann nächstes oder vorheriges Objekt
1358 if ( eMode == START || eMode == NEXT )
1359 {
1360 t_iErr = this->getOndemand( prRetVal, NEXT );
1361 }
1362 else if ( eMode == END || eMode == PREVIOUS )
1363 {
1364 t_iErr = this->getOndemand( prRetVal, PREVIOUS );
1365 }
1366 }
1367 else
1368 {
1369 prRetVal = new TOndemand<T>( t_ObjID, * this->getBase() );
1370 }
1371 }
1372 }
1373 }
1374 return t_iErr;
1375 }
1376 //---------------------------------------------------------------------------
1377 template < class T >
1378 int TAllSet< T >::getOndemand( std::shared_ptr< TOndemand<T> > & rRetVal, EnSeekMode eMode )
1379 {
1380 rRetVal.reset();
1381
1382 TOndemand<T> * t_pTempGloTOndemand = 0;
1383 int t_iErr = this->getOndemand( t_pTempGloTOndemand, eMode );
1384
1385 if ( t_pTempGloTOndemand )
1386 {
1387 rRetVal = std::shared_ptr<T>( t_pTempGloTOndemand );
1388 }
1389 return t_iErr;
1390 }
1391 //---------------------------------------------------------------------------
1392 template < class T >
1394 {
1395 TOndemand<T> * t_pTempGloTOndemand = 0;
1396 int t_iErr = this->getOndemand( t_pTempGloTOndemand, eMode );
1397
1398 if ( t_pTempGloTOndemand )
1399 {
1400 rRetVal = * t_pTempGloTOndemand;
1401 delete t_pTempGloTOndemand;
1402 }
1403 return t_iErr;
1404 }
1405 //---------------------------------------------------------------------------
1406 template < class T >
1407 int TAllSet< T >::getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
1408 const std::string & rsIndexSearchValue,
1409 EnQueryType eQuerryType )
1410 {
1411 int t_iErr = 0;
1412 std::list< ObjID > t_ObjIDList;
1413
1414 t_iErr = this->getIndexedObjIds( t_ObjIDList,
1415 rsIndexSearchValue,
1416 eQuerryType );
1417 if ( ! t_iErr )
1418 {
1419 this->transferObjIListIntoOndemandVector( t_ObjIDList, rOndemandVector );
1420 }
1421 return t_iErr;
1422 }
1423 //---------------------------------------------------------------------------
1424 template < class T >
1425 int TAllSet< T >::getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
1426 const std::string & rsIndexName,
1427 const std::string & rsIndexSearchValue,
1428 EnQueryType eQuerryType )
1429 {
1430 int t_iErr = 0;
1431 std::list< ObjID > t_ObjIDList;
1432
1433 t_iErr = this->getIndexedObjIds( t_ObjIDList,
1434 rsIndexName,
1435 rsIndexSearchValue,
1436 eQuerryType );
1437 if ( ! t_iErr )
1438 {
1439 this->transferObjIListIntoOndemandVector( t_ObjIDList, rOndemandVector );
1440 }
1441 return t_iErr;
1442 }
1443 //---------------------------------------------------------------------------
1444 template < class T >
1445 int TAllSet< T >::getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
1446 const std::string & rsIndexName,
1447 unsigned long ulIndexClassID,
1448 const std::string & rsIndexSearchValue,
1449 EnQueryType eQuerryType )
1450 {
1451 int t_iErr = 0;
1452 std::list< ObjID > t_ObjIDList;
1453
1454 t_iErr = this->getIndexedObjIds( t_ObjIDList,
1455 rsIndexName,
1456 ulIndexClassID,
1457 rsIndexSearchValue,
1458 eQuerryType );
1459 if ( ! t_iErr )
1460 {
1461 this->transferObjIListIntoOndemandVector( t_ObjIDList, rOndemandVector );
1462 }
1463 return t_iErr;
1464 }
1465 //---------------------------------------------------------------------------
1466 template < class T >
1467 int TAllSet< T >::getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
1468 const std::string & rsIndexSearchValue,
1469 EnComparisionOp eComparisionOp )
1470 {
1471 int t_iErr = 0;
1472 std::list< ObjID > t_ObjIDList;
1473
1474 t_iErr = this->getIndexedObjIds( t_ObjIDList,
1475 rsIndexSearchValue,
1476 eComparisionOp );
1477
1478 if ( ! t_iErr )
1479 {
1480 this->transferObjIListIntoOndemandVector( t_ObjIDList, rOndemandVector );
1481 }
1482 return t_iErr;
1483 }
1484 //---------------------------------------------------------------------------
1485 template < class T >
1486 int TAllSet< T >::getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
1487 const std::string & rsIndexName,
1488 const std::string & rsIndexSearchValue,
1489 EnComparisionOp eComparisionOp )
1490 {
1491 int t_iErr = 0;
1492 std::list< ObjID > t_ObjIDList;
1493
1494 t_iErr = this->getIndexedObjIds( t_ObjIDList,
1495 rsIndexName,
1496 rsIndexSearchValue,
1497 eComparisionOp );
1498
1499 if ( ! t_iErr )
1500 {
1501 this->transferObjIListIntoOndemandVector( t_ObjIDList, rOndemandVector );
1502 }
1503 return t_iErr;
1504 }
1505 //---------------------------------------------------------------------------
1506 template < class T >
1507 int TAllSet< T >::getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
1508 const std::string & rsIndexName,
1509 unsigned long ulIndexClassID,
1510 const std::string & rsIndexSearchValue,
1511 EnComparisionOp eComparisionOp )
1512 {
1513 int t_iErr = 0;
1514 std::list< ObjID > t_ObjIDList;
1515
1516 t_iErr = this->getIndexedObjIds( t_ObjIDList,
1517 rsIndexName,
1518 ulIndexClassID,
1519 rsIndexSearchValue,
1520 eComparisionOp );
1521
1522 if ( ! t_iErr )
1523 {
1524 this->transferObjIListIntoOndemandVector( t_ObjIDList, rOndemandVector );
1525 }
1526 return t_iErr;
1527 }
1528 //---------------------------------------------------------------------------
1529 template < class T >
1530 int TAllSet< T >::getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
1531 const std::string & rsRangeStartIndex,
1532 const std::string & rsRangeEndIndex )
1533 {
1534 int t_iErr = 0;
1535 std::list< ObjID > t_ObjIDList;
1536
1537 t_iErr = this->getIndexedObjIds( t_ObjIDList,
1538 rsRangeStartIndex,
1539 rsRangeEndIndex );
1540
1541 if ( ! t_iErr )
1542 {
1543 this->transferObjIListIntoOndemandVector( t_ObjIDList, rOndemandVector );
1544 }
1545 return t_iErr;
1546 }
1547 //---------------------------------------------------------------------------
1548 template < class T >
1549 int TAllSet< T >::getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
1550 const std::string & rsIndexName,
1551 const std::string & rsRangeStartIndexSearchValue,
1552 const std::string & rsRangeEndIndexSearchValue )
1553 {
1554 int t_iErr = 0;
1555 std::list< ObjID > t_ObjIDList;
1556
1557 t_iErr = this->getIndexedObjIds( t_ObjIDList,
1558 rsIndexName,
1559 rsRangeStartIndexSearchValue,
1560 rsRangeEndIndexSearchValue );
1561
1562 if ( ! t_iErr )
1563 {
1564 this->transferObjIListIntoOndemandVector( t_ObjIDList, rOndemandVector );
1565 }
1566 return t_iErr;
1567 }
1568 //---------------------------------------------------------------------------
1569 template < class T >
1570 int TAllSet< T >::getIndexedOndemands( std::vector< TOndemand<T> > & rOndemandVector,
1571 const std::string & rsIndexName,
1572 unsigned long ulIndexClassID,
1573 const std::string & rsRangeStartIndexSearchValue,
1574 const std::string & rsRangeEndIndexSearchValue )
1575 {
1576 int t_iErr = 0;
1577 std::list< ObjID > t_ObjIDList;
1578
1579 t_iErr = this->getIndexedObjIds( t_ObjIDList,
1580 rsIndexName,
1581 ulIndexClassID,
1582 rsRangeStartIndexSearchValue,
1583 rsRangeEndIndexSearchValue );
1584
1585 if ( ! t_iErr )
1586 {
1587 this->transferObjIListIntoOndemandVector( t_ObjIDList, rOndemandVector );
1588 }
1589 return t_iErr;
1590 }
1591 //---------------------------------------------------------------------------
1592 template < class T >
1593 int TAllSet< T >::setWatch( TdWatchNotifyMode ulWatchMode, CallBack * pCallBack )
1594 {
1595 int t_iErr = this->open();
1596
1597 if ( ! t_iErr )
1598 {
1599 if ( ! this->getBase()->getObjectMaker() ) t_iErr = ERR_BASE_NOT_OPEN;
1600 if ( ! t_iErr )
1601 {
1602 if ( ! pCallBack )
1603 {
1604 TAllSet< T > * t_pConstCastThis = const_cast<TAllSet< T >*>( this );
1605
1606 pCallBack = t_pConstCastThis;
1607 }
1608 t_iErr = this->getBase()->setWatchClass( this->getBase()->getObjectMaker()->getClassID( this ),
1609 ulWatchMode,
1610 pCallBack );
1611 }
1612 }
1613 return t_iErr;
1614 }
1615 //---------------------------------------------------------------------------
1616 template < class T >
1618 {
1619 if ( ! this->getBase() ) return ERR_NO_BASE;
1620 if ( ! this->getBase()->getObjectMaker() ) return ERR_BASE_NOT_OPEN;
1621
1622 if ( ! pCallBack )
1623 {
1624 TAllSet< T > * t_pConstCastThis = const_cast<TAllSet< T >*>( this );
1625
1626 pCallBack = t_pConstCastThis;
1627 }
1628 return this->getBase()->unsetWatchClass( this->getBase()->getObjectMaker()->getClassID( this ),
1629 ulWatchMode, pCallBack );
1630 }
1631 //---------------------------------------------------------------------------
1632 template < class T >
1633 void TAllSet< T >::transferObjIListIntoOndemandVector( const std::list<ObjID> & rSourceList,
1634 std::vector< TOndemand<T> > & rTargetVevtor )
1635 {
1636 for ( std::list<ObjID>::const_iterator t_Iterator = rSourceList.begin();
1637 t_Iterator != rSourceList.end();
1638 ++t_Iterator )
1639 {
1640 rTargetVevtor.push_back( TOndemand<T>( * t_Iterator, * this->getBase() ) );
1641 }
1642 }
1643 //---------------------------------------------------------------------------
1644 #undef SUPER
1645 //---------------------------------------------------------------------------
1646} // namespace glo
1647#endif
#define NULL_PTR
Definition EuDef_NULL_PTR.h:74
Header für Base
Header für BaseAllSet
Header für BasePersistent
Header für ObjectMaker
#define SUPER
Definition GloTAllSet.h:1151
Für jede Bibliothek, hier 'GlobalObjects' gibt es eine Typen-Datei.
Diese Exception-Klasse hat zusätzlich zur Message ein Integer-Attribute für eine Fehlernummer.
Definition EuException.h:58
Ist die Basisklasse von Template-AllSets und dem generischen AllSet.
Definition GloBaseAllSet.h:80
Diese Klasse ist die Schnittstelle zu den persistenten Objekten. Hier können "Objekte" angemeldet,...
Definition GloBase.h:250
Abstrakte Basisklasse für Persistent und die generische GenericPersistent.
Definition GloBasePersistent.h:102
virtual unsigned int forget()
Oberklasse für die Klassen, welche mit einer Base 'verbunden' sind.
Definition GloCallBack.h:74
std::string m_strDebugInfo
Definition GloCallBack.h:115
Speziel für GenericPersistent oder abgeleitete Klassen von Persistent die Forget-Methode für std::sha...
Definition GloTypes.h:1249
Ein Objekt-ID besteht aus der Klassen-ID, einer Datenbank-ID und der eigentlichen eindeutigen ObjektZ...
Definition GloObjID.h:77
unsigned long getClassID() const
AllSet, welcher Objekte aus der Datenbank liefert.
Definition GloTAllSet.h:171
virtual int getPersistent(BasePersistent *&prRetVal, const ObjID &rObjID)
Liefert ein Objekt aus dem AllSet der Datenbank mit übergebener Objekt-ID.
Definition GloTAllSet.h:1266
int get(T *&prRetVal, EnSeekMode eMode)
Definition GloTAllSet.h:1197
TAllSet()
Definition GloTAllSet.h:1154
virtual int setWatch(TdWatchNotifyMode ulWatchMode, CallBack *pCallBack=0)
Definition GloTAllSet.h:1593
TAllSet(const TAllSet &)
int getIndexedOndemands(std::vector< TOndemand< T > > &rOndemandVector, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
Definition GloTAllSet.h:1407
void transferObjIListIntoOndemandVector(const std::list< ObjID > &rSourceList, std::vector< TOndemand< T > > &rTargetVevtor)
Definition GloTAllSet.h:1633
virtual ~TAllSet()
Definition GloTAllSet.h:1192
virtual int unsetWatch(TdWatchNotifyMode ulWatchMode, CallBack *pCallBack=0)
Definition GloTAllSet.h:1617
TAllSet< T > & operator=(const TAllSet &)
int getOndemand(TOndemand< T > *&prRetVal, EnSeekMode eMode)
Definition GloTAllSet.h:1337
Referenz (als Attribut) eines persistenten Objekte auf ein anderes persistentes Objekt in der Datenba...
Definition GloTOndemand.h:90
Definition GloAbstractBaseLot.h:42
@ ERR_NO_BASE
Definition GloErrors.h:573
@ ERR_OBJID_NOT_IN_ALLSET
Definition GloErrors.h:1740
@ ERR_BASE_NOT_OPEN
Definition GloErrors.h:606
@ ERR_WRONG_TYPE
Definition GloErrors.h:540
EnComparisionOp
Definition GloTypes.h:1583
EnSeekMode
Definition GloTypes.h:166
@ END
Definition GloTypes.h:188
@ START
Definition GloTypes.h:177
@ PREVIOUS
Definition GloTypes.h:221
@ NEXT
Definition GloTypes.h:210
EnQueryType
Definition GloTypes.h:1179
unsigned long TdWatchNotifyMode
Definition GloTypes.h:543