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

* 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 { ...@@ -49,7 +49,7 @@ enum Reg {
SingleVertXfer, SingleHorzXfer, AllVertXfer, AllHorzXfer, SingleVertXfer, SingleHorzXfer, AllVertXfer, AllHorzXfer,
ReadoutTime, TransferTime, CcdModesAvail, StatusSeqA, ReadoutTime, TransferTime, CcdModesAvail, StatusSeqA,
StatusAMTA, StatusAMTB, StatusAMTC, StatusAMTD, StatusAMTA, StatusAMTB, StatusAMTC, StatusAMTD,
LookUpTable, LookUpTable, ImagesPerEOF,
}; };
typedef std::map<Reg, std::string> RegStrMapType; typedef std::map<Reg, std::string> RegStrMapType;
......
...@@ -51,7 +51,7 @@ class Firmware ...@@ -51,7 +51,7 @@ class Firmware
static const Firmware v2_1b; static const Firmware v2_1b;
static const Firmware v3_0i; static const Firmware v3_0i;
static const Firmware v3_0l; static const Firmware v3_1c;
private: private:
void checkValid(); void checkValid();
...@@ -128,7 +128,7 @@ class Model ...@@ -128,7 +128,7 @@ class Model
bool hasModesAvail(); bool hasModesAvail();
bool hasTimeCalc(); bool hasTimeCalc();
bool hasGoodHTD(); bool hasGoodHTD();
bool hasReload(); bool hasImagesPerEOF();
double getPixelSize(); double getPixelSize();
...@@ -147,7 +147,7 @@ class Model ...@@ -147,7 +147,7 @@ class Model
bool m_modes_avail; bool m_modes_avail;
bool m_time_calc; bool m_time_calc;
bool m_good_htd; bool m_good_htd;
bool m_reload; bool m_images_per_eof;
}; };
......
...@@ -44,6 +44,7 @@ enum Reg { ...@@ -44,6 +44,7 @@ enum Reg {
SingleVertXfer, SingleHorzXfer, AllVertXfer, AllHorzXfer, SingleVertXfer, SingleHorzXfer, AllVertXfer, AllHorzXfer,
ReadoutTime, TransferTime, CcdModesAvail, StatusSeqA, ReadoutTime, TransferTime, CcdModesAvail, StatusSeqA,
StatusAMTA, StatusAMTB, StatusAMTC, StatusAMTD, StatusAMTA, StatusAMTB, StatusAMTC, StatusAMTD,
LookUpTable, ImagesPerEOF,
}; };
/* /*
typedef std::map<Reg, std::string> RegStrMapType; typedef std::map<Reg, std::string> RegStrMapType;
......
...@@ -46,7 +46,7 @@ class Firmware ...@@ -46,7 +46,7 @@ class Firmware
static const Frelon::Firmware v2_1b; static const Frelon::Firmware v2_1b;
static const Frelon::Firmware v3_0i; static const Frelon::Firmware v3_0i;
static const Frelon::Firmware v3_0l; static const Frelon::Firmware v3_1c;
}; };
...@@ -79,7 +79,7 @@ class Model ...@@ -79,7 +79,7 @@ class Model
bool hasModesAvail(); bool hasModesAvail();
bool hasTimeCalc(); bool hasTimeCalc();
bool hasGoodHTD(); bool hasGoodHTD();
bool hasReload(); bool hasImagesPerEOF();
double getPixelSize(); double getPixelSize();
......
...@@ -94,6 +94,7 @@ static const RegPair RegStrCList[] = { ...@@ -94,6 +94,7 @@ static const RegPair RegStrCList[] = {
RegPair(StatusAMTD, "SAD"), RegPair(StatusAMTD, "SAD"),
RegPair(LookUpTable, "LUT"), RegPair(LookUpTable, "LUT"),
RegPair(ImagesPerEOF, "NEF"),
}; };
RegStrMapType lima::Frelon::RegStrMap(C_LIST_ITERS(RegStrCList)); RegStrMapType lima::Frelon::RegStrMap(C_LIST_ITERS(RegStrCList));
...@@ -103,7 +104,7 @@ static Reg CacheableRegCList[] = { ...@@ -103,7 +104,7 @@ static Reg CacheableRegCList[] = {
ChanMode, TimeUnit, RoiEnable, RoiFast, ChanMode, TimeUnit, RoiEnable, RoiFast,
RoiKinetic, BinVert, BinHorz, ConfigHD, RoiKinetic, BinVert, BinHorz, ConfigHD,
ShutEnable, HardTrigDisable, FlipMode, CompSerNb, ShutEnable, HardTrigDisable, FlipMode, CompSerNb,
CcdModesAvail, CcdModesAvail, ImagesPerEOF,
}; };
RegListType RegListType
lima::Frelon::CacheableRegList(C_LIST_ITERS(CacheableRegCList)); lima::Frelon::CacheableRegList(C_LIST_ITERS(CacheableRegCList));
...@@ -147,7 +148,7 @@ lima::Frelon::MultiLineCmdStrMap(C_LIST_ITERS(MLCmdStrCList)); ...@@ -147,7 +148,7 @@ lima::Frelon::MultiLineCmdStrMap(C_LIST_ITERS(MLCmdStrCList));
typedef pair<FrameTransferMode, ChanRange> RangePair; typedef pair<FrameTransferMode, ChanRange> RangePair;
static const RangePair FTMChanRangeCList[] = { static const RangePair FTMChanRangeCList[] = {
RangePair(FFM, ChanRange(1, 10)), RangePair(FFM, ChanRange(1, 10)),
RangePair(FTM, ChanRange(10, 13)), RangePair(FTM, ChanRange(10, 17)),
}; };
FTMChanRangeMapType FTMChanRangeMapType
lima::Frelon::FTMChanRangeMap(C_LIST_ITERS(FTMChanRangeCList)); lima::Frelon::FTMChanRangeMap(C_LIST_ITERS(FTMChanRangeCList));
...@@ -157,7 +158,7 @@ static const InputChan FFMInputChanCList[] = { ...@@ -157,7 +158,7 @@ static const InputChan FFMInputChanCList[] = {
Chan1, Chan2, Chan3, Chan4, Chan13, Chan24, Chan12, Chan34, Chan1234, Chan1, Chan2, Chan3, Chan4, Chan13, Chan24, Chan12, Chan34, Chan1234,
}; };
static const InputChan FTMInputChanCList[] = { static const InputChan FTMInputChanCList[] = {
Chan1234, Chan34, Chan12, Chan1234, Chan34, Chan12, Chan24, Chan13, Chan4, Chan1,
}; };
typedef pair<FrameTransferMode, InputChanList> InputChanPair; typedef pair<FrameTransferMode, InputChanList> InputChanPair;
static const InputChanPair FTMInputChanListCList[] = { static const InputChanPair FTMInputChanListCList[] = {
......
...@@ -28,7 +28,7 @@ using namespace std; ...@@ -28,7 +28,7 @@ using namespace std;
const Firmware Firmware::v2_1b("2.1b"); const Firmware Firmware::v2_1b("2.1b");
const Firmware Firmware::v3_0i("3.0i"); const Firmware Firmware::v3_0i("3.0i");
const Firmware Firmware::v3_0l("3.0l"); const Firmware Firmware::v3_1c("3.1c");
Firmware::Firmware() Firmware::Firmware()
{ {
...@@ -207,11 +207,11 @@ void Model::update() ...@@ -207,11 +207,11 @@ void Model::update()
bool firm_v3_0i = (is_spb2 && (m_firmware >= Firmware::v3_0i)); bool firm_v3_0i = (is_spb2 && (m_firmware >= Firmware::v3_0i));
m_good_htd = firm_v3_0i; m_good_htd = firm_v3_0i;
bool firm_v3_0l = (is_spb2 && (m_firmware >= Firmware::v3_0l)); bool firm_v3_1c = (is_spb2 && (m_firmware >= Firmware::v3_1c));
m_reload = firm_v3_0l; m_images_per_eof = firm_v3_1c;
DEB_TRACE() << DEB_VAR4(m_chip_type, m_modes_avail, m_time_calc, DEB_TRACE() << DEB_VAR5(m_chip_type, m_modes_avail, m_time_calc,
m_good_htd); m_good_htd, m_images_per_eof);
} }
bool Model::isValid() bool Model::isValid()
...@@ -331,14 +331,14 @@ bool Model::hasGoodHTD() ...@@ -331,14 +331,14 @@ bool Model::hasGoodHTD()
return m_good_htd; return m_good_htd;
} }
bool Model::hasReload() bool Model::hasImagesPerEOF()
{ {
DEB_MEMBER_FUNCT(); DEB_MEMBER_FUNCT();
checkValid(); checkValid();
DEB_RETURN() << DEB_VAR1(m_reload); DEB_RETURN() << DEB_VAR1(m_images_per_eof);
return m_reload; return m_images_per_eof;
} }
double Model::getPixelSize() double Model::getPixelSize()
...@@ -364,6 +364,7 @@ string Model::getName() ...@@ -364,6 +364,7 @@ string Model::getName()
case E2V_2kNotMPP: chip_model = "E231-42"; break; case E2V_2kNotMPP: chip_model = "E231-42"; break;
case E2V_4k: chip_model = "E230-84"; break; case E2V_4k: chip_model = "E230-84"; break;
case E2V_4kNotMPP: chip_model = "E231-84"; break; case E2V_4kNotMPP: chip_model = "E231-84"; break;
case Hama: chip_model = "Hama"; break;
default: chip_model = "Unknown"; default: chip_model = "Unknown";
} }
......
Supports Markdown
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