Project
Loading...
Searching...
No Matches
o2::itsmft::tracking Namespace Reference

Namespaces

namespace  detail
 

Classes

class  BoundedMemoryResource
 
class  CapacityEstimator
 
class  SlabBumpAllocator
 
class  SlabSink
 
struct  SlabSinkStats
 

Typedefs

template<typename T >
using bounded_vector = std::pmr::vector< T >
 
template<typename T >
using UnorderedSlabSink = SlabSink< T, SlabMode::Unordered >
 
template<typename T >
using GroupedSlabSink = SlabSink< T, SlabMode::GroupedByProducer >
 

Enumerations

enum  SlabSite : uint8_t {
  Tracklets = 0 , Cells , Neighbours , RoadCandidates ,
  Roads , TrackSeeds , TracksExtended , Tracks ,
  NSlabSite
}
 
enum class  SlabMode : uint8_t { Unordered , GroupedByProducer }
 

Functions

template<typename T >
void deepVectorClear (std::vector< T > &vec)
 
template<typename T >
void deepVectorClear (bounded_vector< T > &vec, std::pmr::memory_resource *mr=nullptr)
 
template<typename T >
void deepVectorClear (std::vector< bounded_vector< T > > &vec, std::pmr::memory_resource *mr=nullptr)
 
template<typename T , size_t S>
void deepVectorClear (std::array< bounded_vector< T >, S > &arr, std::pmr::memory_resource *mr=nullptr)
 
template<typename T >
void clearResizeBoundedVector (bounded_vector< T > &vec, size_t sz, std::pmr::memory_resource *mr=nullptr, T def=T())
 
template<typename T >
void clearResizeBoundedVector (std::vector< bounded_vector< T > > &vec, size_t size, std::pmr::memory_resource *mr)
 
template<typename T , size_t S>
void clearResizeBoundedArray (std::array< bounded_vector< T >, S > &arr, size_t size, std::pmr::memory_resource *mr=nullptr, T def=T())
 
template<typename T >
std::vector< T > toSTDVector (const bounded_vector< T > &b)
 
template<typename Emit >
int runOnSlab (CapacityEstimator &estimator, const CapacityEstimator::KeyType key, const double scale, Emit &&emit, const size_t floorCapacity=0)
 

Variables

constexpr const char *const SlabSiteNames [SlabSite::NSlabSite] {"Tracklets", "Cells", "Neighbours", "RoadCandidates", "Roads", "TrackSeeds", "TracksExtended", "Tracks"}
 

Typedef Documentation

◆ bounded_vector

template<typename T >
using o2::itsmft::tracking::bounded_vector = typedef std::pmr::vector<T>

Definition at line 98 of file BoundedAllocator.h.

◆ GroupedSlabSink

Definition at line 417 of file SlabBumpAllocator.h.

◆ UnorderedSlabSink

template<typename T >
using o2::itsmft::tracking::UnorderedSlabSink = typedef SlabSink<T, SlabMode::Unordered>

Definition at line 414 of file SlabBumpAllocator.h.

Enumeration Type Documentation

◆ SlabMode

enum class o2::itsmft::tracking::SlabMode : uint8_t
strong
Enumerator
Unordered 
GroupedByProducer 

Definition at line 99 of file SlabBumpAllocator.h.

◆ SlabSite

Enumerator
Tracklets 
Cells 
Neighbours 
RoadCandidates 
Roads 
TrackSeeds 
TracksExtended 
Tracks 
NSlabSite 

Definition at line 28 of file CapacityEstimator.h.

Function Documentation

◆ clearResizeBoundedArray()

template<typename T , size_t S>
void o2::itsmft::tracking::clearResizeBoundedArray ( std::array< bounded_vector< T >, S > &  arr,
size_t  size,
std::pmr::memory_resource mr = nullptr,
def = T() 
)
inline

Definition at line 149 of file BoundedAllocator.h.

◆ clearResizeBoundedVector() [1/2]

template<typename T >
void o2::itsmft::tracking::clearResizeBoundedVector ( bounded_vector< T > &  vec,
size_t  sz,
std::pmr::memory_resource mr = nullptr,
def = T() 
)
inline

Definition at line 131 of file BoundedAllocator.h.

◆ clearResizeBoundedVector() [2/2]

template<typename T >
void o2::itsmft::tracking::clearResizeBoundedVector ( std::vector< bounded_vector< T > > &  vec,
size_t  size,
std::pmr::memory_resource mr 
)
inline

Definition at line 139 of file BoundedAllocator.h.

◆ deepVectorClear() [1/4]

template<typename T >
void o2::itsmft::tracking::deepVectorClear ( bounded_vector< T > &  vec,
std::pmr::memory_resource mr = nullptr 
)
inline

Definition at line 107 of file BoundedAllocator.h.

◆ deepVectorClear() [2/4]

template<typename T , size_t S>
void o2::itsmft::tracking::deepVectorClear ( std::array< bounded_vector< T >, S > &  arr,
std::pmr::memory_resource mr = nullptr 
)
inline

Definition at line 123 of file BoundedAllocator.h.

◆ deepVectorClear() [3/4]

template<typename T >
void o2::itsmft::tracking::deepVectorClear ( std::vector< bounded_vector< T > > &  vec,
std::pmr::memory_resource mr = nullptr 
)
inline

Definition at line 115 of file BoundedAllocator.h.

◆ deepVectorClear() [4/4]

template<typename T >
void o2::itsmft::tracking::deepVectorClear ( std::vector< T > &  vec)
inline

Definition at line 101 of file BoundedAllocator.h.

◆ runOnSlab()

template<typename Emit >
int o2::itsmft::tracking::runOnSlab ( CapacityEstimator estimator,
const CapacityEstimator::KeyType  key,
const double  scale,
Emit &&  emit,
const size_t  floorCapacity = 0 
)

Definition at line 134 of file CapacityEstimator.h.

◆ toSTDVector()

template<typename T >
std::vector< T > o2::itsmft::tracking::toSTDVector ( const bounded_vector< T > &  b)
inline

Definition at line 157 of file BoundedAllocator.h.

Variable Documentation

◆ SlabSiteNames

constexpr const char* const o2::itsmft::tracking::SlabSiteNames[SlabSite::NSlabSite] {"Tracklets", "Cells", "Neighbours", "RoadCandidates", "Roads", "TrackSeeds", "TracksExtended", "Tracks"}
constexpr

Definition at line 39 of file CapacityEstimator.h.