python extrastoragecells, documentation

This commit is contained in:
2021-10-21 12:34:49 +02:00
parent 0909eabfaf
commit 802bd27e50
2 changed files with 37 additions and 30 deletions

View File

@ -170,6 +170,7 @@ class Detector(CppDetectorApi):
def port(self): def port(self):
""" """
Port number of the control server on detector for detector-client tcp interface. Port number of the control server on detector for detector-client tcp interface.
Note Note
---- ----
Default is 1952. Normally unchanged. \n Default is 1952. Normally unchanged. \n
@ -185,6 +186,7 @@ class Detector(CppDetectorApi):
@element @element
def stopport(self): def stopport(self):
"""Port number of the stop server on detector for detector-client tcp interface. """Port number of the stop server on detector for detector-client tcp interface.
Note Note
---- ----
Default is 1953. Normally unchanged. Default is 1953. Normally unchanged.
@ -241,6 +243,7 @@ class Detector(CppDetectorApi):
def rx_threads(self): def rx_threads(self):
""" """
Get thread ids from the receiver in order of [parent, tcp, listener 0, processor 0, streamer 0, listener 1, processor 1, streamer 1]. Get thread ids from the receiver in order of [parent, tcp, listener 0, processor 0, streamer 0, listener 1, processor 1, streamer 1].
Note Note
----- -----
If no streamer yet or there is no second interface, it gives 0 in its place. If no streamer yet or there is no second interface, it gives 0 in its place.
@ -1566,6 +1569,7 @@ class Detector(CppDetectorApi):
def acquire(self): def acquire(self):
""" """
Run the configured measurement Run the configured measurement
Note Note
---- ----
Blocking command, where control server is blocked and cannot accept other commands until acquisition is done. \n Blocking command, where control server is blocked and cannot accept other commands until acquisition is done. \n
@ -2081,19 +2085,20 @@ class Detector(CppDetectorApi):
@property @property
@element @element
def storagecells(self): def extrastoragecells(self):
""" """
[Jungfrau] Number of additional storage cells. [Jungfrau] Number of additional storage cells.
Note Note
---- ----
Only for chip v1.0. For advanced users only. \n Only for chip v1.0. For advanced users only. \n
Options: 0 - 15. Default is 0. Options: 0 - 15. Default is 0.
The #images = #frames x #triggers x (#storagecells + 1) The #images = #frames x #triggers x (#extrastoragecells + 1)
""" """
return self.getNumberOfAdditionalStorageCells() return self.getNumberOfAdditionalStorageCells()
@storagecells.setter @extrastoragecells.setter
def storagecells(self, n_cells): def extrastoragecells(self, n_cells):
ut.set_using_dict(self.setNumberOfAdditionalStorageCells, n_cells) ut.set_using_dict(self.setNumberOfAdditionalStorageCells, n_cells)
@property @property
@ -2593,6 +2598,7 @@ class Detector(CppDetectorApi):
@element @element
def adcenable10g(self): def adcenable10g(self):
"""[Ctb][Moench] ADC Enable Mask for 10Gb mode for each 32 ADC channel. """[Ctb][Moench] ADC Enable Mask for 10Gb mode for each 32 ADC channel.
Note Note
----- -----
If any of a consecutive 4 bits are enabled, the complete 4 bits are enabled.""" If any of a consecutive 4 bits are enabled, the complete 4 bits are enabled."""

View File

