00001 #ifndef DEFAULTVARIABLE_H
00002 #define DEFAULTVARIABLE_H
00003
00004 #include "ConfigurationVariable.h"
00005
00006 namespace SctData {
00007
00015 class DefaultVariable : public ConfigurationVariable {
00016 public:
00022 static shared_ptr<ConfigurationVariable> instance(unsigned int typeRep);
00023
00024
00025 virtual double getLinkActualPoint(double logicalPt, const ModuleConfiguration& config, unsigned int link) const throw();
00026 virtual double getChipActualPoint(double logicalPt, const ModuleConfiguration& config, unsigned int chip) const throw();
00027 virtual double getChannelActualPoint(double logicalPt, const ModuleConfiguration& config, unsigned int channel) const throw();
00028
00029 virtual double getLinkLogicalPoint(double actualPt, const ModuleConfiguration& config, unsigned int link) const throw();
00030 virtual double getChipLogicalPoint(double actualPt, const ModuleConfiguration& config, unsigned int chip) const throw();
00031 virtual double getChannelLogicalPoint(double actualPt, const ModuleConfiguration& config, unsigned int channel) const throw();
00032
00033
00037 virtual double getChipActualPoint(const ModuleConfiguration& config, unsigned int chip) const throw();
00038 virtual void setChipActualPoint(double actualPt, ModuleConfiguration& config, unsigned int chip) const throw();
00039
00040
00041 protected:
00042
00043 private:
00048 DefaultVariable(unsigned int typeRep);
00049 friend class ConfigurationVariableIOHelper;
00050 };
00051 }
00052
00053 #endif //#ifndef DEFAULTVARIABLE_H