Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TStreamerInfo.cxx File Reference
#include "TStreamerInfo.h"
#include "TFile.h"
#include "TROOT.h"
#include "TClonesArray.h"
#include "TStreamerElement.h"
#include "TClass.h"
#include "TClassEdit.h"
#include "TClassTable.h"
#include "TDataMember.h"
#include "TDataType.h"
#include "TRealData.h"
#include "TBaseClass.h"
#include "TBuffer.h"
#include "TArrayC.h"
#include "TArrayI.h"
#include "TArrayF.h"
#include "TArrayD.h"
#include "TArrayS.h"
#include "TArrayL.h"
#include "TError.h"
#include "TEnum.h"
#include "TRef.h"
#include "TProcessID.h"
#include "TSystem.h"
#include "TObjString.h"
#include "snprintf.h"
#include "TStreamer.h"
#include "TContainerConverters.h"
#include "TCollectionProxyFactory.h"
#include "TVirtualCollectionProxy.h"
#include "TInterpreter.h"
#include "TMemberInspector.h"
#include "TMakeProject.h"
#include "TSchemaRuleSet.h"
#include "TSchemaRule.h"
#include "TVirtualMutex.h"
#include "TStreamerInfoActions.h"
#include <memory>
#include <array>
Include dependency graph for TStreamerInfo.cxx:

Macros

#define DeleteBasicPointer(addr, element, name)
 
#define DOLOOP   for (k = 0, pointer = arr[0]; k < narr; pointer = arr[++k])
 
#define READ_ARRAY(TYPE_t)
 

Enumerations

enum class  EUniquePtrOffset : char { kNA = 0 , kZero = 1 , kNonZero = 2 }
 

Functions

static TStreamerElementR__CreateEmulatedElement (const char *dmName, const std::string &dmFull, Int_t offset, bool silent)
 
static bool R__IsUniquePtr (TStreamerElement *element)
 Return true if the element is auto_ptr or unique_ptr.
 
static void R__TObjArray_InsertAfter (TObjArray *arr, TObject *newobj, TObject *oldobj)
 
static void R__TObjArray_InsertAt (TObjArray *arr, std::vector< TStreamerArtificial * > &objs, Int_t at)
 
static void R__TObjArray_InsertAt (TObjArray *arr, TObject *obj, Int_t at)
 
static void R__TObjArray_InsertBefore (TObjArray *arr, TObject *newobj, TObject *oldobj)
 
static void R__WriteConstructorBody (FILE *file, TIter &next)
 
static void R__WriteDestructorBody (FILE *file, TIter &next)
 
static void R__WriteMoveBodyPointersArrays (FILE *file, const TString &protoname, TIter &next)
 Write down the pointers and arrays part of the body of the 'move' constructor.
 
static void R__WriteMoveConstructorBody (FILE *file, const TString &protoname, TIter &next)
 Write down the body of the 'move' constructor.
 
static void R__WriteOddOperatorEqualBody (FILE *file, const TString &protoname, TIter &next)
 Write down the body of the 'move' constructor.
 
static constexpr int str_length (const char *str)
 

Variables

const Int_t kMaxLen = 1024
 

Macro Definition Documentation

◆ DeleteBasicPointer

#define DeleteBasicPointer (   addr,
  element,
  name 
)
Value:
{ \
name **f = (name**)(addr); \
int n = element->GetArrayLength() ? element->GetArrayLength() : 1;\
for(int j=0;j<n;j++) { \
delete [] f[j]; \
f[j] = 0; \
} \
}
#define f(i)
Definition RSha256.hxx:104
char name[80]
Definition TGX11.cxx:110
const Int_t n
Definition legend1.C:16

Definition at line 4948 of file TStreamerInfo.cxx.

◆ DOLOOP

#define DOLOOP   for (k = 0, pointer = arr[0]; k < narr; pointer = arr[++k])

Definition at line 5402 of file TStreamerInfo.cxx.

◆ READ_ARRAY

#define READ_ARRAY (   TYPE_t)
Value:
{ \
Int_t sub_instance, index; \
Int_t instance = k; \
if (len) { \
index = instance / len; \
sub_instance = instance % len; \
} else { \
index = instance; \
sub_instance = 0; \
} \
TYPE_t **val =(TYPE_t**)(ladd); \
return T((val[sub_instance])[index]); \
}
int Int_t
Definition RtypesCore.h:45
double T(double x)

Enumeration Type Documentation

◆ EUniquePtrOffset

enum class EUniquePtrOffset : char
strong
Enumerator
kNA 
kZero 
kNonZero 

Definition at line 135 of file TStreamerInfo.cxx.

Function Documentation

◆ R__CreateEmulatedElement()

static TStreamerElement * R__CreateEmulatedElement ( const char *  dmName,
const std::string &  dmFull,
Int_t  offset,
bool  silent 
)
static

Definition at line 5689 of file TStreamerInfo.cxx.

◆ R__IsUniquePtr()

static bool R__IsUniquePtr ( TStreamerElement element)
static

Return true if the element is auto_ptr or unique_ptr.

Definition at line 3437 of file TStreamerInfo.cxx.

◆ R__TObjArray_InsertAfter()

static void R__TObjArray_InsertAfter ( TObjArray arr,
TObject newobj,
TObject oldobj 
)
static

Definition at line 112 of file TStreamerInfo.cxx.

◆ R__TObjArray_InsertAt() [1/2]

static void R__TObjArray_InsertAt ( TObjArray arr,
std::vector< TStreamerArtificial * > &  objs,
Int_t  at 
)
static

Definition at line 98 of file TStreamerInfo.cxx.

◆ R__TObjArray_InsertAt() [2/2]

static void R__TObjArray_InsertAt ( TObjArray arr,
TObject obj,
Int_t  at 
)
static

Definition at line 87 of file TStreamerInfo.cxx.

◆ R__TObjArray_InsertBefore()

static void R__TObjArray_InsertBefore ( TObjArray arr,
TObject newobj,
TObject oldobj 
)
static

Definition at line 124 of file TStreamerInfo.cxx.

◆ R__WriteConstructorBody()

static void R__WriteConstructorBody ( FILE *  file,
TIter next 
)
static

Definition at line 3408 of file TStreamerInfo.cxx.

◆ R__WriteDestructorBody()

static void R__WriteDestructorBody ( FILE *  file,
TIter next 
)
static

Definition at line 3579 of file TStreamerInfo.cxx.

◆ R__WriteMoveBodyPointersArrays()

static void R__WriteMoveBodyPointersArrays ( FILE *  file,
const TString protoname,
TIter next 
)
static

Write down the pointers and arrays part of the body of the 'move' constructor.

Definition at line 3451 of file TStreamerInfo.cxx.

◆ R__WriteMoveConstructorBody()

static void R__WriteMoveConstructorBody ( FILE *  file,
const TString protoname,
TIter next 
)
static

Write down the body of the 'move' constructor.

Definition at line 3516 of file TStreamerInfo.cxx.

◆ R__WriteOddOperatorEqualBody()

static void R__WriteOddOperatorEqualBody ( FILE *  file,
const TString protoname,
TIter next 
)
static

Write down the body of the 'move' constructor.

Definition at line 3549 of file TStreamerInfo.cxx.

◆ str_length()

static constexpr int str_length ( const char *  str)
staticconstexpr

Definition at line 3429 of file TStreamerInfo.cxx.

Variable Documentation

◆ kMaxLen

const Int_t kMaxLen = 1024

Definition at line 83 of file TStreamerInfo.cxx.