ctb adc names (#757)

* first draft of adc names

* fixed tests

* formatting

* added python functions in src

---------

Co-authored-by: Erik Fröjdh <erik.frojdh@gmail.com>
This commit is contained in:
2023-05-31 21:07:07 +02:00
committed by GitHub
parent 225e5490d2
commit b9a346a396
12 changed files with 564 additions and 50 deletions

View File

@@ -6,10 +6,13 @@ namespace sls {
class CtbConfig {
static constexpr size_t name_length = 20;
static constexpr size_t num_dacs = 18;
static constexpr size_t num_adcs = 32;
static constexpr const char *shm_tag_ = "ctbdacs";
char dacnames[name_length * num_dacs]{};
char adcnames[name_length * num_adcs]{};
void check_index(size_t i) const;
void check_dac_index(size_t i) const;
void check_adc_index(size_t i) const;
void check_size(const std::string &name) const;
public:
@@ -23,6 +26,12 @@ class CtbConfig {
void setDacName(size_t index, const std::string &name);
std::string getDacName(size_t index) const;
std::vector<std::string> getDacNames() const;
void setAdcNames(const std::vector<std::string> &names);
void setAdcName(size_t index, const std::string &name);
std::string getAdcName(size_t index) const;
std::vector<std::string> getAdcNames() const;
static const char *shm_tag();
};