00001 #include "DummyHardware.h"
00002 #include <iostream>
00003 
00004 using namespace std;
00005 using namespace SctApi;
00006 
00007 namespace SctTest {
00008     
00009 DummyHardware::DummyHardware() : configs(3) {
00010 }
00011 
00012 DummyHardware& DummyHardware::instance() {
00013     static DummyHardware dh;
00014     return dh;
00015 }
00016 
00017 void printTrims(const ABCDModule& config) {
00018     cout << "TrimRanges: ";
00019     for (int i=0; i<12; ++i) 
00020     cout << config.chip[i].basic.config.trimRange << " ";
00021     cout << endl;
00022 }
00023 
00024 const ABCDModule& DummyHardware::getConfig(UINT32 mid, BankType type) {
00025     
00026     return configs[type][mid];
00027 }
00028 
00029 void DummyHardware::setConfig(UINT32 mid, BankType type, const ABCDModule& config) {
00030     
00031     
00032     if (originalConfig.count(mid) == 0) {
00033     
00034     originalConfig[mid] = config;
00035     
00036     }
00037     
00038     
00039     (configs[type])[mid] = config;
00040     
00041 }
00042 
00043 const ABCDModule& DummyHardware::getOriginalConfig(UINT32 mid) {
00044     return originalConfig[mid];
00045 }
00046  
00047 const ABCDModule& DummyHardware::getCurrentConfig(UINT32 mid) {    
00048     
00049     return currentConfig[mid];
00050 }
00051     
00052 void DummyHardware::sendConfig(UINT32 mid, BankType bank) {
00053     currentConfig[mid] = configs[bank][mid];
00054     
00055 }
00056 }