ROOT logo
RootHealPix » SRC » THealPix

class THealPix: public TNamed, public TAttLine, public TAttFill, public TAttMarker

Function Members (Methods)

 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.

public:
virtual~THealPix()
voidTObject::AbstractMethod(const char* method) const
virtual voidAdd(const THealPix* hp1, Double_t c1 = 1)
virtual voidAdd(const THealPix* hp1, const THealPix* hp2, Double_t c1 = 1, Double_t c2 = 1)
virtual voidAddBinContent(Int_t bin)
virtual voidAddBinContent(Int_t bin, Double_t w)
static voidAddDirectory(Bool_t add = kTRUE)
static Bool_tAddDirectoryStatus()
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTObject::Delete(Option_t* option = "")MENU
Int_tTAttLine::DistancetoLine(Int_t px, Int_t py, Double_t xp1, Double_t yp1, Double_t xp2, Double_t yp2)
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidDivide(const THealPix* hp1)
virtual voidDraw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual THealPix*DrawCopy(Option_t* option = "") const
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual Int_tFill(const Double_t* x)
virtual Int_tFill(const Float_t* x)
virtual Int_tFill(Double_t theta, Double_t phi)
virtual Int_tFill(const Double_t* x, Double_t w)
virtual Int_tFill(const Float_t* x, Double_t w)
virtual Int_tFill(Double_t theta, Double_t phi, Double_t w)
virtual voidTNamed::FillBuffer(char*& buffer)
virtual Int_tFindBin(Double_t theta, Double_t phi) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Double_tGetAverage() const
virtual Float_tGetBarOffset() const
virtual Float_tGetBarWidth() const
virtual Double_tGetBinArea(Bool_t degree2 = kFALSE) const
virtual voidGetBinCenter(Int_t bin, Double_t& theta, Double_t& phi) const
virtual voidGetBinCenter(Int_t bin, Double_t* theta, Double_t* phi) const
virtual Double_tGetBinContent(Int_t bin) const
virtual Double_tGetBinError(Int_t bin) const
virtual Int_tGetBinVertices(Int_t bin, Double_t* x, Double_t* y) const
virtual Int_tGetContour(Double_t* levels = 0)
virtual Double_tGetContourLevel(Int_t level) const
virtual Double_tGetContourLevelPad(Int_t level) const
static Bool_tGetDefaultSumw2()
TDirectory*GetDirectory() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual Double_tGetEntries() const
virtual Color_tTAttFill::GetFillColor() const
virtual Style_tTAttFill::GetFillStyle() const
virtual const char*TObject::GetIconName() const
virtual Color_tTAttLine::GetLineColor() const
virtual Style_tTAttLine::GetLineStyle() const
virtual Width_tTAttLine::GetLineWidth() const
TList*GetListOfFunctions() const
virtual Color_tTAttMarker::GetMarkerColor() const
virtual Size_tTAttMarker::GetMarkerSize() const
virtual Style_tTAttMarker::GetMarkerStyle() const
virtual Double_tGetMaximum(Double_t maxval = (3.40282e+38)) const
virtual Int_tGetMaximumBin() const
virtual Double_tGetMaximumStored() const
virtual Double_tGetMinimum(Double_t minval = -(3.40282e+38)) const
virtual Int_tGetMinimumBin() const
virtual Double_tGetMinimumStored() const
virtual const char*TNamed::GetName() const
virtual Double_tGetNormFactor() const
virtual Int_tGetNpix() const
virtual Int_tGetNrows() const
virtual Int_tGetNside() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*GetOption() const
virtual Int_tGetOrder() const
TVirtualHealPainter*GetPainter(Option_t* option = "")
virtual voidGetRingInfo(Int_t ring, Int_t& startpix, Int_t& ringpix, Double_t& costheta, Double_t& sintheta, Bool_t& shifted) const
virtual stringGetSchemeString() const
virtual Double_tGetSumOfWeights() const
virtual TArrayD*GetSumw2()
virtual const TArrayD*GetSumw2() const
virtual Int_tGetSumw2N() const
virtual const char*TNamed::GetTitle() const
virtual Int_tGetType() const
virtual stringGetTypeString() const
virtual UInt_tTObject::GetUniqueID() const
virtual stringGetUnit() const
TAxis*GetXaxis() const
TAxis*GetYaxis() const
TAxis*GetZaxis() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tIsDegree() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
virtual Bool_tIsNested() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
virtual Bool_tTAttFill::IsTransparent() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
voidMap2Alm(THealAlm<float>& alm, Bool_t add = kFALSE) const
voidMap2Alm(THealAlm<double>& alm, Bool_t add = kFALSE) const
voidMap2Alm(THealAlm<Float_t>& alm, const vector<Double_t>& weight, Bool_t add = kFALSE)
voidMap2Alm(THealAlm<Double_t>& alm, const vector<Double_t>& weight, Bool_t add = kFALSE)
voidTObject::MayNotUse(const char* method) const
virtual voidTAttLine::Modify()
virtual voidMultiply(const THealPix* hp1)
virtual Int_tNest2Ring(Int_t pix) const
virtual voidNest2XYF(Int_t pix, Int_t& x, Int_t& y, Int_t& face) const
virtual Bool_tTObject::Notify()
static Int_tNside2Npix(Int_t nside)
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
static Int_tOrder2Nside(Int_t order)
virtual voidPaint(Option_t* option = "")
virtual voidPix2XY(Int_t pix, Int_t& x, Int_t& y) const
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
static Bool_tReadFitsHeader(fitsfile** fptr, const char* fname, const char* colname, THealPix::HealHeader_t& head)
virtual THealPix*Rebin(Int_t neworder, const char* newname = "")
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidTAttFill::ResetAttFill(Option_t* option = "")
virtual voidTAttLine::ResetAttLine(Option_t* option = "")
virtual voidTAttMarker::ResetAttMarker(Option_t* toption = "")
voidTObject::ResetBit(UInt_t f)
virtual Int_tRing2Nest(Int_t pix) const
virtual voidRing2XYF(Int_t pix, Int_t& x, Int_t& y, Int_t& face) const
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTAttFill::SaveFillAttributes(ostream& out, const char* name, Int_t coldef = 1, Int_t stydef = 1001)
virtual voidTAttLine::SaveLineAttributes(ostream& out, const char* name, Int_t coldef = 1, Int_t stydef = 1, Int_t widdef = 1)
virtual voidTAttMarker::SaveMarkerAttributes(ostream& out, const char* name, Int_t coldef = 1, Int_t stydef = 1, Int_t sizdef = 1)
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
virtual voidScale(Double_t c1 = 1, Option_t* option = "")
virtual voidSetBarOffset(Float_t offset = 0.25)
virtual voidSetBarWidth(Float_t width = 0.5)
virtual voidSetBinContent(Int_t bin, Double_t content)
virtual voidSetBinError(Int_t bin, Double_t error)
virtual voidSetBins(Int_t n)
virtual voidSetBinsLength(Int_t = -1)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidSetContour(Int_t nlevels, const Double_t* levels = 0)
virtual voidSetContourLevel(Int_t level, Double_t value)
static voidSetDefaultSumw2(Bool_t sumw2 = kTRUE)
virtual voidSetDegree(Bool_t isDegree = kTRUE)
virtual voidSetDirectory(TDirectory* dir)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidSetEntries(Double_t n)
virtual voidTAttFill::SetFillAttributes()MENU
virtual voidTAttFill::SetFillColor(Color_t fcolor)
virtual voidTAttFill::SetFillColorAlpha(Color_t fcolor, Float_t falpha)
virtual voidTAttFill::SetFillStyle(Style_t fstyle)
virtual voidTAttLine::SetLineAttributes()MENU
virtual voidTAttLine::SetLineColor(Color_t lcolor)
virtual voidTAttLine::SetLineColorAlpha(Color_t lcolor, Float_t lalpha)
virtual voidTAttLine::SetLineStyle(Style_t lstyle)
virtual voidTAttLine::SetLineWidth(Width_t lwidth)
virtual voidTAttMarker::SetMarkerAttributes()MENU
virtual voidTAttMarker::SetMarkerColor(Color_t mcolor = 1)
virtual voidTAttMarker::SetMarkerColorAlpha(Color_t mcolor, Float_t malpha)
virtual voidTAttMarker::SetMarkerSize(Size_t msize = 1)
virtual voidTAttMarker::SetMarkerStyle(Style_t mstyle = 1)
virtual voidSetMaximum(Double_t maximum = -1111)
virtual voidSetMinimum(Double_t minimum = -1111)
virtual voidSetName(const char* name)
virtual voidSetNameTitle(const char* name, const char* title)
virtual voidSetNormFactor(Double_t factor = 1)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidSetOption(Option_t* option = "")
virtual voidSetOrder(Int_t order)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidSetUnit(const char* unit)
virtual voidSetXTitle(const char* title)
virtual voidSetYTitle(const char* title)
virtual voidSetZTitle(const char* title)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidSumw2()
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidUseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
virtual Int_tXY2Pix(Int_t x, Int_t y) const
virtual Int_tXYF2Nest(Int_t x, Int_t y, Int_t face) const
virtual Int_tXYF2Ring(Int_t x, Int_t y, Int_t face) const
protected:
virtual voidCopy(TObject& hpnew) const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
private:
voidBuild()
voidFillTable()
THealPix&operator=(const THealPix&)

