Commit 51880ebe authored by Alejandro Homs Puron's avatar Alejandro Homs Puron

* Added (not yet used) Frelon::Reg::ImagesPerEOF

* Replaced Model::hasReload (v3_0l) by Model::hasImagesPerEOF (v3_1c)
* Added new CCD FTM 1-3, 2-4, 1 & 4 modes (13-16)
* Included "Hama"matsu chip name
parent 19750edf
......@@ -49,7 +49,7 @@ enum Reg {
SingleVertXfer, SingleHorzXfer, AllVertXfer, AllHorzXfer,
ReadoutTime, TransferTime, CcdModesAvail, StatusSeqA,
StatusAMTA, StatusAMTB, StatusAMTC, StatusAMTD,
LookUpTable,
LookUpTable, ImagesPerEOF,
};
typedef std::map<Reg, std::string> RegStrMapType;
......
......@@ -51,7 +51,7 @@ class Firmware
static const Firmware v2_1b;
static const Firmware v3_0i;
static const Firmware v3_0l;
static const Firmware v3_1c;
private:
void checkValid();
......@@ -128,7 +128,7 @@ class Model
bool hasModesAvail();
bool hasTimeCalc();
bool hasGoodHTD();
bool hasReload();
bool hasImagesPerEOF();
double getPixelSize();
......@@ -147,7 +147,7 @@ class Model
bool m_modes_avail;
bool m_time_calc;
bool m_good_htd;
bool m_reload;
bool m_images_per_eof;
};
......
......@@ -44,6 +44,7 @@ enum Reg {
SingleVertXfer, SingleHorzXfer, AllVertXfer, AllHorzXfer,
ReadoutTime, TransferTime, CcdModesAvail, StatusSeqA,
StatusAMTA, StatusAMTB, StatusAMTC, StatusAMTD,
LookUpTable, ImagesPerEOF,
};
/*
typedef std::map<Reg, std::string> RegStrMapType;
......
......@@ -46,7 +46,7 @@ class Firmware
static const Frelon::Firmware v2_1b;
static const Frelon::Firmware v3_0i;
static const Frelon::Firmware v3_0l;
static const Frelon::Firmware v3_1c;
};
......@@ -79,7 +79,7 @@ class Model
bool hasModesAvail();
bool hasTimeCalc();
bool hasGoodHTD();
bool hasReload();
bool hasImagesPerEOF();
double getPixelSize();
......
......@@ -94,6 +94,7 @@ static const RegPair RegStrCList[] = {
RegPair(StatusAMTD, "SAD"),
RegPair(LookUpTable, "LUT"),
RegPair(ImagesPerEOF, "NEF"),
};
RegStrMapType lima::Frelon::RegStrMap(C_LIST_ITERS(RegStrCList));
......@@ -103,7 +104,7 @@ static Reg CacheableRegCList[] = {
ChanMode, TimeUnit, RoiEnable, RoiFast,
RoiKinetic, BinVert, BinHorz, ConfigHD,
ShutEnable, HardTrigDisable, FlipMode, CompSerNb,
CcdModesAvail,
CcdModesAvail, ImagesPerEOF,
};
RegListType
lima::Frelon::CacheableRegList(C_LIST_ITERS(CacheableRegCList));
......@@ -147,7 +148,7 @@ lima::Frelon::MultiLineCmdStrMap(C_LIST_ITERS(MLCmdStrCList));
typedef pair<FrameTransferMode, ChanRange> RangePair;
static const RangePair FTMChanRangeCList[] = {
RangePair(FFM, ChanRange(1, 10)),
RangePair(FTM, ChanRange(10, 13)),
RangePair(FTM, ChanRange(10, 17)),
};
FTMChanRangeMapType
lima::Frelon::FTMChanRangeMap(C_LIST_ITERS(FTMChanRangeCList));
......@@ -157,7 +158,7 @@ static const InputChan FFMInputChanCList[] = {
Chan1, Chan2, Chan3, Chan4, Chan13, Chan24, Chan12, Chan34, Chan1234,
};
static const InputChan FTMInputChanCList[] = {
Chan1234, Chan34, Chan12,
Chan1234, Chan34, Chan12, Chan24, Chan13, Chan4, Chan1,
};
typedef pair<FrameTransferMode, InputChanList> InputChanPair;
static const InputChanPair FTMInputChanListCList[] = {
......
......@@ -28,7 +28,7 @@ using namespace std;
const Firmware Firmware::v2_1b("2.1b");
const Firmware Firmware::v3_0i("3.0i");
const Firmware Firmware::v3_0l("3.0l");
const Firmware Firmware::v3_1c("3.1c");
Firmware::Firmware()
{
......@@ -207,11 +207,11 @@ void Model::update()
bool firm_v3_0i = (is_spb2 && (m_firmware >= Firmware::v3_0i));
m_good_htd = firm_v3_0i;
bool firm_v3_0l = (is_spb2 && (m_firmware >= Firmware::v3_0l));
m_reload = firm_v3_0l;
bool firm_v3_1c = (is_spb2 && (m_firmware >= Firmware::v3_1c));
m_images_per_eof = firm_v3_1c;
DEB_TRACE() << DEB_VAR4(m_chip_type, m_modes_avail, m_time_calc,
m_good_htd);
DEB_TRACE() << DEB_VAR5(m_chip_type, m_modes_avail, m_time_calc,
m_good_htd, m_images_per_eof);
}
bool Model::isValid()
......@@ -331,14 +331,14 @@ bool Model::hasGoodHTD()
return m_good_htd;
}
bool Model::hasReload()
bool Model::hasImagesPerEOF()
{
DEB_MEMBER_FUNCT();
checkValid();
DEB_RETURN() << DEB_VAR1(m_reload);
return m_reload;
DEB_RETURN() << DEB_VAR1(m_images_per_eof);
return m_images_per_eof;
}
double Model::getPixelSize()
......@@ -364,6 +364,7 @@ string Model::getName()
case E2V_2kNotMPP: chip_model = "E231-42"; break;
case E2V_4k: chip_model = "E230-84"; break;
case E2V_4kNotMPP: chip_model = "E231-84"; break;
case Hama: chip_model = "Hama"; break;
default: chip_model = "Unknown";
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment