class TEnvRec: public TObject


The TEnv class reads config files, by default named .rootrc. Three
types of config files are read: global, user and local files. The
 global file is $ROOTSYS/etc/system<name> (or ROOTETCDIR/system<name>)
the user file is $HOME/<name> and the local file is ./<name>.
By setting the shell variable ROOTENV_NO_HOME=1 the reading of
the $HOME/<name> resource file will be skipped. This might be useful
in case the home directory resides on an automounted remote file
system and one wants to avoid this file system from being mounted.

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 name as given in the TApplication ctor (or "RootApp"
in case no explicit TApplication derived object was created),
<ProgName> the current program name and <name> the resource name,
with optionally a type specification. <value> can be either a
string, an integer, a float/double or a boolean with the values
TRUE, FALSE, ON, OFF, YES, NO, OK, NOT. Booleans will be returned as
an integer 0 or 1. The options [+] allows the concatenation of
values to the same resouce name.


Unix.Rint.Root.DynamicPath: .:$(ROOTSYS)/lib:~/lib
myapp.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.

Note that the environment variables (like $ROOTSYS) need to be
surrounded in parentheses in order to be expanded.

For the currently defined resources (and their default values) see

Note that the .rootrc config files contain the config for all ROOT
based applications.

To add new entries to a TEnv:
TEnv env(".myfile");

All new entries will be saved in the file corresponding to the
first SaveLevel() command.  If Save() is used, new entries go
into the local file by default.

Function Members (Methods)

voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
EEnvLevelGetLevel() const
virtual const char*GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const char*TObject::GetTitle() const
const char*GetType() const
virtual UInt_tTObject::GetUniqueID() const
const char*GetValue() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tHash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
TEnvRec&operator=(const TEnvRec&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp) const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
TEnvRec(const TEnvRec&)
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidChangeValue(const char* v, const char* t, EEnvLevel l, Bool_t append = kFALSE, Bool_t ignoredup = kFALSE)
virtual Int_tCompare(const TObject* obj) const
TStringExpandValue(const char* v)
TEnvRec(const char* n, const char* v, const char* t, EEnvLevel l)

Data Members

static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TObject::EStatusBitsTObject::kHasUUID
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
EEnvLevelfLevelenv rec level
Bool_tfModifiedif env rec has been modified
TStringfNameenv rec key name
TStringfTypeenv rec type
TStringfValueenv rec value

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TEnvRec(const char* n, const char* v, const char* t, EEnvLevel l)
 Ctor of a single resource.
void ChangeValue(const char* v, const char* t, EEnvLevel l, Bool_t append = kFALSE, Bool_t ignoredup = kFALSE)
 Change the value of a resource.
Int_t Compare(const TObject* obj) const
 Comparison function for resources.
TString ExpandValue(const char* v)
 Replace all $(XXX) strings by the value defined in the shell
 (obtained via TSystem::Getenv()).
TEnvRec(const char* n, const char* v, const char* t, EEnvLevel l)
{ }
const char * GetName() const
{ return fName; }
const char * GetValue() const
{ return fValue; }
const char * GetType() const
{ return fType; }
EEnvLevel GetLevel() const
{ return fLevel; }
ULong_t Hash() const
{ return fName.Hash(); }
TEnv& operator=(const TEnv&)