ndmspc  v1.2.0-0.1.rc3
Ndmspc::NBinningDef Class Reference

Defines binning mapping and content for NDMSPC histograms. More...

#include <NBinningDef.h>

Inheritance diagram for Ndmspc::NBinningDef:

Public Member Functions

 NBinningDef (std::string name="default", std::map< std::string, std::vector< std::vector< int >>> definition={}, NBinning *binning=nullptr)
 Constructor. More...
 
virtual ~NBinningDef ()
 Destructor. More...
 
virtual void Print (Option_t *option="") const
 Print binning definition information. More...
 
std::map< std::string, std::vector< std::vector< int > > > GetDefinition () const
 Get the binning mapping definition. More...
 
void SetDefinition (const std::map< std::string, std::vector< std::vector< int >>> &d)
 Set the binning mapping definition. More...
 
void SetAxisDefinition (std::string axisName, const std::vector< std::vector< int >> &d)
 Set axis definition for a specific axis. More...
 
std::vector< int > GetVariableAxes () const
 Get list of variable axes indices. More...
 
void AddVariableAxis (size_t axis)
 Add a variable axis index. More...
 
void RefreshContentFromIds ()
 Refresh content histogram from bin IDs. More...
 
void RefreshIdsFromContent ()
 Refresh bin IDs from content histogram. More...
 
std::vector< Long64_t > GetIds () const
 Get list of bin IDs. More...
 
std::vector< Long64_t > & GetIds ()
 Get reference to list of bin IDs. More...
 
Long64_t GetId (size_t index) const
 Get bin ID at specified index. More...
 
TObjArray * GetAxes () const
 Get list of axes from content histogram. More...
 
THnSparse * GetContent () const
 Get the template content histogram. More...
 
NBinningGetBinning () const
 Get pointer to parent NBinning object. More...
 

Private Attributes

NBinningfBinning {nullptr}
 Pointer to the parent binning.
 
std::string fName
 Name of the binning definition.
 
std::map< std::string, std::vector< std::vector< int > > > fDefinition
 Binning mapping definition.
 
std::vector< int > fVariableAxes {}
 List of variable axes indices in the content histogram.
 
std::vector< Long64_t > fIds {}
 List of IDs for the binning definition.
 
THnSparse * fContent {nullptr}
 Template histogram for the binning definition.
 

Detailed Description

Defines binning mapping and content for NDMSPC histograms.

NBinningDef object for binning mapping and content definition.

Stores axis definitions, variable axes, bin IDs, and template histogram content. Provides methods for refreshing IDs/content, axis management, and integration with NBinning.

Author
Martin Vala mvala.nosp@m.@cer.nosp@m.n.ch

Definition at line 26 of file NBinningDef.h.

Constructor & Destructor Documentation

◆ NBinningDef()

Ndmspc::NBinningDef::NBinningDef ( std::string  name = "default",
std::map< std::string, std::vector< std::vector< int >>>  definition = {},
NBinning binning = nullptr 
)

Constructor.

Parameters
nameName of the binning definition.
definitionMapping of axis names to binning vectors.
binningPointer to parent NBinning object.

Constructor

Definition at line 14 of file NBinningDef.cxx.

References fBinning, fContent, fDefinition, Ndmspc::NBinning::GetAxes(), GetDefinition(), and SetAxisDefinition().

◆ ~NBinningDef()

Ndmspc::NBinningDef::~NBinningDef ( )
virtual

Destructor.

Destructor

Definition at line 138 of file NBinningDef.cxx.

References fContent.

Member Function Documentation

◆ AddVariableAxis()

void Ndmspc::NBinningDef::AddVariableAxis ( size_t  axis)
inline

Add a variable axis index.

Parameters
axisAxis index to add.

Definition at line 77 of file NBinningDef.h.

References fVariableAxes.

◆ GetAxes()

