ATLAS Offline Software
Loading...
Searching...
No Matches
ContentHandler.ContentHandler Class Reference
Collaboration diagram for ContentHandler.ContentHandler:

Public Member Functions

 __init__ (self, inputName, namesAndTypes)
 mainContainerLine (self, containerName)
 GetContent (self, contentList, wholeContentList)

Public Attributes

 name = inputName
dict AppendToDictionary = {}
 NamesAndTypes = namesAndTypes

Detailed Description

Definition at line 7 of file ContentHandler.py.

Constructor & Destructor Documentation

◆ __init__()

ContentHandler.ContentHandler.__init__ ( self,
inputName,
namesAndTypes )

Definition at line 8 of file ContentHandler.py.

8 def __init__(self,inputName,namesAndTypes):
9 self.name = inputName
10 self.AppendToDictionary = {}
11 self.NamesAndTypes = namesAndTypes
12

Member Function Documentation

◆ GetContent()

ContentHandler.ContentHandler.GetContent ( self,
contentList,
wholeContentList )

Definition at line 24 of file ContentHandler.py.

24 def GetContent(self,contentList,wholeContentList):
25 mainOutput = []
26 auxOutput = {}
27 for item in contentList:
28 components = item.split(".")
29 if len(components)==0:
30 continue
31 mainItem = self.mainContainerLine(components[0])
32 if mainItem=='':
33 continue
34 if len(components)==1:
35 # deal with main containers
36 if (mainItem not in mainOutput):
37 mainOutput.append(mainItem)
38 if len(components)>1:
39 # All variables needed
40 if (components[0]+"." in wholeContentList):
41 if (components[0] not in auxOutput.keys()):
42 auxOutput[components[0]] = ""
43 continue
44 # All variables needed but user did it via smart slimming list with ContainerAux.
45 if (len(components)==2):
46 if (components[1] == ""):
47 wholeContentList.append(components[0]+".")
48 auxOutput[components[0]] = ""
49 continue
50 if (components[0] not in auxOutput.keys()):
51 auxOutput[components[0]] = components[1:]
52 if (components[0] in auxOutput.keys()):
53 auxOutput[components[0]] = list(set(auxOutput[components[0]]) | set(components[1:]))
54 return mainOutput,auxOutput
STL class.

◆ mainContainerLine()

ContentHandler.ContentHandler.mainContainerLine ( self,
containerName )

Definition at line 13 of file ContentHandler.py.

13 def mainContainerLine(self,containerName):
14 theDictionary = self.NamesAndTypes.copy()
15 theDictionary.update (self.AppendToDictionary)
16 line = ''
17 if containerName in theDictionary.keys():
18 line = theDictionary[containerName]+"#"+containerName
19 else:
20 msg.warning('Collection with name %s not found in input file or in definitions from user. No action will be taken for this collection.', containerName)
21 return line
22
23

Member Data Documentation

◆ AppendToDictionary

ContentHandler.ContentHandler.AppendToDictionary = {}

Definition at line 10 of file ContentHandler.py.

◆ name

ContentHandler.ContentHandler.name = inputName

Definition at line 9 of file ContentHandler.py.

◆ NamesAndTypes

ContentHandler.ContentHandler.NamesAndTypes = namesAndTypes

Definition at line 11 of file ContentHandler.py.


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