00001 #ifndef SurveyDataReader_h 00002 #define SurveyDataReader_h 00003 00004 // 00005 // Class to read in survey data from text file 00006 // Where all numbers are floats, except DetId which is an unsigned integer 00007 // 00008 // The result is a map of DetIds and corresponding OpticalInfo 00009 // 00010 00011 #include "Alignment/CommonAlignment/interface/Utilities.h" 00012 00013 class SurveyDataReader 00014 { 00015 00016 public: 00017 00018 typedef std::map<align::ID, align::Scalars > MapType; 00019 typedef std::pair<align::ID,align::Scalars > PairType; 00020 typedef std::map< std::vector<int>, align::Scalars > MapTypeOr; 00021 typedef std::pair< std::vector<int>, align::Scalars > PairTypeOr; 00022 00024 void readFile( const std::string& textFileName, const std::string& fileType ); 00025 align::Scalars convertToAlignableCoord( const align::Scalars& align_params ); 00026 00027 // Returns the Map 00028 const MapType& detIdMap() const { return theMap; } 00029 const MapTypeOr& surveyMap() const { return theOriginalMap; } 00030 00031 private: 00032 00033 MapType theMap; 00034 MapTypeOr theOriginalMap; 00035 00036 }; 00037 00038 #endif