HORIBA C++ SDK
Library for HORIBA devices
Loading...
Searching...
No Matches
monos_discovery.h
Go to the documentation of this file.
1#ifndef MONO_DEVICES_DISCOVERY_H
2#define MONO_DEVICES_DISCOVERY_H
3
7
8#include <memory>
9#include <nlohmann/json.hpp>
10
11namespace horiba::devices {
16 public:
23 std::shared_ptr<horiba::communication::Communicator> communicator);
24 ~MonochromatorsDiscovery() override = default;
25
32 void execute(bool error_on_no_devices) noexcept(false) override;
33
40 [[nodiscard]] std::vector<std::shared_ptr<single_devices::Monochromator>>
42
43 private:
44 std::shared_ptr<horiba::communication::Communicator> communicator;
45 std::vector<std::shared_ptr<single_devices::Monochromator>> monos;
46
47 std::vector<std::shared_ptr<single_devices::Monochromator>> parse_monos(
48 const nlohmann::json& raw_monos_list);
49};
50} /* namespace horiba::devices */
51#endif /* ifndef MONO_DEVICES_DISCOVERY_H */
Interface for device discoveries on the ICL.
Definition device_discovery.h:9
MonochromatorsDiscovery(std::shared_ptr< horiba::communication::Communicator > communicator)
Builds a Monochromator discovery.
void execute(bool error_on_no_devices) noexcept(false) override
Executes the Monochromator discovery.
std::vector< std::shared_ptr< single_devices::Monochromator > > monochromators() const
Monochromators that have been discovered after calling the execute() function.
Definition ccds_discovery.h:11