Data Members

public:
enum { kNoStats
kUserContour
kCanRebin
kLogX
kIsZoomed
kNoTitle
kIsAverage
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
Int_tf2Nside!= 2*fNside
Double_tf2over3Nside!= 2/(3*fNside) (used for faster calculation)
Double_tf3Nside2!= 3*fNside*fNside (used for faster calculation)
Int_tf4Nside!= 4*fNside
Short_tfBarOffset(1000*offset) for bar charts or legos
Short_tfBarWidth(1000*width) for bar charts or legos
TArrayDfContourArray to display contour levels
TDirectory*fDirectory!Pointer to directory holding this HEALPixxs
Double_tfEntriesNumber of entries
Color_tTAttFill::fFillColorfill area color
Style_tTAttFill::fFillStylefill area style
TList*fFunctions->Pointer to list of functions (fits and user)
Bool_tfIsDegreedeg = true, rad = false
Bool_tfIsNestedRING = false, NESTED = true
Color_tTAttLine::fLineColorline color
Style_tTAttLine::fLineStyleline style
Width_tTAttLine::fLineWidthline width
Color_tTAttMarker::fMarkerColorMarker color index
Size_tTAttMarker::fMarkerSizeMarker size
Style_tTAttMarker::fMarkerStyleMarker style
Double_tfMaximumMaximum value for plotting
Double_tfMinimumMinimum value for plotting
TStringTNamed::fNameobject identifier
Int_tfNcap!= 2*fNside*(fNside-1) (used for faster calculation)
Double_tfNormFactorNormalization factor
Int_tfNpix!= 12*fNside^2
Int_tfNside!= 2^fOrder
Int_tfNside2!= fNside*fNside (used for faster calculation)
TStringfOptionhistogram options
Int_tfOrderOrder of resolution
TVirtualHealPainter*fPainter!pointer to HEALPix painter
TArrayDfSumw2Total Sum of squares of weights
TStringTNamed::fTitleobject title
Double_tfTsumwTotal Sum of weights
Double_tfTsumw2Total Sum of squares of weights
stringfUnitUnit of data (used in FITS header)
TAxisfXaxisX axis descriptor
TAxisfYaxisY axis descriptor
TAxisfZaxisZ axis descriptor
static Bool_tfgAddDirectory!flag to add HEALPixs to the directory
static Bool_tfgDefaultSumw2!flag to call THealPix::Sumw2 automatically at histogram creation time
static const Int_tfgJpll[2147483647]!
static const Int_tfgJrll[2147483647]!
static THealPix::THealTablefgTable!ctab and utab holder

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

~THealPix()
 Destructor
void Add(const THealPix* hp1, Double_t c1 = 1)
 Performs the operation: this = this + c1*hp1
 if errors are defined (see THealPix::Sumw2), errors are also recalculated.
 Note that if h1 has Sumw2 set, Sumw2 is automatically called for this
 if not already set.

