TEnv
class description - source file - inheritance tree
private:
const char* Getvalue(const char* name) const
public:
TEnv TEnv(const char* name)
TEnv TEnv(TEnv&)
virtual void ~TEnv()
static TClass* Class()
Bool_t Defined(const char* name)
TOrdCollection* GetTable() const
virtual Int_t GetValue(const char* name, Int_t dflt)
virtual Double_t GetValue(const char* name, Double_t dflt)
virtual const char* GetValue(const char* name, const char* dflt) const
virtual TObject* GetValue(const char* name, TObject* dflt)
virtual TClass* IsA() const
virtual TEnvRec* Lookup(const char* n)
virtual void Print(Option_t* option) const
virtual void PrintEnv(EEnvLevel level = kEnvAll) const
virtual void ReadFile(const char* fname, EEnvLevel level)
virtual void Save()
virtual void SaveLevel(EEnvLevel level)
virtual void SetValue(const char* name, const char* value, EEnvLevel level = kEnvChange, const char* type = 0)
virtual void SetValue(const char* name, const TString& value, EEnvLevel level, const char* type)
virtual void SetValue(const char* name, EEnvLevel level = kEnvChange)
virtual void SetValue(const char* name, Int_t value)
virtual void SetValue(const char* name, Double_t value)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
private:
TOrdCollection* fTable
TString fRcName
TEnv
The TEnv class reads a config file, by default .rootrc. Three types
of .rootrc files are read: global, user and local files. The global
file resides in $ROOTSYS, the user file in ~/ and the local file in
the current working directory.
The format of the .rootrc file is similar to the .Xdefaults format:
<SystemName>.<RootName|ProgName>.<name>[(type)]: <value>
Where <SystemName> is either Unix, WinNT, MacOS or Vms,
<RootName> the root name as given in the TROOT ctor,
<ProgName> the current program name and
<name> is the resource name, with optionally a type specification.
E.g.:
Unix.rint.Root.DynamicPath: .:$ROOTSYS/lib:~/lib
Rint.Root.Debug: FALSE
TH.Root.Debug: YES
*.Root.MemStat: 1
<SystemName> and <ProgName> or <RootName> may be the wildcard "*".
A # in the first column starts comment line.
Currently the following resources are defined:
Root.Debug (bool) (*)
Root.MemStat (bool) (*)
Root.MemStat.size (int) (*)
Root.MemStat.cnt (int) (*)
Root.ObjectStat (bool) (*)
Root.MacroPath (string)
Root.DynamicPath (string)
Rint.Logon (string)
Rint.Logoff (string)
(*) work only with the <RootName> since no <ProgName> is available
at time of initialization.
Note that the .rootrc config files contain the config for all ROOT
based applications.
TEnv(const char *name)
Create a resource table and read the (possibly) three resource files, i.e
$ROOTSYS/system<name> (or ROOTETCDIR/system<name>), $HOME/<name> and
./<name>. ROOT always reads ".rootrc" (in TROOT::InitSystem()). You can
read additional user defined resource files by creating addtional TEnv
object.
~TEnv()
Delete the resource table.
const char* Getvalue(const char *name)
Returns the character value for a named resouce.
Int_t GetValue(const char *name, Int_t dflt)
Returns the integer value for a resource. If the resource is not found
return the dflt value.
Double_t GetValue(const char *name, Double_t dflt)
Returns the dobule value for a resource. If the resource is not found
return the dflt value.
const char* GetValue(const char *name, const char *dflt)
Returns the character value for a named resouce. If the resource is
not found the dflt value is returned.
TObject* GetValue(const char *name, TObject *op)
Read in object op the values of the resource and return the object.
TEnvRec* Lookup(const char *name)
Loop over all resource records and return the one with name.
Return 0 in case name is not in the resoucre table.
void Print(Option_t *opt) const
Print all resources or the global, user or local resources separately.
void PrintEnv(EEnvLevel level) const
Print all resources for a certain level (global, user, local).
void ReadFile(const char *fname, EEnvLevel level)
Read and parse the resource file for a certain level.
void Save()
Write the resource files for each level. The new files have the same
name as the original files. The old files are renamed to *.bak.
void SaveLevel(EEnvLevel level)
Write the resource file for a certain level.
void SetValue(const char *name, const TString &value, EEnvLevel level, const char *type)
Set the value of a resource or create a new resource.
void SetValue(const char *name, const char *value, EEnvLevel level, const char *type)
Set the value of a resource or create a new resource.
void SetValue(const char *name, EEnvLevel level)
Set the value of a resource or create a new resource.
void SetValue(const char *name, Int_t value)
Set or create an integer resource value.
void SetValue(const char *name, double value)
Set or create a double resource value.
Inline Functions
TOrdCollection* GetTable() const
Bool_t Defined(const char* name)
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
TEnv TEnv(TEnv&)
Author: Fons Rademakers 22/09/95
Last update: root/base:$Name: $:$Id: TEnv.cxx,v 1.3 2000/12/13 15:13:45 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
ROOT page - Class index - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.