@ -30,6 +30,14 @@ class Detector {
std::unique_ptr<DetectorImpl> pimpl; std::unique_ptr<DetectorImpl> pimpl;
public: public:
/** @name Configuration */
///@{
/**************************************************
* *
* Configuration *
* *
* ************************************************/
/** /**
* @param shm_id detector shared memory id * @param shm_id detector shared memory id
* Default value is 0. Can be set to more values for * Default value is 0. Can be set to more values for
@ -38,13 +46,6 @@ class Detector {
*/ */
Detector(int shm_id = 0); Detector(int shm_id = 0);
~Detector(); ~Detector();
/** @name Configuration */
///@{
/**************************************************
* *
* Configuration *
* *
* ************************************************/
/** Free the shared memory of this detector and all modules /** Free the shared memory of this detector and all modules
belonging to it */ belonging to it */
@ -191,7 +192,7 @@ class Detector {
void setFlipRows(bool value, Positions pos = {}); void setFlipRows(bool value, Positions pos = {});
Result<bool> isVirtualDetectorServer(Positions pos = {}) const; Result<bool> isVirtualDetectorServer(Positions pos = {}) const;
///@{ ///@}
/** @name Callbacks */ /** @name Callbacks */
///@{ ///@{
@ -222,7 +223,7 @@ class Detector {
void registerDataCallback(void (*func)(detectorData *, uint64_t, uint32_t, void registerDataCallback(void (*func)(detectorData *, uint64_t, uint32_t,
void *), void *),
void *pArg); void *pArg);
///@{ ///@}
/** @name Acquisition Parameters */ /** @name Acquisition Parameters */
///@{ ///@{
@ -526,7 +527,7 @@ class Detector {
*/ */
void setReadNRows(const int lines, Positions pos = {}); void setReadNRows(const int lines, Positions pos = {});
///@{ ///@}
/** @name Acquisition */ /** @name Acquisition */
///@{ ///@{
@ -613,7 +614,7 @@ class Detector {
/** Gets Scan error message if scan ended in error for non blocking /** Gets Scan error message if scan ended in error for non blocking
* acquisitions.*/ * acquisitions.*/
Result<std::string> getScanErrorMessage(Positions pos = {}) const; Result<std::string> getScanErrorMessage(Positions pos = {}) const;
///@{ ///@}
/** @name Network Configuration (Detector<->Receiver) */ /** @name Network Configuration (Detector<->Receiver) */
///@{ ///@{
@ -789,7 +790,7 @@ class Detector {
* port * port
*/ */
void setTransmissionDelayRight(int value, Positions pos = {}); void setTransmissionDelayRight(int value, Positions pos = {});
///@{ ///@}
/** @name Receiver Configuration */ /** @name Receiver Configuration */
///@{ ///@{
@ -877,7 +878,7 @@ class Detector {
* streamer yet or there is no second interface, it gives 0 in its place. */ * streamer yet or there is no second interface, it gives 0 in its place. */
Result<std::array<pid_t, NUM_RX_THREAD_IDS>> Result<std::array<pid_t, NUM_RX_THREAD_IDS>>
getRxThreadIds(Positions pos = {}) const; getRxThreadIds(Positions pos = {}) const;
///@{ ///@}
/** @name File */ /** @name File */
///@{ ///@{
@ -933,7 +934,7 @@ class Detector {
/** Default depends on detector type. \n 0 will set frames per file in an /** Default depends on detector type. \n 0 will set frames per file in an
* acquisition to unlimited */ * acquisition to unlimited */
void setFramesPerFile(int n, Positions pos = {}); void setFramesPerFile(int n, Positions pos = {});
///@{ ///@}
/** @name ZMQ Streaming Parameters (Receiver<->Client) */ /** @name ZMQ Streaming Parameters (Receiver<->Client) */
///@{ ///@{
@ -1041,7 +1042,7 @@ class Detector {
*/ */
void setRxZmqHwm(const int limit); void setRxZmqHwm(const int limit);
///@{ ///@}
/** @name Eiger Specific */ /** @name Eiger Specific */
///@{ ///@{
@ -1140,7 +1141,7 @@ class Detector {
void setDataStream(const defs::portPosition port, const bool enable, void setDataStream(const defs::portPosition port, const bool enable,
Positions pos = {}); Positions pos = {});
///@{ ///@}
/** @name Jungfrau Specific */ /** @name Jungfrau Specific */
///@{ ///@{
@ -1246,7 +1247,7 @@ class Detector {
*/ */
void setNumberOfFilterCells(int cell, Positions pos = {}); void setNumberOfFilterCells(int cell, Positions pos = {});
///@{ ///@}
/** @name Gotthard Specific */ /** @name Gotthard Specific */
///@{ ///@{
@ -1273,7 +1274,7 @@ class Detector {
/** [Gotthard] */ /** [Gotthard] */
Result<ns> getExptimeLeft(Positions pos = {}) const; Result<ns> getExptimeLeft(Positions pos = {}) const;
///@{ ///@}
/** @name Gotthard2 Specific */ /** @name Gotthard2 Specific */
///@{ ///@{
@ -1390,7 +1391,7 @@ class Detector {
/** [Gotthard2] */ /** [Gotthard2] */
void setBadChannels(const std::string &fname, Positions pos = {}); void setBadChannels(const std::string &fname, Positions pos = {});
///@{ ///@}
/** @name Mythen3 Specific */ /** @name Mythen3 Specific */
///@{ ///@{
@ -1447,7 +1448,7 @@ class Detector {
Result<int> getGainCaps(Positions pos = {}); Result<int> getGainCaps(Positions pos = {});
///@{ ///@}
/** @name CTB / Moench Specific */ /** @name CTB / Moench Specific */
///@{ ///@{
@ -1506,7 +1507,7 @@ class Detector {
/** [CTB][Moench] If any of a consecutive 4 bits are enabled, the " /** [CTB][Moench] If any of a consecutive 4 bits are enabled, the "
"complete 4 bits are enabled */ "complete 4 bits are enabled */
void setTenGigaADCEnableMask(uint32_t mask, Positions pos = {}); void setTenGigaADCEnableMask(uint32_t mask, Positions pos = {});
///@{ ///@}
/** @name CTB Specific */ /** @name CTB Specific */
///@{ ///@{
@ -1588,7 +1589,7 @@ class Detector {
/** [CTB] Default is enabled. */ /** [CTB] Default is enabled. */
void setLEDEnable(bool enable, Positions pos = {}); void setLEDEnable(bool enable, Positions pos = {});
///@{ ///@}
/** @name Pattern */ /** @name Pattern */
///@{ ///@{
@ -1675,7 +1676,7 @@ class Detector {
/** [Mythen3] */ /** [Mythen3] */
void startPattern(Positions pos = {}); void startPattern(Positions pos = {});
///@{ ///@}
/** @name Moench specific */ /** @name Moench specific */
///@{ ///@{
@ -1709,7 +1710,7 @@ class Detector {
void setAdditionalJsonParameter(const std::string &key, void setAdditionalJsonParameter(const std::string &key,
const std::string &value, const std::string &value,
Positions pos = {}); Positions pos = {});
///@{ ///@}
/** @name Advanced */ /** @name Advanced */
///@{ ///@{
@ -1806,7 +1807,7 @@ class Detector {
/** [CTB][Moench][Jungfrau] Advanced user Function! \n /** [CTB][Moench][Jungfrau] Advanced user Function! \n
[Jungfrau] Inversions on top of default mask */ [Jungfrau] Inversions on top of default mask */
void setADCInvert(uint32_t value, Positions pos = {}); void setADCInvert(uint32_t value, Positions pos = {});
///@{ ///@}
/** @name Insignificant */ /** @name Insignificant */
///@{ ///@{
@ -1858,7 +1859,7 @@ class Detector {
std::string getUserDetails() const; std::string getUserDetails() const;
Result<uint64_t> getRxCurrentFrameIndex(Positions pos = {}) const; Result<uint64_t> getRxCurrentFrameIndex(Positions pos = {}) const;
///@{ ///@}
private: private:
std::vector<int> getPortNumbers(int start_port); std::vector<int> getPortNumbers(int start_port);