00001 #ifndef DDConstant_h 00002 #define DDConstant_h 00003 00004 #include "DetectorDescription/Core/interface/DDBase.h" 00005 #include "DetectorDescription/Core/interface/DDName.h" 00006 #include <vector> 00007 #include <iostream> 00008 00009 class DDConstant; 00010 00012 std::ostream & operator<<(std::ostream & o, const DDConstant & cons); 00013 00015 class DDConstant : public DDBase<DDName, double * > 00016 { 00017 public: 00019 DDConstant(); 00020 00022 DDConstant(const DDName & name); 00023 00025 DDConstant(const DDName & name, double* value); 00026 00028 static void createConstantsFromEvaluator(); 00029 00031 double value() const { return rep(); } 00032 00034 operator double() const { return rep(); } 00035 }; 00036 00038 typedef DDConstant DDNumeric; 00039 00040 #endif