93 """write sorted collection into a Collection file"""
94 self.
info(
"Writing Event collection {}".format(outputCollection))
99 row = self.
pool.CollectionRowBuffer()
100 dstColl.initNewRow( row )
102 row.tokenList()[0].fromString( t[0] )
103 for idx,nam
in enumerate(self.
attrNames):
105 row.attributeList()[nam].setValue[type]( t[idx+1] )
106 dstColl.insertRow( row )
111 def execute(self, inputCollections, outputCollection="PFN:collection.root
", sortAttribute="LumiBlockN
",
112 sortOrder="Ascending", outputCollectionType=
"RootCollection"):
113 sort_opts = (
"Ascending",
"Descending")
114 self.
info(
"Executing SortedCollectionCreator, inputs={}, output='{}' ({}), sort by: {}, order: {}"
115 .format(inputCollections, outputCollection, outputCollectionType, sortAttribute, sortOrder))
116 if isinstance(inputCollections, str):
117 inputs = [inputCollections]
119 inputs = inputCollections
120 if sortOrder.lower()
not in [opt.lower()
for opt
in sort_opts]:
121 raise Exception(self.
name +
": Accepted sortOrder values are: " + str(sort_opts))
122 sortReverse = ( sortOrder.lower()[0] ==
"d" )