packages feed

HROOT-hist-0.10.0.1: csrc/HROOTHistTH2Poly.h

#ifdef __cplusplus
extern "C" {
#endif

#pragma once


#include "HROOT-histType.h"

#include "HROOTHistTH2.h"

#include "HROOTHistTH1.h"

#include "HROOTCoreTNamed.h"

#include "HROOTCoreTAttLine.h"

#include "HROOTCoreTAttFill.h"

#include "HROOTCoreTAttMarker.h"

#include "HROOTCoreTObject.h"

#include "STDDeletable.h"

#include "HROOT-coreType.h"


#define TH2POLY_DECL_VIRT(Type) \
int Type##_AddBin ( Type##_p p, TObject_p poly );\
int Type##_FillS ( Type##_p p, const char* name, double w );


#define TH2POLY_DECL_NONVIRT(Type) \
Type##_p Type##_newTH2Poly ( const char* name, const char* title, double xlow, double xup, double ylow, double yup );


#define TH2POLY_DECL_ACCESSOR(Type) \



#define TH2POLY_DEF_VIRT(Type) \
int Type##_AddBin ( Type##_p p, TObject_p poly ) {\
return ((TYPECASTMETHOD(Type, AddBin, TH2Poly))(p))->AddBin(from_nonconst_to_nonconst<TObject, TObject_t>(poly));\
}\
\
int Type##_FillS ( Type##_p p, const char* name, double w ) {\
return ((TYPECASTMETHOD(Type, FillS, TH2Poly))(p))->Fill(name, w);\
}


#define TH2POLY_DEF_NONVIRT(Type) \
Type##_p Type##_newTH2Poly ( const char* name, const char* title, double xlow, double xup, double ylow, double yup ) {\
Type* newp=new Type(name, title, xlow, xup, ylow, yup);return from_nonconst_to_nonconst<Type##_t, Type>(newp);\
}


#define TH2POLY_DEF_ACCESSOR(Type) \



TH2_DECL_VIRT(TH2Poly)
TH1_DECL_VIRT(TH2Poly)
TNAMED_DECL_VIRT(TH2Poly)
TATTLINE_DECL_VIRT(TH2Poly)
TATTFILL_DECL_VIRT(TH2Poly)
TATTMARKER_DECL_VIRT(TH2Poly)
TOBJECT_DECL_VIRT(TH2Poly)
DELETABLE_DECL_VIRT(TH2Poly)
TH2POLY_DECL_VIRT(TH2Poly)
TH2POLY_DECL_NONVIRT(TH2Poly)
TH2POLY_DECL_ACCESSOR(TH2Poly)

#ifdef __cplusplus
}
#endif