ResultHeader.cpp

00001 #include "ResultHeader.h"
00002 #include "ConfigurationVariable.h"
00003 #include "Sct/UniqueID.h"
00004 #include "NullVariable.h"
00005 #include <iostream>
00006 #include <sstream>
00007 #include <boost/date_time/posix_time/posix_time.hpp>
00008 
00009 using namespace Sct;
00010 using namespace std;
00011 using namespace boost::posix_time;
00012 
00013 namespace SctData {
00014 
00015 ResultHeader::ResultHeader(unsigned int scanNumber, unsigned int runNumber, string moduleName, const ConfigurationVariable& variable) :
00016                        scanNumber(scanNumber), runNumber(runNumber), moduleName(moduleName), 
00017                startTime("19700101T000000"), endTime("1970101T000000"), variable(&variable) {}
00018 
00019 ResultHeader::ResultHeader() : scanNumber(0), runNumber(0), moduleName(""), 
00020     startTime("19700101T000000"), endTime("1970101T000000"), variable(&NullVariable::instance()) {}
00021 
00022 bool ResultHeader::operator==(const ResultHeader& scan) const {
00023     if (scanNumber == scan.scanNumber && runNumber == scan.runNumber &&
00024             moduleName == scan.moduleName && *variable == *scan.variable)
00025         return true;
00026     else
00027         return false;
00028 }
00029 
00030 //Streamable and Serializable overrides
00031 string ResultHeader::getClassName() const throw(){
00032     return "SctData::ResultHeader";
00033 }
00034 
00035 UniqueID ResultHeader::getUniqueID() const throw() {
00036     return getUniqueID(runNumber, scanNumber, moduleName);
00037 }
00038 
00039 UniqueID ResultHeader::getUniqueID(unsigned int runNumber, unsigned int scanNumber, const string& moduleName) {
00040     return UniqueID(runNumber, scanNumber, moduleName);
00041 }
00042 
00043 ptime ResultHeader::getStartTime() const {
00044     return from_iso_string(startTime);
00045 }
00046     
00047 void ResultHeader::setStartTime(ptime start) {
00048     startTime = to_iso_string(start);
00049     startTime = startTime.substr(0, 15);
00050 }
00051     
00052 ptime ResultHeader::getEndTime() const {
00053     return from_iso_string(endTime);
00054 }
00055     
00056 void ResultHeader::setEndTime(ptime end) {
00057     endTime = to_iso_string(end);
00058     endTime = endTime.substr(0, 15);
00059 }
00060 
00061 }

Generated on Mon Feb 6 14:01:25 2006 for SCT DAQ/DCS Software - C++ by  doxygen 1.4.6