4 #ifndef ROOT_TSchemaRule 5 #define ROOT_TSchemaRule 29 TSources(
const char *
name = 0,
const char *title = 0,
const char *dims = 0) :
TNamed(
name,title),fDimensions(dims) {}
125 #endif // ROOT_TSchemaRule Bool_t IsValid() const
Return kTRUE if this rule is valid.
const TObjArray * GetInclude() const
Return the list of header files to include to be able to compile this rule as a TObjArray of TObjStri...
TString fCode
Includes vector.
const char * GetSourceClass() const
Get the source class of this rule (i.e. the onfile class).
Bool_t HasTarget(const TString &target) const
Return true if one of the rule's data member target is 'target'.
void(* ReadRawFuncPtr_t)(char *, TBuffer &)
Bool_t IsRenameRule() const
Return kTRUE if the rule is a strict renaming of the class to a new name.
const char * GetAttributes() const
Get the attributes code of this rule.
void SetReadRawFunctionPointer(ReadRawFuncPtr_t ptr)
Set the pointer to the function to be run for the rule (if it is a raw read rule).
Namespace for new ROOT classes and functions.
Bool_t TestChecksum(UInt_t checksum) const
Check if given checksum is defined in this rule.
TSources(const char *name=0, const char *title=0, const char *dims=0)
ReadRawFuncPtr_t fReadRawFuncPtr
Conversion function pointer for read rule.
Buffer base class used for serializing objects.
virtual ~TSchemaRule()
Destructor.
TSchemaRule()
Default Constructor.
Bool_t SetVersion(const TString &version)
Set the version string - returns kFALSE if the format is incorrect.
TString fSourceClass
Source checksum vector (for searching purposes)
void SetTargetClass(const TString &classname)
Set the target class of this rule (i.e. the in memory class).
RuleType_t fRuleType
Conversion function pointer for readraw rule.
virtual void Clear(Option_t *option="")
Set name and title to empty strings ("").
void SetAttributes(const TString &attributes)
Set the attributes code of this rule.
#define ClassDef(name, id)
The TNamed class is the base class for all named ROOT classes.
Bool_t ProcessChecksum(const TString &checksum) const
Check if specified checksum string is correct and build checksum vector.
std::vector< std::pair< Int_t, Int_t > > * fVersionVect
Bool_t Conflicts(const TSchemaRule *rule) const
Check if this rule conflicts with the given one.
void AsString(TString &out, const char *options="") const
Add to the string 'out' the string representation of the rule.
const char * GetVersion() const
Get the version string.
Bool_t operator==(const TSchemaRule &rhs) const
Return true if the rule have the same effects.
void SetSource(const TString &source)
Set the list of source members.
RuleType_t GetRuleType() const
Return the type of the rule.
void SetSourceClass(const TString &classname)
Set the source class of this rule (i.e. the onfile class).
ReadFuncPtr_t fReadFuncPtr
void SetInclude(const TString &include)
Set the comma separated list of header files to include to be able to compile this rule...
const TObjArray * GetSource() const
Get the list of source members as a TObjArray of TNamed object, with the name being the member name a...
virtual void ls(Option_t *option="") const
List TNamed name and title.
TNamed & operator=(const TNamed &rhs)
TNamed assignment operator.
const char * GetCode() const
Get the source code of this rule.
const char * GetTargetClass() const
Get the targte class of this rule (i.e. the in memory class).
std::vector< UInt_t > * fChecksumVect
void SetTarget(const TString &target)
Set the target member of this rule (i.e. the in memory data member).
void SetCode(const TString &code)
Set the source code of this rule.
const TObjArray * GetTarget() const
Get the target data members of this rule (i.e. the in memory data member).
static void ProcessList(TObjArray *array, const TString &list)
Split the list as a comma separated list into a TObjArray of TObjString.
Bool_t SetChecksum(const TString &checksum)
Set the checksum string - returns kFALSE if the format is incorrect.
TString fInclude
Source data member vector (for searching purposes)
Bool_t ProcessVersion(const TString &version) const
Check if specified version string is correct and build version vector.
TString fSource
Target data member vector (for searching purposes)
const char * GetTargetString() const
Get the target data members of this rule as a simple string (i.e. the in memory data member)...
static void ProcessDeclaration(TObjArray *array, const TString &list)
Split the list as a declaration into as a TObjArray of TNamed(name,type).
Wrapper around an object and giving indirect access to its content even if the object is not of a cla...
void(* ReadFuncPtr_t)(char *, TVirtualObject *)
void SetReadFunctionPointer(ReadFuncPtr_t ptr)
Set the pointer to the function to be run for the rule (if it is a read rule).
Bool_t GetEmbed() const
Return true if this rule should be saved in the ROOT File.
Bool_t HasSource(const TString &source) const
Return true if one of the rule's data member source is 'source'.
void SetEmbed(Bool_t embed)
Set whether this rule should be save in the ROOT file (if true)
Mother of all ROOT objects.
typedef void((*Func_t)())
TString fChecksum
Source version vector (for searching purposes)
Bool_t TestVersion(Int_t version) const
Check if given version number is defined in this rule.
ReadRawFuncPtr_t GetReadRawFunctionPointer() const
Get the pointer to the function to be run for the rule (if it is a raw read rule).
Bool_t IsAliasRule() const
Return kTRUE if the rule is a strict renaming of one of the data member of the class.
void SetRuleType(RuleType_t type)
Set the type of the rule.
ReadFuncPtr_t GetReadFunctionPointer() const
Get the pointer to the function to be run for the rule (if it is a read rule).
Bool_t SetFromRule(const char *rule)
Set the content fot this object from the rule See TClass::AddRule for details on the syntax...
const char * GetDimensions()