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 }