 SPECIAL CASE (Average/Efficiency HEALPixs)
 For HEALPixs representing averages or efficiencies, one should compute the
 average of the two HEALPixs and not the sum. One can mark a histogram to be
 an average HEALPix by setting its bit kIsAverage with
    myhp.SetBit(THealPix::kIsAverage);
 Note that the two HELAPixs must have their kIsAverage bit set

 IMPORTANT NOTE1: If you intend to use the errors of this HEALPix later
 you should call Sumw2 before making this operation.
 This is particularly important if you fit the histogram after THealPix::Add

 IMPORTANT NOTE2: if hp1 has a normalisation factor, the normalisation
 factor is used, ie this = this + c1*factor*hp1
 Use the other THealPix::Add function if you do not want this feature
void Add(const THealPix* hp1, const THealPix* hp2, Double_t c1 = 1, Double_t c2 = 1)
 Replace contents of this HEALPix by the addition of hp1 and hp2

   this = c1*hp1 + c2*hp2
 if errors are defined (see THealPix::Sumw2), errors are also recalculated
 Note that if hp1 or hp2 have Sumw2 set, Sumw2 is automatically called for
 this if not already set.

 SPECIAL CASE (Average/Efficiency HEALPixs)
 For HEALPixs representing averages or efficiencies, one should compute the
 average of the two HEALPixs and not the sum. One can mark a HEALPix to be
 an average HEALPix by setting its bit kIsAverage with
    myhp.SetBit(THealPix::kIsAverage);
 Note that the two HEALPixs must have their kIsAverage bit set

