ATLAS Offline Software
Public Member Functions | Private Attributes | Static Private Attributes | List of all members
python.utils.FolderTagResolver Class Reference
Collaboration diagram for python.utils.FolderTagResolver:

Public Member Functions

def __init__ (self, dbname="COOLOFL_LAR/CONDBR2")
 
def __del__ (self)
 
def getFolderTag (self, foldername, globalTag=None)
 
def getFolderTagSuffix (self, foldername, globalTag=None)
 

Private Attributes

 _db
 
 _msg
 

Static Private Attributes

string _globalTag = ""
 
string _defaultSuffix = "-RUN2-UPD3-00"
 

Detailed Description

Definition at line 7 of file LArCalorimeter/LArExample/LArCalibProcessing/python/utils.py.

Constructor & Destructor Documentation

◆ __init__()

def python.utils.FolderTagResolver.__init__ (   self,
  dbname = "COOLOFL_LAR/CONDBR2" 
)

Definition at line 13 of file LArCalorimeter/LArExample/LArCalibProcessing/python/utils.py.

13  def __init__(self,dbname="COOLOFL_LAR/CONDBR2"):
14  dbSvc = cool.DatabaseSvcFactory.databaseService()
15  self._db = dbSvc.openDatabase(dbname)
16  self._msg=logging.getLogger('FolderTagResolver')
17  return
18 

◆ __del__()

def python.utils.FolderTagResolver.__del__ (   self)

Definition at line 19 of file LArCalorimeter/LArExample/LArCalibProcessing/python/utils.py.

19  def __del__(self):
20  self._db.closeDatabase()
21  return
22 

Member Function Documentation

◆ getFolderTag()

def python.utils.FolderTagResolver.getFolderTag (   self,
  foldername,
  globalTag = None 
)

Definition at line 23 of file LArCalorimeter/LArExample/LArCalibProcessing/python/utils.py.

23  def getFolderTag(self,foldername,globalTag=None):
24  if globalTag is None:
25  globalTag=self.__class__._globalTag
26 
27  self._msg.info("Looking up folder level tags in %s",foldername) #using globalTag %s",foldername,globalTag)
28  foldertag= ''.join(foldername.split('/')) + self.__class__._defaultSuffix #default in case of failure
29 
30 
31  try:
32  folder=self._db.getFolder(foldername)
33  except cool.FolderNotFound:
34  self._msg.warning("\tCould not find folder %s in database %s",foldername,self._db.databaseId())
35  self._msg.warning("\tFalling back to default tag %s",foldertag)
36  return foldertag
37 
38 
39  taglist=folder.listTags()
40  if len(taglist)==1:
41  foldertag=taglist[0]
42  self._msg.info("\tFound single tag %s",foldertag)
43  return foldertag
44  else:
45  self._msg.info("\tTrying to resolve gobal tag %s",globalTag)
46  try:
47  foldertag=folder.resolveTag(globalTag)
48  self._msg.info("\tResolved tag %s",foldertag)
49  return foldertag
50  except cool.TagNotFound:
51  self._msg.warning("\tCould not resolve global tag %s",globalTag)
52  self._msg.warning("\tFalling back to default tag %s",foldertag)
53  pass
54  except cool.TagRelationNotFound:
55  self._msg.warning("\tCould not find tag relation to %s",globalTag)
56  self._msg.warning("\tFalling back to default tag %s",foldertag)
57  pass
58  return foldertag
59 
60 

◆ getFolderTagSuffix()

def python.utils.FolderTagResolver.getFolderTagSuffix (   self,
  foldername,
  globalTag = None 
)

Definition at line 61 of file LArCalorimeter/LArExample/LArCalibProcessing/python/utils.py.

61  def getFolderTagSuffix(self,foldername,globalTag=None):
62  ft=self.getFolderTag(foldername,globalTag)
63  if '_mu' in ft:
64  p=ft.find("_mu")
65  else:
66  p=ft.find("-")
67  if p==-1:
68  return "-Default"
69  else:
70  return ft[p:]

Member Data Documentation

◆ _db

python.utils.FolderTagResolver._db
private

◆ _defaultSuffix

string python.utils.FolderTagResolver._defaultSuffix = "-RUN2-UPD3-00"
staticprivate

◆ _globalTag

string python.utils.FolderTagResolver._globalTag = ""
staticprivate

◆ _msg

python.utils.FolderTagResolver._msg
private

The documentation for this class was generated from the following file:
grepfile.info
info
Definition: grepfile.py:38
TCS::join
std::string join(const std::vector< std::string > &v, const char c=',')
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/Root/StringUtils.cxx:10
python.processes.powheg.ZZ.ZZ.__init__
def __init__(self, base_directory, **kwargs)
Constructor: all process options are set here.
Definition: ZZ.py:18
python.AthDsoLogger.__del__
def __del__(self)
Definition: AthDsoLogger.py:82
python.TileCalibTools.getFolderTag
def getFolderTag(db, folderPath, globalTag)
Definition: TileCalibTools.py:369