diff --git a/Script/L1CFileNameParser.py b/Script/L1CFileNameParser.py new file mode 100644 index 0000000000000000000000000000000000000000..6c364549ffa356c35a049f9dba447428583d069d --- /dev/null +++ b/Script/L1CFileNameParser.py @@ -0,0 +1,40 @@ + +__version__='$Revision$' + + +#.data --> Standard file --> Projecttag +#.tgz --> L1CaloRateArchive_yyyymmdd.tgz --> projecttag = l1calo_ratearchive + + +from BaseFileNameParser import BaseFileNameParser +from SFOFileNameParser import SFOFileNameParser +from Constants import needed_parser_symbols +import os.path + +class L1CFileNameParser(BaseFileNameParser): + + def __init__(self,filename): + + BaseFileNameParser.__init__(self, filename) + + file = os.path.basename(filename) + ext = os.path.splitext(file)[1] + + if ext == '.data': + self.parser = SFOFileNameParser(filename) + self.project = self.parser.ProjectTag() + elif ext == '.tgz': + self.parser = BaseFileNameParser(filename) + self.project = 'l1calo_ratearchive' + else: + self.project = '' + + + for sym in needed_parser_symbols: + if not sym is 'ProjectTag': + setattr(self, sym, getattr(self.parser, sym)) + + + def ProjectTag(self): + return self.project +