 IMPORTANT NOTE: If you intend to use the errors of this HEALPix later
 you should call Sumw2 before making this operation.
 This is particularly important if you fit the HEALPix after THealPix::Add
void AddBinContent(Int_t bin)
 Increment bin content by 1
void AddBinContent(Int_t bin, Double_t w)
 Incremetn bin content by a weight w
void AddDirectory(Bool_t add = kTRUE)
 Stes the flag controlling the automatic add of HEALPix in memory

 By default (fAddDirectory = kTRUE), HEALPixs are automatically added to the
 list of objects in memory.
 Note that one HEALPix can be removed from its support directory by calling
 hp->SetDirectory(0) or hp->SetDirectory(dir) to add it to the list of
 objects in the directory dir.

 NOTE that this is a static function. To call it, use;
 THealPix::AddDirectory
Bool_t AddDirectoryStatus()
void Build()
 Creates HEALPix basic data structure
void Copy(TObject& hpnew) const
 Copy this HEALPix structure to obj

 Note that this function does not copy the list of associated functions.
 Use TObJect::Clone to make a full copy of a HEALPix
void Divide(const THealPix* hp1)
 Divide this HEALPix by hp1

 this = this/hp1
 If errors are defined (see THealPix::Sumw2), errors are also recalculated.
 Note that if hp1 has Sumw2 set, Sumw2 is automatically called for this
 if not already set.
 The resulting errors are calculated assuming uncorrelated HEALPixs.
 See the other THealPix::Divide that gives the possibility to optionaly
 compute Binomial errors.

 IMPORTANT NOTE: If you intend to use the errors of this HEALPix later
 you should call Sumw2 before making this operation.
 This is particularly important if you fit the HEALPix after THealPix::Scale
Int_t Fill(Double_t theta, Double_t phi)
 Increments bin with polar coordinates by 1.

 If the storage of the sum of squares of weights has been triggered,
 via the function Sumw2, then the sum of the sqaures of weights is
 incremented by w^2 in the bin.
Int_t Fill(Double_t theta, Double_t phi, Double_t w)
 Increments bin with polar coordinates with a weight w.

 If the storage of the sum of squares of weights has been triggered,
 via the function Sumw2, then the sum of the sqaures of weights is
 incremented by w^2 in the bin.
Int_t Fill(const Double_t* x)
 Increments bin with cartesian coordinates by 1.

 If the storage of the sum of squares of weights has been triggered,
 via the function Sumw2, then the sum of the sqaures of weights is
 incremented by w^2 in the bin.
Int_t Fill(const Double_t* x, Double_t w)
 Increments bin with cartesian coordinates with a weight w

 If the storage of the sum of squares of weights has been triggered,
 via the function Sumw2, then the sum of the sqaures of weights is
 incremented by w^2 in the bin.
Int_t Fill(const Float_t* x)
 Increments bin with cartesian coordinates by 1.

 If the storage of the sum of squares of weights has been triggered,
 via the function Sumw2, then the sum of the sqaures of weights is
 incremented by w^2 in the bin.
Int_t Fill(const Float_t* x, Double_t w)
 Increments bin with cartesian coordinates with a weight w

