Loading...
Searching...
No Matches
Public Member Functions | List of all members
bitpit::PiercedVectorKernel< id_t > Class Template Reference

Kernel of the pierced vector. More...

#include <piercedVectorKernel.hpp>

Inheritance diagram for bitpit::PiercedVectorKernel< id_t >:
Inheritance graph
[legend]
Collaboration diagram for bitpit::PiercedVectorKernel< id_t >:
Collaboration graph
[legend]

Public Member Functions

bool exists (id_t id) const
 
std::size_t rawIndex (id_t id) const
 
- Public Member Functions inherited from bitpit::PiercedKernel< id_t >
 PiercedKernel ()
 
 PiercedKernel (const PiercedKernel &other)=default
 
 PiercedKernel (PiercedKernel &&other)=default
 
 PiercedKernel (std::size_t n)
 
 ~PiercedKernel () override
 
std::size_t back () const
 
const_iterator begin () const noexcept
 
std::size_t capacity () const
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 
void checkIntegrity () const
 
ClearAction clear (bool release=true)
 
bool contains (id_t id) const
 
bool contiguous () const
 
std::size_t count (id_t id) const
 
void dump () const
 
void dump (std::ostream &stream) const
 
bool empty () const
 
const_iterator end () const noexcept
 
EraseAction erase (id_t id, bool flush=false)
 
std::size_t evalFlatIndex (id_t id) const
 
FillAction fillAfter (id_t referenceId, id_t id)
 
FillAction fillAppend (id_t id)
 
FillAction fillBefore (id_t referenceId, id_t id)
 
FillAction fillHead (id_t id)
 
FillAction fillHole (std::size_t hole, id_t id)
 
FillAction fillInsert (std::size_t pos, id_t id)
 
FillAction fillTail (id_t id)
 
const_iterator find (const id_t &id) const noexcept
 
void flush ()
 
std::size_t front () const
 
std::vector< id_t > getIds (bool ordered=true) const
 
std::size_t getRawIndex (id_t id) const
 
id_t getSizeMarker (std::size_t targetSize, const id_t &fallback=-1)
 
bool isIteratorSlow ()
 
bool isSynced () const
 
std::size_t maxSize () const
 
MoveAction moveAfter (id_t referenceId, id_t id, bool flush=false)
 
MoveAction moveBefore (id_t referenceId, id_t id, bool flush=false)
 
EraseAction popBack ()
 
const_iterator rawFind (std::size_t pos) const noexcept
 
ReserveAction reserve (std::size_t n)
 
ResizeAction resize (std::size_t n)
 
void restore (std::istream &stream)
 
ShrinkToFitAction shrinkToFit ()
 
std::size_t size () const
 
SortAction sort ()
 
SortAction sortAfter (id_t referenceId, bool inclusive)
 
SortAction sortBefore (id_t referenceId, bool inclusive)
 
SqueezeAction squeeze ()
 
SwapAction swap (id_t id_first, id_t id_second)
 
void swap (PiercedKernel &other) noexcept
 
void sync ()
 
void updateId (const id_t &currentId, const id_t &updatedId)
 

Additional Inherited Members

- Public Types inherited from bitpit::PiercedKernel< id_t >
typedef PiercedKernelIterator< id_t > const_iterator
 
typedef PiercedKernelRange< id_t > const_range
 
typedef id_t id_type
 
typedef std::vector< id_t >::const_iterator raw_const_iterator
 
enum  SyncMode
 
- Public Types inherited from bitpit::PiercedSyncMaster
typedef std::vector< PiercedSyncSlave * > SyncGroup
 
enum  SyncMode {
  SYNC_MODE_CONCURRENT , SYNC_MODE_JOURNALED , SYNC_MODE_DISABLED , SYNC_MODE_ITR_COUNT = SYNC_MODE_DISABLED + 1 ,
  SYNC_MODE_ITR_BEGIN = 0 , SYNC_MODE_ITR_END = SYNC_MODE_ITR_BEGIN + SYNC_MODE_ITR_COUNT
}
 
- Protected Types inherited from bitpit::PiercedKernel< id_t >
typedef holes_container::const_iterator holes_const_iterator
 
typedef std::vector< std::size_t > holes_container
 
typedef holes_container::iterator holes_iterator
 
- Protected Member Functions inherited from bitpit::BasePiercedVectorKernel
 BasePiercedVectorKernel ()
 
- Protected Member Functions inherited from bitpit::PiercedKernel< id_t >
ClearAction _clear (bool release=true)
 
ReserveAction _reserve (std::size_t n)
 
ResizeAction _resize (std::size_t n)
 
ShrinkToFitAction _shrinkToFit ()
 
SortAction _sort (std::size_t begin, std::size_t end)
 
SqueezeAction _squeeze ()
 
std::size_t findNextUsedPos (std::size_t pos) const
 
std::size_t findPrevUsedPos (std::size_t pos) const
 
std::size_t getFirstUsedPos () const
 
std::size_t getLastUsedPos () const
 
std::size_t getPos (id_t id) const
 
std::vector< PiercedStorageSyncSlave< id_t > * > getStorages ()
 
std::vector< const PiercedStorageSyncSlave< id_t > * > getStorages () const
 
bool isPosEmpty (std::size_t pos) const
 
std::size_t rawSize () const
 
- Protected Member Functions inherited from bitpit::PiercedSyncMaster
 PiercedSyncMaster ()
 
void dump (std::ostream &stream) const
 
PiercedSyncMaster::SyncMode getSlaveSyncMode (const PiercedSyncSlave *slave) const
 
bool isSlaveRegistered (const PiercedSyncSlave *slave) const
 
bool isSlaveSynced (const PiercedSyncSlave *slave) const
 
bool isSynced () const
 
bool isSyncEnabled () const
 
void processSyncAction (const PiercedSyncAction &action)
 
void registerSlave (PiercedSyncSlave *slave, PiercedSyncMaster::SyncMode syncMode) const
 
void restore (std::istream &stream)
 
void setSyncEnabled (bool enabled) const
 
void swap (PiercedSyncMaster &other) noexcept
 
void sync ()
 
void unregisterSlave (const PiercedSyncSlave *slave) const
 
- Protected Attributes inherited from bitpit::PiercedSyncMaster
std::unordered_map< PiercedSyncSlave *, SyncModem_slaves
 

Detailed Description

template<typename id_t = long>
class bitpit::PiercedVectorKernel< id_t >

Kernel of the pierced vector.

Definition at line 50 of file piercedVectorKernel.hpp.

Member Function Documentation

◆ exists()

template<typename id_t >
bool bitpit::PiercedVectorKernel< id_t >::exists ( id_t id) const

Checks if a given id exists in the container.

Parameters
idis the id to look for
Returns
Returns true is the given id exists in the container, otherwise it returns false.
Examples
patchkernel_example_00001.cpp.

Definition at line 50 of file piercedVectorKernel.tpp.

◆ rawIndex()

template<typename id_t >
std::size_t bitpit::PiercedVectorKernel< id_t >::rawIndex ( id_t id) const

Gets the raw index associated to the element with the specified id.

Returns
The raw index associated to the element with the specified id.

Definition at line 36 of file piercedVectorKernel.tpp.


The documentation for this class was generated from the following files:
--- layout: doxygen_footer ---