51 fPhiOffset(
TMath::Pi()),
172 using namespace TMath;
193 using namespace TMath;
211 using namespace TMath;
229 using namespace TMath;
270 delta = 0.5*(max - min);
272 fPhi = 0.5*(max + min);
445 fRnrEndCapFrame (
kTRUE),
446 fRnrBarrelFrame (
kTRUE),
448 fFrameColor (
kGray+1),
449 fFrameTransparency (80)
514 for(
UInt_t i = 0; i <
n; ++i) {
517 cids->clear();
delete cids;
524 for(
UInt_t i = 0; i <
n; ++i) {
527 cids->clear();
delete cids;
586 for (
Int_t ibin = 1; ibin <= nBins; ++ibin) {
594 delete clv; clv =
nullptr;
604 for (
Int_t ibin = 1; ibin <= nBins; ++ibin) {
608 if (low >= min && up <= max)
613 delete clv; clv =
nullptr;
628 for (
Int_t ibin = 1; ibin <= nBins; ++ibin) {
667 for (
vBinCells_i it = outputCellLists.begin(); it != outputCellLists.end(); it++)
675 outputCellLists.clear();
677 outputCellLists.resize(nBins+1);
679 outputCellLists[
b] =
nullptr;
681 for(
UInt_t bin = 1; bin <= nBins; ++bin)
691 if( (*i).fTower == (*j).fTower && (*i).fSlice == (*j).fSlice)
693 if (!outputCellLists[bin])
751 x = -
r,
y = 0, z = 0;
765 x = 0,
y = -
r, z = 0;
787 fPlaneTransparency(60),
804 fHasFixedHeightIn2DMode(
kFALSE),
805 fFixedHeightValIn2DMode(0.f),
807 fDrawNumberCellPixels(18),
808 fCellPixelFontSize(12)
winID h TVirtualViewer3D TVirtualGLPainter p
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void data
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
void BBoxCheckPoint(Float_t x, Float_t y, Float_t z)
void BBoxZero(Float_t epsilon=0, Float_t x=0, Float_t y=0, Float_t z=0)
Create cube of volume (2*epsilon)^3 at (x,y,z).
void BBoxInit(Float_t infinity=1e6)
Dynamic Float_t[6] X(min,max), Y(min,max), Z(min,max)
Class to manage histogram axis.
virtual Double_t GetBinCenter(Int_t bin) const
Return center of bin.
virtual Double_t GetBinLowEdge(Int_t bin) const
Return low edge of bin.
virtual Double_t GetBinWidth(Int_t bin) const
Return bin width.
virtual Double_t GetBinUpEdge(Int_t bin) const
Return up edge of bin.
TClass instances represent classes, structs and namespaces in the ROOT type system.
Visualization of a calorimeter event data in 2D.
void UpdateProjection() override
This is virtual method from base-class TEveProjected.
~TEveCalo2D() override
Destructor.
void BuildCellIdCache() override
Build lists of drawn cell IDs. See TEveCalo2DGL::DirecDraw().
TEveCalo2D(const TEveCalo2D &)=delete
void CellSelectionChanged() override
Sort selected cells in eta or phi bins for selection and highlight.
void ComputeBBox() override
Fill bounding-box information of the base-class TAttBBox (virtual method).
void SetScaleAbs(Bool_t) override
Set absolute scale in projected calorimeter.
std::vector< TEveCaloData::vCellId_t * > fCellListsHighlighted
void CellSelectionChangedInternal(TEveCaloData::vCellId_t &cells, std::vector< TEveCaloData::vCellId_t * > &cellLists)
Sort selected cells in eta or phi bins.
std::vector< TEveCaloData::vCellId_t * >::iterator vBinCells_i
Float_t GetValToHeight() const override
Virtual function of TEveCaloViz.
std::vector< TEveCaloData::vCellId_t * > fCellLists
TEveProjection::EPType_e fOldProjectionType
void SetProjection(TEveProjectionManager *proj, TEveProjectable *model) override
Set projection manager and model object.
std::vector< TEveCaloData::vCellId_t * > fCellListsSelected
Visualization of a calorimeter event data in 3D.
TEveCaloData::vCellId_t fCellList
void ComputeBBox() override
Fill bounding-box information of the base-class TAttBBox (virtual method).
void BuildCellIdCache() override
Build list of drawn cell IDs. See TEveCalo3DGL::DirectDraw().
TEveCalo3D(const TEveCalo3D &)=delete
A central manager for calorimeter event data.
virtual void GetEtaLimits(Double_t &min, Double_t &max) const =0
std::vector< CellId_t > vCellId_t
void SetSliceColor(Int_t slice, Color_t col)
Set color for given slice.
virtual void GetCellList(Float_t etaMin, Float_t etaMax, Float_t phi, Float_t phiRng, vCellId_t &out) const =0
virtual void GetCellData(const CellId_t &id, CellData_t &data) const =0
Char_t GetSliceTransparency(Int_t slice) const
Get transparency for given slice.
virtual Float_t GetEps() const
virtual TAxis * GetEtaBins() const
void SetSliceThreshold(Int_t slice, Float_t threshold)
Set threshold for given slice.
Color_t GetSliceColor(Int_t slice) const
Get color for given slice.
SliceInfo_t & RefSliceInfo(Int_t s)
vCellId_t & GetCellsHighlighted()
virtual void GetPhiLimits(Double_t &min, Double_t &max) const =0
virtual TAxis * GetPhiBins() const
vCellId_t & GetCellsSelected()
virtual Float_t GetMaxVal(Bool_t et) const
std::vector< CellId_t >::iterator vCellId_i
Visualization of calorimeter data as eta/phi histogram.
TEveCaloLego(const TEveCaloLego &)=delete
virtual void SetData(TEveCaloData *d)
TEveCaloData::vCellId_t fCellList
void BuildCellIdCache() override
Build list of drawn cell IDs. For more information see TEveCaloLegoGL:DirectDraw().
void ComputeBBox() override
Fill bounding-box information of the base-class TAttBBox (virtual method).
Base class for calorimeter data visualization.
void SetDataSliceColor(Int_t slice, Color_t col)
Set slice color in data.
Color_t GetDataSliceColor(Int_t slice) const
Get slice color from data.
~TEveCaloViz() override
Destructor.
Float_t GetEtaMin() const
Bool_t AssertCellIdCache() const
Assert cell id cache is ok.
void SetDataSliceThreshold(Int_t slice, Float_t val)
Set threshold for given slice.
Float_t GetDataSliceThreshold(Int_t slice) const
Get threshold for given slice.
Float_t GetPhiRng() const
Float_t GetTransitionEtaBackward() const
Get transition eta between barrel and backward end-cap cells.
void SetPlotEt(Bool_t x)
Set E/Et plot.
TEveRGBAPalette * fPalette
virtual void BuildCellIdCache()=0
void SetPhiWithRng(Float_t x, Float_t r)
Set phi range.
Float_t GetTransitionThetaBackward() const
Get transition angle between barrel and backward end-cap cells.
Float_t GetTransitionEta() const
Get transition eta between barrel and end-cap cells, assuming fEndCapPosF = -fEndCapPosB.
Float_t GetMaxVal() const
void SetEta(Float_t l, Float_t u)
Set eta range.
virtual void SetScaleAbs(Bool_t x)
TEveRGBAPalette * AssertPalette()
Make sure the TEveRGBAPalette pointer is not null.
TEveCaloViz(const TEveCaloViz &)=delete
TEveElement * ForwardEdit() override
Management of selection state and ownership of selected cell list is done in TEveCaloData.
void InvalidateCellIdCache()
TClass * ProjectedClass(const TEveProjection *p) const override
Virtual from TEveProjectable, returns TEveCalo2D class.
void SetPalette(TEveRGBAPalette *p)
Set TEveRGBAPalette object pointer.
Float_t GetEtaMax() const
Float_t GetTransitionThetaForward() const
Get transition angle between barrel and forward end-cap cells.
Float_t GetTransitionEtaForward() const
Get transition eta between barrel and forward end-cap cells.
Float_t GetTransitionTheta() const
Get transition angle between barrel and end-cap cells, assuming fEndCapPosF = -fEndCapPosB.
void AssignCaloVizParameters(TEveCaloViz *cv)
Assign parameters from given model.
void Paint(Option_t *option="") override
Paint this object. Only direct rendering is supported.
Float_t GetPhiMax() const
TEveElement * ForwardSelection() override
Management of selection state and ownership of selected cell list is done in TEveCaloData.
virtual Float_t GetValToHeight() const
Get transformation factor from E/Et to height.
void SetData(TEveCaloData *d)
Set calorimeter event data.
Float_t GetEtaRng() const
void DataChanged()
Update setting and cache on data changed.
Bool_t CellInEtaPhiRng(TEveCaloData::CellData_t &) const
Returns true if given cell is in the ceta phi range.
Float_t GetPhiMin() const
void SetupColorHeight(Float_t value, Int_t slice, Float_t &height) const
Set color and height for a given value and slice using slice color or TEveRGBAPalette.
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
virtual void AddElement(TEveElement *el)
Add el to the list of children.
virtual void SetElementNameTitle(const char *name, const char *title)
Virtual function for setting of name and title of render element.
Bool_t fCanEditMainTransparency
virtual void RemoveElement(TEveElement *el)
Remove el from the list of children.
virtual void PaintStandard(TObject *id)
Paint object – a generic implementation for EVE elements.
Abstract base-class for non-linear projectable objects.
Abstract base class for classes that hold results of a non-linear projection transformation.
TEveProjectionManager * fManager
virtual void SetProjection(TEveProjectionManager *mng, TEveProjectable *model)
Sets projection manager and reference in the projectable object.
Manager class for steering of projections and managing projected objects.
TEveProjection * GetProjection()
Base-class for non-linear projections.
virtual void ProjectPoint(Float_t &x, Float_t &y, Float_t &z, Float_t d, EPProc_e p=kPP_Full)=0
A generic, speed-optimised mapping from value to RGBA color supporting different wrapping and range t...
void SetMax(Int_t max)
Set current max value.
void SetMin(Int_t min)
Set current min value.
void SetDefaultColor(Color_t ci)
Set default color.
Bool_t GetInterpolate() const
const UChar_t * ColorFromValue(Int_t val) const
Color_t GetDefaultColor() const
void SetLimits(Int_t low, Int_t high)
Set low/high limits on signal value.
static Bool_t IsU1IntervalOverlappingByMinMax(Float_t minM, Float_t maxM, Float_t minQ, Float_t maxQ)
Return true if interval Q is overlapping within interval M for U1 variables.
static Bool_t IsU1IntervalContainedByMinMax(Float_t minM, Float_t maxM, Float_t minQ, Float_t maxQ)
Return true if interval Q is contained within interval M for U1 variables.
static void Color4ubv(const UChar_t *rgba)
Wrapper for glColor4ubv.
static void ColorTransparency(Color_t color_index, Char_t transparency=0)
Set color from color_index and ROOT-style transparency (default 0).
The TNamed class is the base class for all named ROOT classes.
Short_t Max(Short_t a, Short_t b)
Returns the largest of a and b.
Double_t ATan(Double_t)
Returns the principal value of the arc tangent of x, expressed in radians.
Int_t CeilNint(Double_t x)
Returns the nearest integer of TMath::Ceil(x).
Cell data inner structure.
Float_t Value(Bool_t) const
Return energy value associated with the cell, usually Et.