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

ModuleConfiguration.cpp

Go to the documentation of this file.
00001 #include "ModuleConfiguration.h"
00002 #include <string>
00003 #include <algorithm>
00004 #include "Sct/SctParameters.h"
00005 
00006 using std::string;
00007 
00008 namespace SctData {
00009     using namespace Sct;
00010 ModuleConfiguration::ModuleConfiguration() throw() {
00011     //Initialize ABCDModule
00012     std::fill_n((char*)&configuration, sizeof(configuration), 0);
00013     
00014     for (unsigned int i=0; i<Sct::nChipModule; ++i) {
00015     shared_ptr<ChipConfiguration> chipConfig (new ChipConfiguration(configuration.chip[i]));
00016     chipConfigs.push_back(chipConfig);
00017     }
00018 }
00019 
00020 ModuleConfiguration::~ModuleConfiguration() throw() {    
00021 }
00022 
00023 ModuleConfiguration::ModuleConfiguration(const ModuleConfiguration& config) throw() {
00024     this->configuration = config.configuration;
00025     
00026     for (unsigned int i=0; i<Sct::nChipModule; ++i) {
00027     shared_ptr<ChipConfiguration> chipConfig (new ChipConfiguration(configuration.chip[i]));
00028     chipConfigs.push_back(chipConfig);
00029     }    
00030 }
00031 
00032 ModuleConfiguration& ModuleConfiguration::operator=(const ModuleConfiguration& config) throw() {
00033     this->configuration = config.configuration;    
00034     return *this;
00035 }
00036 
00037     bool ModuleConfiguration::channelIsMasked(const unsigned int ichannel) const throw(){
00038     return getChipConfiguration(ichannel/nChannelChip).isMasked(ichannel%nChannelChip);
00039     }
00040 
00041 
00042 string ModuleConfiguration::getClassName() const throw() {
00043     return string("SctData::ModuleConfiguration");
00044 }   
00045 
00046 ChipConfiguration& ModuleConfiguration::getChipConfiguration(const unsigned int chip) throw() {
00047     return *chipConfigs[chip];
00048 }
00049 
00050 const ChipConfiguration& ModuleConfiguration::getChipConfiguration(const unsigned int chip) const throw() {
00051     return *chipConfigs[chip];
00052 }
00053     
00054 }
00055 

Generated on Mon Dec 15 19:36:06 2003 for SCT DAQ/DCS Software by doxygen1.3-rc3