TObjArray* Ndmspc::NBinningDef::GetAxes ( ) const
inline

Get list of axes from content histogram.

Returns
Pointer to TObjArray of axes.

Definition at line 112 of file NBinningDef.h.

References fContent.

Referenced by Ndmspc::NBinningPoint::RecalculateStorageCoords().

◆ GetBinning()

NBinning* Ndmspc::NBinningDef::GetBinning ( ) const
inline

Get pointer to parent NBinning object.

Returns
Pointer to NBinning.

Definition at line 124 of file NBinningDef.h.

References fBinning.

◆ GetContent()

◆ GetDefinition()

std::map<std::string, std::vector<std::vector<int> > > Ndmspc::NBinningDef::GetDefinition ( ) const
inline

Get the binning mapping definition.

Returns
Mapping of axis names to binning vectors.

Definition at line 52 of file NBinningDef.h.

References fDefinition.

Referenced by Ndmspc::NBinning::GenerateListOfAxes(), and NBinningDef().

◆ GetId()

Long64_t Ndmspc::NBinningDef::GetId ( size_t  index) const

Get bin ID at specified index.

Parameters
indexIndex of bin.
Returns
Bin ID.

Returns ID for given index

Definition at line 179 of file NBinningDef.cxx.

References fIds.

Referenced by Ndmspc::NBinning::GetPoint(), and Ndmspc::NGnThreadData::Process().

◆ GetIds() [1/2]

std::vector<Long64_t>& Ndmspc::NBinningDef::GetIds ( )
inline

Get reference to list of bin IDs.

Returns
Reference to vector of bin IDs.

Definition at line 99 of file NBinningDef.h.

References fIds.

◆ GetIds() [2/2]

std::vector<Long64_t> Ndmspc::NBinningDef::GetIds ( ) const
inline

◆ GetVariableAxes()

std::vector<int> Ndmspc::NBinningDef::GetVariableAxes ( ) const
inline

Get list of variable axes indices.

Returns
Vector of variable axis indices.

Definition at line 71 of file NBinningDef.h.

References fVariableAxes.

Referenced by Ndmspc::NGnNavigator::Reshape().

◆ Print()

void Ndmspc::NBinningDef::Print ( Option_t *  option = "") const
virtual

Print binning definition information.

Parameters
optionPrint options.

Print the binning definition

Definition at line 146 of file NBinningDef.cxx.

References fBinning, fContent, fDefinition, fIds, fName, fVariableAxes, Ndmspc::NBinning::GetAxes(), and Ndmspc::NUtils::GetCoordsString().

Referenced by Ndmspc::NGnTree::Play(), and Ndmspc::NGnTree::Process().

◆ RefreshContentFromIds()

void Ndmspc::NBinningDef::RefreshContentFromIds ( )

◆ RefreshIdsFromContent()

void Ndmspc::NBinningDef::RefreshIdsFromContent ( )

Refresh bin IDs from content histogram.

Refresh IDs from content

Definition at line 192 of file NBinningDef.cxx.

References Ndmspc::NDimensionalExecutor::Execute(), fContent, fIds, and Ndmspc::NUtils::GetCoordsString().

Referenced by Ndmspc::NGnTree::Projection().

◆ SetAxisDefinition()

void Ndmspc::NBinningDef::SetAxisDefinition ( std::string  axisName,
const std::vector< std::vector< int >> &  d 
)
inline

Set axis definition for a specific axis.

Parameters
axisNameName of the axis.
dBinning vectors for the axis.

Definition at line 65 of file NBinningDef.h.

References fDefinition.

Referenced by NBinningDef().

◆ SetDefinition()

void Ndmspc::NBinningDef::SetDefinition ( const std::map< std::string, std::vector< std::vector< int >>> &  d)
inline

Set the binning mapping definition.

Parameters
dMapping of axis names to binning vectors.

Definition at line 58 of file NBinningDef.h.

References fDefinition.


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