Project
Loading...
Searching...
No Matches
o2::gpu::Spline1DContainerBase< DataT, FlatBase > Class Template Reference

#include <Spline1DSpec.h>

Inherits o2::gpu::FlatObject.

Public Member Functions

 GPUd () static const expr int32_t getVersion()
 _____________ Version control __________________________
 
 Spline1DContainerBase ()=default
 _____________ C++ constructors / destructors __________________________
 
 Spline1DContainerBase (const Spline1DContainerBase &)=delete
 Disable all other constructors.
 
 ~Spline1DContainerBase ()=default
 Destructor.
 
 GPUd () int32_t getUmax() const
 _______________ Getters ________________________
 
 GPUd () int32_t getYdimensions() const
 Get number of Y dimensions.
 
 GPUd () size_t getParameterAlignmentBytes() const
 Get minimal required alignment for the spline parameters.
 
 GPUd () int32_t getNumberOfParameters() const
 Number of parameters.
 
 GPUd () size_t getSizeOfParameters() const
 Size of the parameter array in bytes.
 
 GPUd () int32_t getNumberOfKnots() const
 Get a number of knots.
 
 GPUd () DataT convXtoU(DataT x) const
 _______________ Technical stuff ________________________
 
 GPUd () DataT convUtoX(DataT u) const
 Convert U coordinate to X.
 
 GPUd () DataT getXmin() const
 Get Xmin.
 
 GPUd () DataT getXmax() const
 Get Xmax.
 
 GPUd () DataT getXtoUscale() const
 Get XtoUscale.
 
 GPUd () void setXrange(DataT xMin
 Set X range.
 
 GPUd () int32_t calcNumberOfParameters(int32_t nYdim) const
 _______________ Expert tools _______________
 
- Public Member Functions inherited from o2::gpu::FlatObject
 FlatObject ()=default
 _____________ Constructors / destructors __________________________
 
 ~FlatObject ()
 
 FlatObject (const FlatObject &)=delete
 
FlatObjectoperator= (const FlatObject &)=delete
 
template<typename T >
T * resizeArray (T *&ptr, int32_t oldSize, int32_t newSize, T *newPtr=nullptr)
 
template<typename T >
T ** resizeArray (T **&ptr, int32_t oldSize, int32_t newSize, T **newPtr=nullptr)
 
void destroy ()
 _______________ Utilities _______________________________________________
 
 GPUdi () size_t getFlatBufferSize() const
 Gives size of the flat buffer.
 
 GPUdi () const char *getFlatBufferPtr() const
 Gives pointer to the flat buffer.
 
bool isConstructed () const
 Tells if the object is constructed.
 
bool isBufferInternal () const
 Tells if the buffer is internal.
 
void adoptInternalBuffer (char *buf)
 
void clearInternalBufferPtr ()
 
void printC () const
 Print the content of the flat buffer.
 

Public Attributes

DataT xMax
 
int32_t mYdim = 0
 _____________ Data members ____________
 
int32_t mNumberOfKnots = 0
 n knots on the grid
 
int32_t mUmax = 0
 U of the last knot.
 
DataT mXmin = 0
 X of the first knot.
 
DataT mXtoUscale = 0
 a scaling factor to convert X to U
 

Additional Inherited Members

- Static Public Member Functions inherited from o2::gpu::FlatObject
static constexpr size_t alignSize (size_t sizeBytes, size_t alignmentBytes)
 _______________ Generic utilities _______________________________________________
 
template<class T >
static T * relocatePointer (const char *oldBase, char *newBase, const T *ptr)
 Relocates a pointer inside a buffer to the new buffer address.
 
template<class T , class TFile >
static int32_t writeToFile (T &obj, TFile &outf, const char *name)
 write a child class object to the file
 
template<class T , class TFile >
static T * readFromFile (TFile &inpf, const char *name)
 read a child class object from the file
 
template<class T >
static std::string stressTest (T &obj)
 Test the flat object functionality for a child class T.
 
- Protected Types inherited from o2::gpu::FlatObject
enum  ConstructionState : uint32_t { NotConstructed = 0x0 , Constructed = 0x1 , InProgress = 0x2 }
 GPUCA_GPUCODE. More...
 
- Protected Member Functions inherited from o2::gpu::FlatObject
void startConstruction ()
 _____________ Construction _________
 
void finishConstruction (int32_t flatBufferSize)
 
void cloneFromObject (const FlatObject &obj, char *newFlatBufferPtr)
 
charreleaseInternalBuffer ()
 _____________ Methods for making the data buffer external __________________________
 
void moveBufferTo (char *newBufferPtr)
 
void setActualBufferAddress (char *actualFlatBufferPtr)
 _____________ Methods for moving the class with its external buffer to another location __________________________
 
void setFutureBufferAddress (char *futureFlatBufferPtr)
 
 ClassDefNV (FlatObject, 1)
 Pointer to the flat buffer.
 
- Static Protected Member Functions inherited from o2::gpu::FlatObject
static constexpr size_t getClassAlignmentBytes ()
 GPUCA_GPUCODE.
 
static constexpr size_t getBufferAlignmentBytes ()
 Gives minimal alignment in bytes required for the flat buffer.
 
- Protected Attributes inherited from o2::gpu::FlatObject
int32_t mFlatBufferSize = 0
 size of the flat buffer
 
uint32_t mConstructionMask = ConstructionState::NotConstructed
 mask for constructed object members, first two bytes are used by this class
 
charmFlatBufferContainer = nullptr
 
charmFlatBufferPtr = nullptr
 

Detailed Description

template<typename DataT, class FlatBase = FlatObject>
class o2::gpu::Spline1DContainerBase< DataT, FlatBase >

================================================================================================== The class Spline1DContainerBase is a base class of Spline1D. It contains all the class members and those methods which only depends on the DataT data type. It also contains all non-inlined methods with the implementation in Spline1DSpec.cxx file.

DataT is a data type, which is supposed to be either double or float. For other possible data types one has to add the corresponding instantiation line at the end of the Spline1DSpec.cxx file

Definition at line 58 of file Spline1DSpec.h.

Constructor & Destructor Documentation

◆ Spline1DContainerBase() [1/2]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::Spline1DContainerBase ( )
default

_____________ C++ constructors / destructors __________________________

Default constructor, required by the Root IO

◆ Spline1DContainerBase() [2/2]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::Spline1DContainerBase ( const Spline1DContainerBase< DataT, FlatBase > &  )
delete

Disable all other constructors.

◆ ~Spline1DContainerBase()

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::~Spline1DContainerBase ( )
default

Destructor.

Member Function Documentation

◆ GPUd() [1/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

Convert U coordinate to X.

Definition at line 107 of file Spline1DSpec.h.

◆ GPUd() [2/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

_______________ Technical stuff ________________________

Convert X coordinate to U

Definition at line 104 of file Spline1DSpec.h.

◆ GPUd() [3/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

Get Xmax.

Definition at line 113 of file Spline1DSpec.h.

◆ GPUd() [4/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

Get Xmin.

Definition at line 110 of file Spline1DSpec.h.

◆ GPUd() [5/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

Get XtoUscale.

Definition at line 116 of file Spline1DSpec.h.

◆ GPUd() [6/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

_______________ Expert tools _______________

Number of parameters for given Y dimensions

Definition at line 124 of file Spline1DSpec.h.

◆ GPUd() [7/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

Get a number of knots.

Definition at line 99 of file Spline1DSpec.h.

◆ GPUd() [8/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

Number of parameters.

Definition at line 93 of file Spline1DSpec.h.

◆ GPUd() [9/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

_______________ Getters ________________________

Get U coordinate of the last knot

Definition at line 80 of file Spline1DSpec.h.

◆ GPUd() [10/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

Get number of Y dimensions.

Definition at line 83 of file Spline1DSpec.h.

◆ GPUd() [11/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

Get minimal required alignment for the spline parameters.

Definition at line 86 of file Spline1DSpec.h.

◆ GPUd() [12/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

Size of the parameter array in bytes.

Definition at line 96 of file Spline1DSpec.h.

◆ GPUd() [13/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( ) const
inline

_____________ Version control __________________________

Version control

Definition at line 64 of file Spline1DSpec.h.

◆ GPUd() [14/14]

template<typename DataT , class FlatBase = FlatObject>
o2::gpu::Spline1DContainerBase< DataT, FlatBase >::GPUd ( )

Set X range.

Member Data Documentation

◆ mNumberOfKnots

template<typename DataT , class FlatBase = FlatObject>
int32_t o2::gpu::Spline1DContainerBase< DataT, FlatBase >::mNumberOfKnots = 0

n knots on the grid

Definition at line 128 of file Spline1DSpec.h.

◆ mUmax

template<typename DataT , class FlatBase = FlatObject>
int32_t o2::gpu::Spline1DContainerBase< DataT, FlatBase >::mUmax = 0

U of the last knot.

Definition at line 129 of file Spline1DSpec.h.

◆ mXmin

template<typename DataT , class FlatBase = FlatObject>
DataT o2::gpu::Spline1DContainerBase< DataT, FlatBase >::mXmin = 0

X of the first knot.

Definition at line 130 of file Spline1DSpec.h.

◆ mXtoUscale

template<typename DataT , class FlatBase = FlatObject>
DataT o2::gpu::Spline1DContainerBase< DataT, FlatBase >::mXtoUscale = 0

a scaling factor to convert X to U

Definition at line 131 of file Spline1DSpec.h.

◆ mYdim

template<typename DataT , class FlatBase = FlatObject>
int32_t o2::gpu::Spline1DContainerBase< DataT, FlatBase >::mYdim = 0

_____________ Data members ____________

dimentionality of F

Definition at line 127 of file Spline1DSpec.h.

◆ xMax

template<typename DataT , class FlatBase = FlatObject>
DataT o2::gpu::Spline1DContainerBase< DataT, FlatBase >::xMax

Definition at line 119 of file Spline1DSpec.h.


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