38 fTypeNameIdx(-1), fTypeNameLen(0)
63 fTypeNameIdx(-1), fTypeNameLen(0)
77 fInfo(
gCling->TypedefInfo_FactoryCopy(
dt.fInfo)),
79 fAlignOf(
dt.fAlignOf),
81 fProperty(
dt.fProperty),
82 fTrueName(
dt.fTrueName),
83 fTypeNameIdx(
dt.fTypeNameIdx),
84 fTypeNameLen(
dt.fTypeNameLen)
122 case 1:
return "Char_t";
123 case 2:
return "Short_t";
124 case 3:
return "Int_t";
125 case 4:
return "Long_t";
126 case 5:
return "Float_t";
127 case 6:
return "Int_t";
128 case 7:
return "char*";
129 case 8:
return "Double_t";
130 case 9:
return "Double32_t";
131 case 11:
return "UChar_t";
132 case 12:
return "UShort_t";
133 case 13:
return "UInt_t";
134 case 14:
return "ULong_t";
135 case 15:
return "UInt_t";
136 case 16:
return "Long64_t";
137 case 17:
return "ULong64_t";
138 case 18:
return "Bool_t";
139 case 19:
return "Float16_t";
145 case kchar:
return "Char_t";
162 (
const_cast<TDataType*
>(
this))->CheckInfo();
166 Error(
"GetTypeName",
"Cannot find type name %s in true name %s!",
184 (
const_cast<TDataType*
>(
this))->CheckInfo();
199 if (
typeid(
unsigned int) ==
typeinfo) {
201 }
else if (
typeid(
int) ==
typeinfo) {
211 }
else if (
typeid(
unsigned short) ==
typeinfo) {
213 }
else if (
typeid(
short) ==
typeinfo) {
215 }
else if (
typeid(
unsigned char) ==
typeinfo) {
217 }
else if (
typeid(
char) ==
typeinfo) {
221 }
else if (
typeid(
float) ==
typeinfo) {
225 }
else if (
typeid(
double) ==
typeinfo) {
229 }
else if (
typeid(
char*) ==
typeinfo) {
231 }
else if (
typeid(
signed char) ==
typeinfo) {
247 (
const_cast<TDataType*
>(
this))->CheckInfo();
255 line.Form(
"%u", *(
unsigned int *)buf);
257 line.Form(
"%u", *(
unsigned int *)buf);
259 line.Form(
"%d", *(
int *)buf);
273 line.Form(
"%hu", *(
unsigned short *)buf);
275 line.Form(
"%hd", *(
short *)buf);
277 line.Form(
"%s", *(
Bool_t *)buf ?
"true" :
"false");
281 line.Form(
"%g", *(
float *)buf);
283 line.Form(
"%g", *(
float *)buf);
285 line.Form(
"%g", *(
double *)buf);
287 line.Form(
"%g", *(
double *)buf);
289 line.Form(
"%s", *(
char**)buf);
317 R__ASSERT(
al <=
static_cast<std::size_t
>(std::numeric_limits<unsigned int>::max()) &&
318 "alignof value exceeds unsigned int range");
float Float16_t
Float 4 bytes in memory, written to disk as 3 bytes (24-bits) by default or as a 4 bytes fixed-point-...
bool Bool_t
Boolean (0=false, 1=true) (bool)
unsigned short UShort_t
Unsigned Short integer 2 bytes (unsigned short)
int Int_t
Signed integer 4 bytes (int)
double Double32_t
Double 8 bytes in memory, written to disk as a 4 bytes Float_t (32-bits) by default,...
unsigned char UChar_t
Unsigned Character 1 byte (unsigned char)
char Char_t
Character 1 byte (char)
unsigned long ULong_t
Unsigned long integer 4 bytes (unsigned long). Size depends on architecture.
long Long_t
Signed long integer 4 bytes (long). Size depends on architecture.
unsigned int UInt_t
Unsigned integer 4 bytes (unsigned int)
float Float_t
Float 4 bytes (float)
short Short_t
Signed Short integer 2 bytes (short)
double Double_t
Double 8 bytes.
long long Long64_t
Portable signed long integer 8 bytes.
unsigned long long ULong64_t
Portable unsigned long integer 8 bytes.
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
@ kDataTypeAliasSignedChar_t
@ kDataTypeAliasUnsigned_t
#define R__ASSERT(e)
Checks condition e and reports a fatal error if it's false.
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 Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
R__EXTERN TVirtualMutex * gInterpreterMutex
R__EXTERN TInterpreter * gCling
#define R__LOCKGUARD(mutex)
Collection abstract base class.
Basic data type descriptor (datatype information is obtained from CINT).
void CheckInfo()
Refresh the underlying information.
virtual ~TDataType()
TDataType dtor deletes adopted CINT TypedefInfo object.
TypedefInfo_t * fInfo
!pointer to CINT typedef info
static TDataType * fgBuiltins[kNumDataTypes]
const char * GetFullTypeName() const
Get full type description of typedef, e,g.: "class TDirectory*".
Long_t Property() const override
Get property description word. For meaning of bits see EProperty.
const char * AsString(void *buf) const
Return string containing value in buffer formatted according to the basic data type.
TString GetTypeName()
Get basic type of typedef, e,g.: "class TDirectory*" -> "TDirectory".
TDataType(const TDataType &)
copy constructor
static void AddBuiltins(TCollection *types)
Create the TDataType objects for builtins.
static TDataType * GetDataType(EDataType type)
Given a EDataType type, get the TDataType* that represents it.
TDataType & operator=(const TDataType &)
assignment operator
void SetType(const char *name)
Set type id depending on name.
Int_t Size() const
Get size of basic typedef'ed type.
This class defines an abstract interface that must be implemented by all classes that contain diction...
TDictionary & operator=(const TDictionary &other)
virtual TypedefInfo_t * TypedefInfo_FactoryCopy(TypedefInfo_t *) const
virtual const char * TypedefInfo_TrueName(TypedefInfo_t *) const
virtual Long_t TypedefInfo_Property(TypedefInfo_t *) const
virtual Bool_t TypedefInfo_IsValid(TypedefInfo_t *) const
virtual void TypedefInfo_Delete(TypedefInfo_t *) const
virtual const char * TypedefInfo_Name(TypedefInfo_t *) const
virtual void TypedefInfo_Init(TypedefInfo_t *, const char *) const
virtual const char * TypedefInfo_Title(TypedefInfo_t *) const
virtual int TypedefInfo_Size(TypedefInfo_t *) const
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
virtual void SetName(const char *name)
Set the name of the TNamed.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
const char * Data() const
Ssiz_t Index(const char *pat, Ssiz_t i=0, ECaseCompare cmp=kExact) const