 If the storage of the sum of squares of weights has been triggered,
 via the function Sumw2, then the sum of the sqaures of weights is
 incremented by w^2 in the bin.
Int_t FindBin(Double_t theta, Double_t phi) const
 Return the bin number corresponds to (theta, phi).

 Oribinal code is Healpix_Base::ang2pix_z_phi of HEALPix C++
Double_t GetAverage() const
 Return the average of all bin contents.
Double_t GetBinArea(Bool_t degree2 = kFALSE) const
 Return the solid angle of each bin. If degree2 == kTRUE, return value is
 in unit of degree.
void GetBinCenter(Int_t bin, Double_t& theta, Double_t& phi) const
void GetBinCenter(Int_t bin, Double_t* theta, Double_t* phi) const
 Return the coordinates of bin center. If the default unit is set to degre
 via THealPix::SetDegree, theta and phi are given in unit of degree.

 Oribinal code is Healpix_Base::pix2ang of HEALPix C++
 See Gorski et al. ApJ 622 (2005) for equation numbering
Double_t GetBinContent(Int_t bin) const
 Get the content of a bin.
Int_t GetBinVertices(Int_t bin, Double_t* x, Double_t* y) const
 Return the coordinates of four or five vertices of each bin. Their unit
 is always degree. The return value is the number of vertices. Five vertices
 are given to only eight polar bins.
Bool_t GetDefaultSumw2()
 static function
 return kTRUE if THealPix::Sumw2 must be called when creating new HEALPix.
 see THealPix::SetDefaultSumw2.
Double_t GetEntries() const
 Return the current number of entries
void GetRingInfo(Int_t ring, Int_t& startpix, Int_t& ringpix, Double_t& costheta, Double_t& sintheta, Bool_t& shifted) const
Double_t GetSumOfWeights() const
 Return the sum of weights
void Draw(Option_t* option = "")
 Draw this HEALPix with options

 HEALPixs are drawn via the THealPainter class. Each HEALPix has a pointer
 to its own painter (to be usable in a mutithreaded program). The same
 HEALPix can be drawn with different options in different pads. When a
 HEALPix drawn in a pad is deleted, the HEALPix is automatically removed
 from the pad or pads where it was drawn.

 If a HEALPix is drawn in a pad, then filled again, the new status of the
 HEALPix will be automatically shown in the pad next time the pad is
 updated. One does not need to redraw the HEALPix.

 To draw the current version of a HEALPix in a pad, one can use
    hp->DrawCopy();
 This make a clone of the HEALPix. Once the clone is drawn, the original
 HEALPix may be modified or deleted without affecting the aspect of the
 clone.

 By default, THealPix::Draw clears the current pad.

 One can use THealPix::SetMaximum and THealPix::SetMinimum to force a
 particular value for the maximum or the minimum scale on the plot.

 THealPix::UseCurrentStyle can be used to change all HEALPix graphics
 attributes to correspond to the current selected style. This function
 must be called for each HEALPix.

 In case of reads and draws many HEALPixs from a file, one can force the
 HEALPixs to inherit automatically the current graphic style by calling
 before gROOT->ForceStyle();

 See THealPainter::Paint for a description of all the drawing options.
THealPix* DrawCopy(Option_t* option = "") const
 Copy this HEALPix and Draw in the current pad.

 Once the HEALPix is drawn into the pad, any further modification
 using graphics input will be made on the copy of the HEALPix,
 and not to the original object.

 See Draw for the list of options
void Multiply(const THealPix* hp1)
void Paint(Option_t* option = "")
 Control routine to paint any kind of HEALPixs
Bool_t ReadFitsHeader(fitsfile** fptr, const char* fname, const char* colname, THealPix::HealHeader_t& head)
 Read the header of a FITS file. If success, return kTRUE.
THealPix* Rebin(Int_t neworder, const char* newname = "")
 Rebin this HEALPix to new order.

 If a new name is given, return value is a pointer to new object. Otherwise
 this object will be rebined.

