00001 #include "ScanHeader.h"
00002 #include "ConfigurationVariable.h"
00003 #include <iostream>
00004 #include <sstream>
00005
00006 using namespace Sct;
00007 using namespace std;
00008
00009 namespace SctData {
00010
00011 ScanHeader::ScanHeader(unsigned int scanNumber, unsigned int runNumber, string moduleName, const ConfigurationVariable& variable) throw() :
00012 scanNumber(scanNumber), runNumber(runNumber), moduleName(moduleName), variable(&variable) {}
00013
00014 ScanHeader::ScanHeader() throw() : scanNumber(0), runNumber(0), moduleName(""), variable() {}
00015
00016 ScanHeader::~ScanHeader() throw() {}
00017
00018 bool ScanHeader::operator==(const ScanHeader& scan) const throw() {
00019 if (scanNumber == scan.scanNumber && runNumber == scan.runNumber &&
00020 moduleName == scan.moduleName && *variable == *scan.variable)
00021 return true;
00022 else
00023 return false;
00024 }
00025
00026
00027 string ScanHeader::getClassName() const throw() {
00028 return "SctData::ScanHeader";
00029 }
00030
00031 string ScanHeader::getUniqueID() const throw() {
00032 return getUniqueID(runNumber, scanNumber, moduleName);
00033 }
00034
00035 string ScanHeader::getUniqueID(unsigned int runNumber, unsigned int scanNumber, const string& moduleName) throw() {
00036 ostringstream oss;
00037 oss << runNumber << "." << scanNumber << "." << moduleName;
00038 return oss.str();
00039 }
00040
00041 }