24 lines
779 B
C++
24 lines
779 B
C++
// Copyright (2019-2023) Paul Scherrer Institute
|
|
|
|
#ifndef JUNGFRAUJOCH_ACQUISITIONDEVICEGROUP_H
|
|
#define JUNGFRAUJOCH_ACQUISITIONDEVICEGROUP_H
|
|
|
|
#include <vector>
|
|
#include "AcquisitionDevice.h"
|
|
#include "../common/JFJochException.h"
|
|
|
|
class AcquisitionDeviceGroup {
|
|
std::vector<std::unique_ptr<AcquisitionDevice>> aq_devices;
|
|
public:
|
|
AcquisitionDevice& operator[](int idx);
|
|
size_t size();
|
|
void Add(std::unique_ptr<AcquisitionDevice> &&device);
|
|
void AddPCIeDevice(const std::string &device_name);
|
|
void AddHLSDevice(int64_t buffer_size_modules);
|
|
std::vector<AcquisitionDeviceNetConfig> GetNetworkConfig();
|
|
void SetDefaultDataSource(AcquisitionDeviceSource id);
|
|
void EnableLogging(Logger *logger);
|
|
};
|
|
|
|
#endif //JUNGFRAUJOCH_ACQUISITIONDEVICEGROUP_H
|