 Rebinning to higher resolution does not do any interpolation nor smoothing.
 It does only dividing the bin contents.
void SetBinContent(Int_t bin, Double_t content)
 Set the contents of a bin
void SetDefaultSumw2(Bool_t sumw2 = kTRUE)
 static function.
 When this static function is called with sumw2=kTRUE, all new
 HEALPix will automatically activate the storage of
 the sum of squares of errors, ie THealPix::Sumw2 is automatically called.
void SetOrder(Int_t order)
 Set the order of a HEALPix. Do NOT call this function when you want to
 rebin the HEALPix. Use THealPix::Rebin instead.
void SetUnit(const char* unit)
 Set the unit of HEALPix. This value is used in saving to FITS format.
void Streamer(TBuffer& )
 Stream a class object.
void Sumw2()
 Create structure to store sum of squares of weights*-*-*-*-*-*-*-*

     if HEALPix is already filled, the sum of squares of weights
     is filled with the existing bin contents

     The error per bin will be computed as sqrt(sum of squares of weight)
     for each bin.

  This function is automatically called when the HEALPix is created
  if the static function THealPix::SetDefaultSumw2 has been called before.
void UseCurrentStyle()
 Copy current attributes from/to current style.
Double_t GetBinError(Int_t bin) const
   -*-*-*-*-*Return value of error associated to bin number bin*-*-*-*-*


    if the sum of squares of weights has been defined (via Sumw2),
    this function returns the sqrt(sum of w2).
    otherwise it returns the sqrt(contents) for this bin.

   -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
Int_t GetContour(Double_t* levels = 0)
  Return contour values into array levels if pointer levels is non zero

  The function returns the number of contour levels.
  see GetContourLevel to return one contour only

Double_t GetContourLevel(Int_t level) const
 Return value of contour number level
 see GetContour to return the array of all contour levels
Double_t GetContourLevelPad(Int_t level) const
 Return the value of contour number "level" in Pad coordinates ie: if the
 Pad is in log scale along Z it returns le log of the contour level value.
 see GetContour to return the array of all contour levels
Double_t GetMaximum(Double_t maxval = (3.40282e+38)) const
 Retrun maximum value smaller than maxval of bins.
Int_t GetMaximumBin() const
 Return location of bin with maximum value.
Double_t GetMinimum(Double_t minval = -(3.40282e+38)) const
 Retrun minimum value smaller than maxval of bins.
Int_t GetMinimumBin() const
 Return location of bin with minimum value.
Int_t GetNrows() const
 Return number of rows used in FITS storaging.
TVirtualHealPainter* GetPainter(Option_t* option = "")
 return pointer to patiner
 if painter does not exist, it is created
std::string GetSchemeString() const
 Return ordering sheme as string.
 R
TAxis* GetXaxis() const
 return a pointer to the X axis object
TAxis* GetYaxis() const
 return a pointer to the Y axis object
TAxis* GetZaxis() const
 return a pointer to the Z axis object
void Scale(Double_t c1 = 1, Option_t* option = "")
 Multiply this histogram by a constant c1

 this = c1*this

 Note that both contents and errors (if any) are scaled.
 This function uses the services of THealPix::Add

 IMPORTANT NOTE: If you intend to use the errors of this HEALPix later
 you should call Sumw2 before making this operation.
 This is particularly important if you fit the histogram after
 THealPix::Scale

 One can scale a HEALPix such that the bins integral is equal to
 the normalization parameter via THealPix::Scale(Double_t norm), where norm
 is the desired normalization divided by the integral of the histogram.

 If option contains "width" the bin contents and errors are divided
 by the bin width.
void SetBinError(Int_t bin, Double_t error)
 see convention for numbering bins in THealPix::GetBin
void SetBins(Int_t n)
 Redifine the number of bins. Do NOT call this method.
void SetContour(Int_t nlevels, const Double_t* levels = 0)
   -*-*-*-*-*-*Set the number and values of contour levels*-*-*-*-*-*-*-*-*


  By default the number of contour levels is set to 20.

  if argument levels = 0 or missing, equidistant contours are computed

void SetContourLevel(Int_t level, Double_t value)
   -*-*-*-*-*-*-*-*-*Set value for one contour level*-*-*-*-*-*-*-*-*-*-*-*

void SetDirectory(TDirectory* dir)
 By default when a HEALPix is created, it is added to the list
 of HEALPix objects in the current directory in memory.
 Remove reference to this HEALPix from current directory and add
 reference to new directory dir. dir can be 0 in which case the
 HEALPix does not belong to any directory.
void SetMaximum(Double_t maximum = -1111)
 Set the maximum value for the Z axis.

