Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Related Pages

DcsDataStreamer_v1.cpp

00001 #include "DcsDataStreamer_v1.h"
00002 #include "../DcsData.h"
00003 #include "Sct/IOManager.h"
00004 #include "Sct/IStream.h"
00005 #include "Sct/OStream.h"
00006 #include "boost/shared_ptr.hpp"
00007 
00008 using namespace Sct;
00009 
00010 namespace SctData {
00011 namespace IO {
00012 
00013 unsigned DcsDataStreamer_v1::s_version=1;
00014 /* READ NOTES ON STREAMERS AND VERSIONS BEFORE EDITING THIS FILE! */
00015 
00016 DcsDataStreamer_v1::DcsDataStreamer_v1() throw() {}
00017     
00018 bool DcsDataStreamer_v1::inMap = IOManager::addToMap("SctData::DcsData",  std::auto_ptr<Streamer>(new DcsDataStreamer_v1()));
00019 
00020 
00021 shared_ptr<Streamable> DcsDataStreamer_v1::read(IStream& in, const IOManager& manager) const throw(LogicError, IoError) {
00022   boost::shared_ptr<Streamable> m (new DcsData());
00023   read(in, *m, manager);
00024   return m;
00025 }
00026 
00027 void DcsDataStreamer_v1::write(OStream& out, const Streamable& ob, const IOManager& manager) const throw(LogicError, IoError) {
00028     const DcsData& data = dynamic_cast<const DcsData&>(ob);
00029 
00030     out << data.getVbias() << data.getIbias() 
00031     << data.getT0() << data.getT1()
00032     << data.getVcc() << data.getIcc()
00033     << data.getVdd() << data.getIdd();
00034 }
00035 
00036 void DcsDataStreamer_v1::read(IStream& in, Streamable& ob, const IOManager& manager) const throw(LogicError, IoError) {
00037     DcsData& data = dynamic_cast<DcsData&>(ob);
00038 
00039     float temp = 0;
00040     in >> temp; data.setVbias(temp);
00041     in >> temp; data.setIbias(temp);
00042     in >> temp; data.setT0(temp);
00043     in >> temp; data.setT1(temp);
00044     in >> temp; data.setVcc(temp);
00045     in >> temp; data.setIcc(temp);
00046     in >> temp; data.setVdd(temp);
00047     in >> temp; data.setIdd(temp);
00048 }
00049 
00050 }
00051 }

Generated on Thu Jul 15 09:50:44 2004 for SCT DAQ/DCS Software - C++ by doxygen 1.3.5