ROOT  6.06/09
Reference Guide
Static Public Member Functions | Static Private Member Functions | List of all members
TMakeProject Class Reference

Definition at line 24 of file TMakeProject.h.

Static Public Member Functions

static void AddUniqueStatement (FILE *fp, const char *statement, char *inclist)
 Add an include statement, if it has not already been added. More...
 
static void AddInclude (FILE *fp, const char *header, Bool_t system, char *inclist)
 Add an include statement, if it has not already been added. More...
 
static void ChopFileName (TString &name, Int_t limit)
 Chop the name by replacing the ending (before a potential extension) with a md5 summary of the name. More...
 
static TString GetHeaderName (const char *name, const TList *extrainfos, Bool_t includeNested=kFALSE)
 Return the header name containing the description of name. More...
 
static UInt_t GenerateClassPrefix (FILE *fp, const char *clname, Bool_t top, TString &protoname, UInt_t *numberOfClasses, Int_t implementEmptyClass=kFALSE, Bool_t needGenericTemplate=kFALSE)
 Write the start of the class (forward) declaration. More...
 
static void GenerateMissingStreamerInfos (TList *extrainfos, TStreamerElement *element)
 Generate an empty StreamerInfo for types that are used in templates parameters but are not known in the list of class. More...
 
static void GenerateMissingStreamerInfos (TList *extrainfos, const char *clname)
 Generate an empty StreamerInfo for types that are used in templates parameters but are not known in the list of class. More...
 
static UInt_t GenerateForwardDeclaration (FILE *fp, const char *clname, char *inclist, Bool_t implementEmptyClass, Bool_t needGenericTemplate, const TList *extrainfos)
 Insert a (complete) forward declaration for the class 'clname'. More...
 
static UInt_t GenerateIncludeForTemplate (FILE *fp, const char *clname, char *inclist, Bool_t forward, const TList *extrainfos)
 Add to the header file, the #include needed for the argument of this template. More...
 
static TString UpdateAssociativeToVector (const char *name)
 If we have a map, multimap, set or multiset, plus unordered partners, and the key is a class, we need to replace the container by a vector since we don't have the comparator function. More...
 
static void GeneratePostDeclaration (FILE *fp, const TVirtualStreamerInfo *info, char *inclist)
 Add to the header file anything that need to appear after the class declaration (this includes some #pragma link). More...
 

Static Private Member Functions

static void GenerateMissingStreamerInfo (TList *extrainfos, const char *clname, Bool_t iscope)
 Generate an empty StreamerInfo for the given type (no recursion) if it is not not known in the list of class. More...
 

#include <TMakeProject.h>

Member Function Documentation

void TMakeProject::AddInclude ( FILE *  fp,
const char *  header,
Bool_t  system,
char *  inclist 
)
static

Add an include statement, if it has not already been added.

Definition at line 46 of file TMakeProject.cxx.

Referenced by GenerateIncludeForTemplate(), and TStreamerInfo::GenerateIncludes().

void TMakeProject::AddUniqueStatement ( FILE *  fp,
const char *  statement,
char *  inclist 
)
static

Add an include statement, if it has not already been added.

Definition at line 32 of file TMakeProject.cxx.

Referenced by AddInclude(), GenerateIncludeForTemplate(), and GeneratePostDeclaration().

void TMakeProject::ChopFileName ( TString name,
Int_t  limit 
)
static

Chop the name by replacing the ending (before a potential extension) with a md5 summary of the name.

Definition at line 61 of file TMakeProject.cxx.

Referenced by GetHeaderName().

UInt_t TMakeProject::GenerateClassPrefix ( FILE *  fp,
const char *  clname,
Bool_t  top,
TString protoname,
UInt_t numberOfClasses,
Int_t  implementEmptyClass = kFALSE,
Bool_t  needGenericTemplate = kFALSE 
)
static

Write the start of the class (forward) declaration.

If 'implementEmptyClass' is 3 then never add a #pragma

Definition at line 148 of file TMakeProject.cxx.

Referenced by TStreamerInfo::GenerateDeclaration(), and GenerateForwardDeclaration().

UInt_t TMakeProject::GenerateForwardDeclaration ( FILE *  fp,
const char *  clname,
char *  inclist,
Bool_t  implementEmptyClass,
Bool_t  needGenericTemplate,
const TList extrainfos 
)
static

Insert a (complete) forward declaration for the class 'clname'.

Definition at line 413 of file TMakeProject.cxx.

Referenced by TStreamerInfo::GenerateHeaderFile(), and GenerateIncludeForTemplate().

UInt_t TMakeProject::GenerateIncludeForTemplate ( FILE *  fp,
const char *  clname,
char *  inclist,
Bool_t  forward,
const TList extrainfos 
)
static

Add to the header file, the #include needed for the argument of this template.

Definition at line 440 of file TMakeProject.cxx.

Referenced by GenerateForwardDeclaration(), and TStreamerInfo::GenerateIncludes().

void TMakeProject::GenerateMissingStreamerInfo ( TList extrainfos,
const char *  clname,
Bool_t  iscope 
)
staticprivate

Generate an empty StreamerInfo for the given type (no recursion) if it is not not known in the list of class.

If the type itself is a template, we mark it with version 1 (a class) otherwise we mark it as version -3 (an enum).

Definition at line 303 of file TMakeProject.cxx.

Referenced by GenerateMissingStreamerInfos().

void TMakeProject::GenerateMissingStreamerInfos ( TList extrainfos,
TStreamerElement element 
)
static

Generate an empty StreamerInfo for types that are used in templates parameters but are not known in the list of class.

If the type itself is a template, we mark it with version 1 (a class) otherwise we mark it as version -3 (an enum).

Definition at line 398 of file TMakeProject.cxx.

Referenced by GenerateMissingStreamerInfos(), and TFile::MakeProject().

void TMakeProject::GenerateMissingStreamerInfos ( TList extrainfos,
const char *  clname 
)
static

Generate an empty StreamerInfo for types that are used in templates parameters but are not known in the list of class.

If the type itself is a template, we mark it with version 1 (a class) otherwise we mark it as version -3 (an enum).

Definition at line 350 of file TMakeProject.cxx.

void TMakeProject::GeneratePostDeclaration ( FILE *  fp,
const TVirtualStreamerInfo info,
char *  inclist 
)
static

Add to the header file anything that need to appear after the class declaration (this includes some #pragma link).

Definition at line 592 of file TMakeProject.cxx.

Referenced by TStreamerInfo::GenerateHeaderFile().

TString TMakeProject::GetHeaderName ( const char *  name,
const TList extrainfos,
Bool_t  includeNested = kFALSE 
)
static

Return the header name containing the description of name.

Definition at line 83 of file TMakeProject.cxx.

Referenced by GenerateClassPrefix(), TStreamerInfo::GenerateDeclaration(), TStreamerInfo::GenerateHeaderFile(), GenerateIncludeForTemplate(), and TStreamerInfo::GenerateIncludes().

TString TMakeProject::UpdateAssociativeToVector ( const char *  name)
static

If we have a map, multimap, set or multiset, plus unordered partners, and the key is a class, we need to replace the container by a vector since we don't have the comparator function.

The 'name' is modified to return the change in the name, if any.

Definition at line 638 of file TMakeProject.cxx.

Referenced by TStreamerInfo::GenerateDeclaration(), GenerateIncludeForTemplate(), TFile::MakeProject(), and R__WriteDestructorBody().


The documentation for this class was generated from the following files: