| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

__init__.py

Go to the documentation of this file.
00001 #!/usr/bin/env python
00002 
00003 __all__ = ['Configure']
00004 
00005 from DybPython.Tools import realpath
00006 
00007 class DataSvcConfigure:
00008     '''
00009     Setup configuration for DataSvc.
00010     '''
00011 
00012     # Define default configuration common for all instances
00013     def __init__(self):
00014         '''
00015         Setup default configuration of DataSvc.
00016         '''
00017         cableSvcName = "StaticCableSvc"
00018         simDataSvcName = "StaticSimDataSvc"
00019         calibDataSvcName = "StaticCalibDataSvc"
00020         #feeCableMapPath = '$DATASVCROOT/share/feeCableMap.txt'
00021         feeCableMapPath = ''
00022         pmtSimDataPath = '$DATASVCROOT/share/pmtDataTable.txt'
00023         feeSimDataPath = '$DATASVCROOT/share/feeDataTable.txt'
00024         pmtCalibDataPath = '$DATASVCROOT/share/pmtCalibTable.txt'
00025         feeCalibDataPath = '$DATASVCROOT/share/feeCalibTable.txt'
00026 
00027         self.setCableSvc( cableSvcName )
00028         self.setFeeCableMap( feeCableMapPath )
00029 
00030         self.setSimDataSvc( simDataSvcName )
00031         self.setPmtSimData( pmtSimDataPath )
00032         self.setFeeSimData( feeSimDataPath )
00033 
00034         self.setCalibDataSvc( calibDataSvcName )
00035         self.setPmtCalibData( pmtCalibDataPath )
00036         self.setFeeCalibData( feeCalibDataPath )
00037         return
00038 
00039     def applyArgs(self,args,kwd):
00040         ''' Generic function for setting members based on arguments '''
00041         memberNames = kwd.keys()
00042         # I could use some python tricks to shorten this, but then no
00043         # one would understand it.
00044         for member in memberNames:
00045             value = kwd[member]
00046             if member == "cableSvc":
00047                 self.setCableSvc( value )
00048             elif member == "simDataSvc":
00049                 self.setSimDataSvc( value )
00050             elif member == "calibDataSvc":
00051                 self.setCalibDataSvc( value )
00052             elif member == "feeCableMapPath":
00053                 self.setFeeCableMap( value )
00054             elif member == "pmtSimDataPath":
00055                 self.setPmtSimData( value )
00056             elif member == "feeSimDataPath":
00057                 self.setFeeSimData( value )
00058             elif member == "pmtCalibDataPath":
00059                 self.setPmtCalibData( value )
00060             elif member == "feeCalibDataPath":
00061                 self.setFeeCalibData( value )
00062             else:
00063                 print "Error: DataSvc: Unknown option \"%s\"" % (member)
00064 
00065     def setCableSvc(self, cableSvcName):
00066         if cableSvcName == "StaticCableSvc":
00067             from DataSvc.DataSvcConf import StaticCableSvc
00068             self.cableSvc = StaticCableSvc()
00069         elif cableSvcName == "DbiCableSvc":
00070             from DbiDataSvc.DbiDataSvcConf import DbiCableSvc
00071             self.cableSvc = DbiCableSvc()
00072         else:
00073             print "Error: DataSvc: Unknown cable service \"%s\"" % (
00074                                                                    cableSvcName)
00075 
00076     def setSimDataSvc(self, simDataSvcName):
00077         if simDataSvcName == "StaticSimDataSvc":
00078             from DataSvc.DataSvcConf import StaticSimDataSvc
00079             self.simDataSvc = StaticSimDataSvc()
00080         elif simDataSvcName == "DbiSimDataSvc":
00081             from DbiDataSvc.DbiDataSvcConf import DbiSimDataSvc
00082             self.simDataSvc = DbiSimDataSvc()
00083         else:
00084             print "Error: DataSvc: Unknown sim data service \"%s\"" % (
00085                                                                  simDataSvcName)
00086 
00087     def setCalibDataSvc(self, calibDataSvcName):
00088         if calibDataSvcName == "StaticCalibDataSvc":
00089             from DataSvc.DataSvcConf import StaticCalibDataSvc
00090             self.calibDataSvc = StaticCalibDataSvc()
00091         elif calibDataSvcName == "DbiCalibDataSvc":
00092             from DbiDataSvc.DbiDataSvcConf import DbiCalibDataSvc
00093             self.calibDataSvc = DbiCalibDataSvc()
00094         else:
00095             print "Error: DataSvc: Unknown calib data service \"%s\"" % (
00096                                                                calibDataSvcName)
00097                 
00098     def setFeeCableMap(self, feeCableMapPath):
00099         ''' Set the FEE/PMT/Hardware cable connections data file''' 
00100         #self.cableSvc.FeeCableMap = realpath( feeCableMapPath )
00101         self.cableSvc.FeeCableMap = feeCableMapPath
00102         return
00103 
00104     def setPmtSimData(self, pmtSimDataPath):
00105         ''' Set the simulation input parameter data file''' 
00106         self.simDataSvc.PmtDataFile = realpath( pmtSimDataPath )
00107         return
00108 
00109     def setFeeSimData(self, feeSimDataPath):
00110         ''' Set the simulation input parameter data file''' 
00111         self.simDataSvc.FeeDataFile = realpath( feeSimDataPath )
00112         return
00113 
00114     def setPmtCalibData(self, pmtCalibDataPath):
00115         ''' Set the calibration input parameter data file''' 
00116         self.calibDataSvc.PmtDataFile = realpath( pmtCalibDataPath )
00117         return
00118 
00119     def setFeeCalibData(self, feeCalibDataPath):
00120         ''' Set the calibration input parameter data file''' 
00121         self.calibDataSvc.FeeDataFile = realpath( feeCalibDataPath )
00122         return
00123 
00124 configureObject = None
00125 
00126 def Configure(*args,**kwd):
00127     global configureObject
00128     # Make a configure object if one hasn't been created
00129     if configureObject == None:
00130         configureObject = DataSvcConfigure()
00131     # Apply any arguments passed by user
00132     configureObject.applyArgs(args,kwd)
00133     return configureObject    
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:21:03 2011 for DataSvc by doxygen 1.4.7