 By default the maximum value is automatically set to the maximum bin
 content plus a margin of 10 per cent.
 Use THealPix::GetMaximum to find the maximum value of a HEALPix.
 Use THealPix::GetMaximumBin to find the bin with the maximum value of
 a HEALPix.
void SetMinimum(Double_t minimum = -1111)
 Set the minimum value for the Z axis.

 By default the minimum value is automatically set to zero if all bin
 contents are positive or the minimum - 10 per cen otherwise.
 Use THealPix::GetMinimum to find the minimum value of a HEALPix.
 Use THealPix::GetMinimumBin to find the bin with the minimum value of
 a HEALPix.
void SetName(const char* name)
 Change the name of this HEALPix.
void SetNameTitle(const char* name, const char* title)
 Change the name and title of this HEALPix.
void Ring2XYF(Int_t pix, Int_t& x, Int_t& y, Int_t& face) const
 Original code is Healpix_Base::ring2xyf of HEALPix C++
Int_t XYF2Ring(Int_t x, Int_t y, Int_t face) const
 Original code is Healpix_Base::xyf2ring of HEALPix C++
void Map2Alm(THealAlm<T>& alm, Bool_t add)
void Nest2XYF(Int_t pix, Int_t& x, Int_t& y, Int_t& face) const
Int_t XYF2Nest(Int_t x, Int_t y, Int_t face) const
Int_t Nest2Ring(Int_t pix) const
Int_t Ring2Nest(Int_t pix) const
void Pix2XY(Int_t pix, Int_t& x, Int_t& y) const
Int_t XY2Pix(Int_t x, Int_t y) const
void Map2Alm(THealAlm<T>& alm, const std::vector<double>& weight, Bool_t add)
void FillTable()
THealPix& operator=(const THealPix& )
Float_t GetBarOffset() const
{return Float_t(0.001*Float_t(fBarOffset));}
Float_t GetBarWidth() const
{return Float_t(0.001*Float_t(fBarWidth));}
TDirectory* GetDirectory() const
{return fDirectory;}
TList* GetListOfFunctions() const
{return fFunctions;}
Double_t GetMaximumStored() const
{return fMaximum;}
Double_t GetMinimumStored() const
{return fMinimum;}
Int_t GetNside() const
{ return fNside;}
Double_t GetNormFactor() const
{return fNormFactor;}
Int_t GetNpix() const
{ return fNpix;}
Option_t* GetOption() const
{return fOption.Data();}
Int_t GetOrder() const
{ return fOrder;}
TArrayD* GetSumw2()
{return &fSumw2;}
const TArrayD* GetSumw2() const
{return &fSumw2;}
Int_t GetSumw2N() const
{return fSumw2.fN;}
Int_t GetType() const
std::string GetTypeString() const
std::string GetUnit() const
{ return fUnit;}
Bool_t IsDegree() const
{return fIsDegree;}
Bool_t IsNested() const
{return fIsNested;}
void Map2Alm(THealAlm<T>& alm, Bool_t add = kFALSE)
void Map2Alm(THealAlm<T>& alm, const std::vector<double>& weight, Bool_t add = kFALSE)
void SetBarOffset(Float_t offset = 0.25)
{fBarOffset = Short_t(1000*offset);}
void SetBarWidth(Float_t width = 0.5)
{fBarWidth = Short_t(1000*width);}
void SetBinsLength(Int_t = -1)
{}
void SetDegree(Bool_t isDegree = kTRUE)
{fIsDegree = isDegree;}
void SetEntries(Double_t n)
{fEntries = n;}
void SetNormFactor(Double_t factor = 1)
{fNormFactor = factor;}
void SetOption(Option_t* option = "")
{fOption = option;}
void SetXTitle(const char* title)
{fXaxis.SetTitle(title);}
void SetYTitle(const char* title)
{fYaxis.SetTitle(title);}
void SetZTitle(const char* title)
{fZaxis.SetTitle(title);}
Int_t Nside2Npix(Int_t nside)
{return 12*nside*nside;}
Int_t Order2Nside(Int_t order)
{return 1<<order;}