M3badchannels (#526)

* badchannels for m3 and modify for g2 (file from single and multi)

* m3: invert polarity of bit 7 and 11 signals from setmodule, allow commas in bad channel file

* badchannel file can take commas, colons and comments (also taking care of spaces at the end of channel numbers)

* tests 'badchannels' and 'Channel file reading' added, removing duplicates in badchannel list, defining macro for num counters in client side

* fix segfault when list from file is empty, 

* fix tests assertion for ctbconfig (adding message) for c++11

* fixed badchannels in m3server (clocking in trimming) 

* badchannel tests can be run from any folder (finds the file)
This commit is contained in:
Dhanya Thattil
2022-09-01 15:30:04 +02:00
committed by GitHub
parent 02322bb3c2
commit 7de6f157b5
36 changed files with 499 additions and 221 deletions

View File

@ -7,6 +7,7 @@
#include <cstdio>
#include <fstream>
#include <string>
#include <vector>
namespace sls {
@ -48,4 +49,13 @@ int getFileSize(std::ifstream &ifs);
ssize_t getFileSize(FILE *fd, const std::string &prependErrorString);
std::string getFileNameFromFilePath(const std::string &fpath);
/** File can have # for comments.
* Channels can be separated by spaces, commas
* and ranges provided using ':', eg. 23:29
* */
std::vector<int> getChannelsFromFile(const std::string &fname);
std::string getAbsolutePathFromCurrentProcess(const std::string &fname);
} // namespace sls

View File

@ -73,6 +73,8 @@
#define MAX_PATTERN_LEVELS 6
#define M3_MAX_PATTERN_LEVELS 3
#define MAX_NUM_COUNTERS 3
#define DEFAULT_STREAMING_TIMER_IN_MS 500
#define NUM_RX_THREAD_IDS 9

View File

@ -5,10 +5,10 @@
#define APILIB 0x220609
#define APIRECEIVER 0x220609
#define APIGUI 0x220609
#define APIGOTTHARD 0x220816
#define APIEIGER 0x220816
#define APIMYTHEN3 0x220822
#define APICTB 0x220825
#define APIMOENCH 0x220825
#define APIGOTTHARD2 0x220830
#define APIJUNGFRAU 0x220831
#define APICTB 0x220831
#define APIGOTTHARD 0x220831
#define APIJUNGFRAU 0x220831
#define APIMOENCH 0x220831
#define APIMYTHEN3 0x220901
#define APIGOTTHARD2 0x220901