Xmipp  v3.23.11-Nereus
Public Member Functions | List of all members
MetaDataDb::MDDbIdIterator< IsConst > Struct Template Reference

#include <metadata_db.h>

Inheritance diagram for MetaDataDb::MDDbIdIterator< IsConst >:
Inheritance graph
[legend]
Collaboration diagram for MetaDataDb::MDDbIdIterator< IsConst >:
Collaboration graph
[legend]

Public Member Functions

 MDDbIdIterator (const MetaDataDb &mdd, bool last=false, const MDQuery *pQuery=nullptr)
 
bool operator== (const MDBaseIdIterator< IsConst > &other) const override
 
size_t operator* () override
 
void increment () override
 
std::unique_ptr< MDBaseIdIterator< IsConst > > clone () override
 
- Public Member Functions inherited from MDBaseIdIterator< IsConst >
virtual ~MDBaseIdIterator ()
 
virtual bool operator!= (const MDBaseIdIterator &other) const
 

Detailed Description

template<bool IsConst>
struct MetaDataDb::MDDbIdIterator< IsConst >

Definition at line 762 of file metadata_db.h.

Constructor & Destructor Documentation

◆ MDDbIdIterator()

template<bool IsConst>
MetaDataDb::MDDbIdIterator< IsConst >::MDDbIdIterator ( const MetaDataDb mdd,
bool  last = false,
const MDQuery pQuery = nullptr 
)
inline

Definition at line 771 of file metadata_db.h.

772  : _mdd(mdd), _last(last), _pQuery(pQuery) {
773  mdd.myMDSql->selectObjects(_ids, pQuery);
774  _i = last ? this->_ids.size() : 0;
775  }
MDSql * myMDSql
Definition: metadata_db.h:62

Member Function Documentation

◆ clone()

template<bool IsConst>
std::unique_ptr<MDBaseIdIterator<IsConst> > MetaDataDb::MDDbIdIterator< IsConst >::clone ( )
inlineoverridevirtual

Implements MDBaseIdIterator< IsConst >.

Definition at line 788 of file metadata_db.h.

788  {
789  return memoryUtils::make_unique<MDDbIdIterator<IsConst>>(_mdd, _last, _pQuery);
790  }

◆ increment()

template<bool IsConst>
void MetaDataDb::MDDbIdIterator< IsConst >::increment ( )
inlineoverridevirtual

Implements MDBaseIdIterator< IsConst >.

Definition at line 786 of file metadata_db.h.

786 { this->_i++; }

◆ operator*()

template<bool IsConst>
size_t MetaDataDb::MDDbIdIterator< IsConst >::operator* ( )
inlineoverridevirtual

Implements MDBaseIdIterator< IsConst >.

Definition at line 784 of file metadata_db.h.

784 { return _ids[_i]; }

◆ operator==()

template<bool IsConst>
bool MetaDataDb::MDDbIdIterator< IsConst >::operator== ( const MDBaseIdIterator< IsConst > &  other) const
inlineoverridevirtual

Implements MDBaseIdIterator< IsConst >.

Definition at line 777 of file metadata_db.h.

777  {
778  const MDDbIdIterator<IsConst>* dri = dynamic_cast<const MDDbIdIterator<IsConst>*>(&other);
779  if (dri != nullptr)
780  return this->_i == dri->_i;
781  return false;
782  }

The documentation for this struct was generated from the following file: