/search.css" rel="stylesheet" type="text/css"/> /search.js">
00001 // 00002 // Algorithm to modify material properties 00003 // Currently only modifies water absorption length 00004 // according to model described in doc-992. 00005 // 00006 // D.Jaffe 2009/05/12 00007 00008 #ifndef _DYB_MODIFY_PROPERTIES_H_ 00009 #define _DYB_MODIFY_PROPERTIES_H_ 00010 00011 #include "GaudiAlg/GaudiAlgorithm.h" 00012 #include <string> 00013 #include <map> 00014 00015 class DybModifyProperties:public GaudiAlgorithm { 00016 00017 public: 00018 00019 DybModifyProperties(const std::string& name, ISvcLocator* pSvcLocator); 00020 StatusCode initialize(); 00021 StatusCode execute(); 00022 StatusCode finalize(); 00023 00024 private: 00025 // 00026 // in PropVector, 1st string is the property to be modified, 2d (or more) strings are 00027 // the parameter(s) controlling the modification. 00028 // for the water absorption length model, property=ABSLENGTH and 00029 // parameter is the absorbance at 200nm. 00030 typedef std::vector<std::string> PropVector; 00031 // in PropMap, string is the material name. for water absorption length, name=/dd/Materials/Water 00032 typedef std::map<std::string,PropVector> PropMap; 00033 PropMap m_PropMap; 00034 00035 }; 00036 00037 #endif // _DYB_MODIFY_PROPERTIES_H_