From 5194b98b99fece8ee772d4f5690250189c4ee104 Mon Sep 17 00:00:00 2001 From: Michael Langmayr Date: Tue, 23 Dec 2025 15:41:55 -0800 Subject: [PATCH 1/2] add hispec tracking camera instrument and stub out functions --- .../hispec_tracking_camera.cmake | 11 ++ .../hispec_tracking_camera_exposure_modes.cpp | 26 ++++ .../hispec_tracking_camera_exposure_modes.h | 37 +++++ .../hispec_tracking_camera_instrument.cpp | 133 ++++++++++++++++++ .../hispec_tracking_camera_instrument.h | 38 +++++ ...spec_tracking_camera_interface_factory.cpp | 23 +++ 6 files changed, 268 insertions(+) create mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera.cmake create mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp create mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.h create mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp create mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.h create mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera.cmake b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera.cmake new file mode 100644 index 0000000..4d4a649 --- /dev/null +++ b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera.cmake @@ -0,0 +1,11 @@ +# ---------------------------------------------------------------------------- +# @file Instruments/hispec_tracking_camera/hispec_tracking_camera.cmake +# @brief HISPEC Tracking Camera-specific input to the CMake build system for camerad +# @author Michael Langmayr +# ---------------------------------------------------------------------------- + +set (INSTRUMENT_SOURCES + ${CAMERAD_DIR}/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp + ${CAMERAD_DIR}/Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp + ${CAMERAD_DIR}/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp + ) diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp new file mode 100644 index 0000000..374f91d --- /dev/null +++ b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp @@ -0,0 +1,26 @@ +/** + * @file Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp + * @brief implements HISPEC Tracking Camera-specific exposure modes + * @author Michael Langmayr + * + */ + +#include "archon_exposure_modes.h" +#include "hispec_tracking_camera_exposure_modes.h" +#include "archon_interface.h" + +namespace Camera { + + /***** Camera::ExposureModeTracking::expose *********************************/ + /** + * @brief implementation of hispec tracking camera-specific expose for Tracking mode + * + */ + long ExposureModeTracking::expose() { + const std::string function("Camera::ExposureModeTracking::expose"); + logwrite(function, "tracking exposure stub"); + return NO_ERROR; + } + /***** Camera::ExposureModeTracking::expose *********************************/ + +} diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.h b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.h new file mode 100644 index 0000000..53b3f17 --- /dev/null +++ b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.h @@ -0,0 +1,37 @@ +/** + * @file Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.h + * @brief declares HISPEC Tracking Camera-specific exposure mode classes + * @details Declares classes that implement exposure modes supported by + * HISPEC Tracking Camera. These classes override virtual functions + * in the ExposureMode base class to provide mode-specific behavior. + * @author Michael Langmayr + * + */ + +#pragma once + +#include "exposure_modes.h" // ExposureMode base class + +namespace Camera { + + /** + * @namespace all recognized exposure modes for HispecTrackingCamera + */ + namespace HispecTrackingCameraExposureMode { + constexpr const char* TRACKING = "TRACKING"; + constexpr const char* ALLMODES[] = {TRACKING}; + } + + class HispecTrackingCamera; + + class ExposureModeTracking : public ExposureModeTemplate { + public: + ExposureModeTracking(Camera::ArchonInterface* iface) + : ExposureModeTemplate(iface) { + type=HispecTrackingCameraExposureMode::TRACKING; + } + + long expose() override; + }; + +} diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp new file mode 100644 index 0000000..2345323 --- /dev/null +++ b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp @@ -0,0 +1,133 @@ +/** + * @file Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp + * @brief implementation for HISPEC Tracking Camera-specific properties + * @author Michael Langmayr + * + */ + +#include "hispec_tracking_camera_instrument.h" +#include "hispec_tracking_camera_exposure_modes.h" + +namespace Camera { + + /***** Camera::HispecTrackingCamera::instrument_cmd *************************/ + /** + * @brief dispatcher for HISPEC Tracking Camera-specific instrument commands + * @details This allows dispatching instrument specific commands by receiving + * the command and args and calling the appropriate instrument + * specific function. + * @param[in] cmd command + * @param[in] args any number of arguments + * @param[out] retstring return string + * @return ERROR|NO_ERROR|HELP + * + */ + long HispecTrackingCamera::instrument_cmd(const std::string &cmd, + const std::string &args, + std::string &retstring) { + if ( cmd == "readout" ) { + return this->readout(args, retstring); + } + else + if ( cmd == "expose" ) { + return this->expose(args, retstring); + } + else { + retstring = "unrecognized command"; + return ERROR; + } + } + /***** Camera::HispecTrackingCamera::instrument_cmd *************************/ + + + /***** Camera::HispecTrackingCamera::configure_instrument *******************/ + /** + * @brief extract+apply instrument-specific parameters from config file + * @throws std::runtime_error + * + */ + void HispecTrackingCamera::configure_instrument() { + const std::string function("Camera::HispecTrackingCamera::configure_instrument"); + logwrite(function, ""); + } + /***** Camera::HispecTrackingCamera::configure_instrument *******************/ + + + /***** Camera::HispecTrackingCamera::get_exposure_modes *********************/ + /** + * @brief return a vector of strings of recognized exposure modes + * @details This adds HispecTrackingCamera exposure modes to the base exposure modes. + * @return vector + * + */ + std::vector HispecTrackingCamera::get_exposure_modes() { + // base exposure modes + auto modes = this->ArchonInterface::get_exposure_modes(); + + // add hispec tracking camera exposure modes + for (const auto &mode : Camera::HispecTrackingCameraExposureMode::ALLMODES) { modes.push_back(mode); } + + return modes; + } + /***** Camera::HispecTrackingCamera::get_exposure_modes *********************/ + + + /***** Camera::HispecTrackingCamera::set_exposure_mode **********************/ + /** + * @brief actually sets the exposure mode + * @details This creates the appropriate exposure mode object for the + * requested exposure mode, providing access to that mode's functions. + * This is hispec tracking camera-specific but gets called by + * ArchonInterface because it overrides. If the requested mode is + * not a hispec tracking camera mode then this will call the + * set_exposure_mode in the base class. + * @return ERROR|NO_ERROR + * + */ + long HispecTrackingCamera::set_exposure_mode(const std::string &modein) { + + if (modein==HispecTrackingCameraExposureMode::TRACKING) { + this->exposuremode = std::make_unique(this); + } + else { + return this->ArchonInterface::set_exposure_mode(modein); + } + + return NO_ERROR; + } + /***** Camera::HispecTrackingCamera::set_exposure_mode **********************/ + + + /***** Camera::HispecTrackingCamera::readout ********************************/ + /** + * @brief stub for HISPEC Tracking Camera readout command + * @param[in] args any number of arguments + * @param[out] retstring return string + * @return ERROR|NO_ERROR|HELP + * + */ + long HispecTrackingCamera::readout(const std::string &args, std::string &retstring) { + const std::string function("Camera::HispecTrackingCamera::readout"); + logwrite(function, "readout stub called with args: "+args); + retstring="readout stub"; + return NO_ERROR; + } + /***** Camera::HispecTrackingCamera::readout ********************************/ + + + /***** Camera::HispecTrackingCamera::expose *********************************/ + /** + * @brief stub for HISPEC Tracking Camera expose command + * @param[in] args any number of arguments + * @param[out] retstring return string + * @return ERROR|NO_ERROR|HELP + * + */ + long HispecTrackingCamera::expose(const std::string &args, std::string &retstring) { + const std::string function("Camera::HispecTrackingCamera::expose"); + logwrite(function, "expose stub called with args: "+args); + retstring="expose stub"; + return NO_ERROR; + } + /***** Camera::HispecTrackingCamera::expose *********************************/ +} diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.h b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.h new file mode 100644 index 0000000..10774ed --- /dev/null +++ b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.h @@ -0,0 +1,38 @@ +/** + * @file Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.h + * @brief contains properties unique to the HISPEC Tracking Camera instrument + * @author Michael Langmayr + * + */ +#pragma once + +#include "archon_interface.h" /// HISPEC Tracking Camera uses ArchonInterface + +namespace Camera { + + /***** Camera::HispecTrackingCamera *******************************************/ + /** + * @class HispecTrackingCamera + * @brief derived class inherits from ArchonInterface + * @details This class describes HISPEC Tracking Camera-specific functionality. + * + */ + class HispecTrackingCamera : public ArchonInterface { + public: + // instrument command dispatcher + long instrument_cmd(const std::string &cmd, + const std::string &args, + std::string &retstring) override; + + void configure_instrument() override; + + std::vector get_exposure_modes() override; + long set_exposure_mode(const std::string &modein) override; + + private: + // these are HISPEC Tracking Camera-specific functions + long readout(const std::string &args, std::string &retstring); + long expose(const std::string &args, std::string &retstring); + }; + /***** Camera::HispecTrackingCamera *******************************************/ +} diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp new file mode 100644 index 0000000..ab4b1db --- /dev/null +++ b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp @@ -0,0 +1,23 @@ +/** + * @file Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp + * @brief HISPEC Tracking Camera Interface Factory + * @author Michael Langmayr + * + */ +#include "hispec_tracking_camera_instrument.h" +#include "camera_interface.h" + +namespace Camera { + + /***** Camera::Interface::create ********************************************/ + /** + * @brief factory function to create pointer to HispecTrackingCamera + * @return unique_ptr + * + */ + std::unique_ptr Interface::create() { + return std::make_unique(); + } + /***** Camera::Interface::create ********************************************/ + +} From 79523ce57ac197bd3d8def307e57c74ed7e0de54 Mon Sep 17 00:00:00 2001 From: Michael Langmayr Date: Tue, 23 Dec 2025 16:05:42 -0800 Subject: [PATCH 2/2] move tracking camera instrument to submodule --- .gitmodules | 3 + camerad/Instruments/hispec_tracking_camera | 1 + .../hispec_tracking_camera.cmake | 11 -- .../hispec_tracking_camera_exposure_modes.cpp | 26 ---- .../hispec_tracking_camera_exposure_modes.h | 37 ----- .../hispec_tracking_camera_instrument.cpp | 133 ------------------ .../hispec_tracking_camera_instrument.h | 38 ----- ...spec_tracking_camera_interface_factory.cpp | 23 --- 8 files changed, 4 insertions(+), 268 deletions(-) create mode 100644 .gitmodules create mode 160000 camerad/Instruments/hispec_tracking_camera delete mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera.cmake delete mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp delete mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.h delete mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp delete mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.h delete mode 100644 camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..2740b99 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "camerad/Instruments/hispec_tracking_camera"] + path = camerad/Instruments/hispec_tracking_camera + url = git@github.com:CaltechOpticalObservatories/hispec-tracking-camera-instrument.git diff --git a/camerad/Instruments/hispec_tracking_camera b/camerad/Instruments/hispec_tracking_camera new file mode 160000 index 0000000..81257b8 --- /dev/null +++ b/camerad/Instruments/hispec_tracking_camera @@ -0,0 +1 @@ +Subproject commit 81257b8880ad0abbc27ba22f493036be0d5ed2f6 diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera.cmake b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera.cmake deleted file mode 100644 index 4d4a649..0000000 --- a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera.cmake +++ /dev/null @@ -1,11 +0,0 @@ -# ---------------------------------------------------------------------------- -# @file Instruments/hispec_tracking_camera/hispec_tracking_camera.cmake -# @brief HISPEC Tracking Camera-specific input to the CMake build system for camerad -# @author Michael Langmayr -# ---------------------------------------------------------------------------- - -set (INSTRUMENT_SOURCES - ${CAMERAD_DIR}/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp - ${CAMERAD_DIR}/Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp - ${CAMERAD_DIR}/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp - ) diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp deleted file mode 100644 index 374f91d..0000000 --- a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp +++ /dev/null @@ -1,26 +0,0 @@ -/** - * @file Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.cpp - * @brief implements HISPEC Tracking Camera-specific exposure modes - * @author Michael Langmayr - * - */ - -#include "archon_exposure_modes.h" -#include "hispec_tracking_camera_exposure_modes.h" -#include "archon_interface.h" - -namespace Camera { - - /***** Camera::ExposureModeTracking::expose *********************************/ - /** - * @brief implementation of hispec tracking camera-specific expose for Tracking mode - * - */ - long ExposureModeTracking::expose() { - const std::string function("Camera::ExposureModeTracking::expose"); - logwrite(function, "tracking exposure stub"); - return NO_ERROR; - } - /***** Camera::ExposureModeTracking::expose *********************************/ - -} diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.h b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.h deleted file mode 100644 index 53b3f17..0000000 --- a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.h +++ /dev/null @@ -1,37 +0,0 @@ -/** - * @file Instruments/hispec_tracking_camera/hispec_tracking_camera_exposure_modes.h - * @brief declares HISPEC Tracking Camera-specific exposure mode classes - * @details Declares classes that implement exposure modes supported by - * HISPEC Tracking Camera. These classes override virtual functions - * in the ExposureMode base class to provide mode-specific behavior. - * @author Michael Langmayr - * - */ - -#pragma once - -#include "exposure_modes.h" // ExposureMode base class - -namespace Camera { - - /** - * @namespace all recognized exposure modes for HispecTrackingCamera - */ - namespace HispecTrackingCameraExposureMode { - constexpr const char* TRACKING = "TRACKING"; - constexpr const char* ALLMODES[] = {TRACKING}; - } - - class HispecTrackingCamera; - - class ExposureModeTracking : public ExposureModeTemplate { - public: - ExposureModeTracking(Camera::ArchonInterface* iface) - : ExposureModeTemplate(iface) { - type=HispecTrackingCameraExposureMode::TRACKING; - } - - long expose() override; - }; - -} diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp deleted file mode 100644 index 2345323..0000000 --- a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp +++ /dev/null @@ -1,133 +0,0 @@ -/** - * @file Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.cpp - * @brief implementation for HISPEC Tracking Camera-specific properties - * @author Michael Langmayr - * - */ - -#include "hispec_tracking_camera_instrument.h" -#include "hispec_tracking_camera_exposure_modes.h" - -namespace Camera { - - /***** Camera::HispecTrackingCamera::instrument_cmd *************************/ - /** - * @brief dispatcher for HISPEC Tracking Camera-specific instrument commands - * @details This allows dispatching instrument specific commands by receiving - * the command and args and calling the appropriate instrument - * specific function. - * @param[in] cmd command - * @param[in] args any number of arguments - * @param[out] retstring return string - * @return ERROR|NO_ERROR|HELP - * - */ - long HispecTrackingCamera::instrument_cmd(const std::string &cmd, - const std::string &args, - std::string &retstring) { - if ( cmd == "readout" ) { - return this->readout(args, retstring); - } - else - if ( cmd == "expose" ) { - return this->expose(args, retstring); - } - else { - retstring = "unrecognized command"; - return ERROR; - } - } - /***** Camera::HispecTrackingCamera::instrument_cmd *************************/ - - - /***** Camera::HispecTrackingCamera::configure_instrument *******************/ - /** - * @brief extract+apply instrument-specific parameters from config file - * @throws std::runtime_error - * - */ - void HispecTrackingCamera::configure_instrument() { - const std::string function("Camera::HispecTrackingCamera::configure_instrument"); - logwrite(function, ""); - } - /***** Camera::HispecTrackingCamera::configure_instrument *******************/ - - - /***** Camera::HispecTrackingCamera::get_exposure_modes *********************/ - /** - * @brief return a vector of strings of recognized exposure modes - * @details This adds HispecTrackingCamera exposure modes to the base exposure modes. - * @return vector - * - */ - std::vector HispecTrackingCamera::get_exposure_modes() { - // base exposure modes - auto modes = this->ArchonInterface::get_exposure_modes(); - - // add hispec tracking camera exposure modes - for (const auto &mode : Camera::HispecTrackingCameraExposureMode::ALLMODES) { modes.push_back(mode); } - - return modes; - } - /***** Camera::HispecTrackingCamera::get_exposure_modes *********************/ - - - /***** Camera::HispecTrackingCamera::set_exposure_mode **********************/ - /** - * @brief actually sets the exposure mode - * @details This creates the appropriate exposure mode object for the - * requested exposure mode, providing access to that mode's functions. - * This is hispec tracking camera-specific but gets called by - * ArchonInterface because it overrides. If the requested mode is - * not a hispec tracking camera mode then this will call the - * set_exposure_mode in the base class. - * @return ERROR|NO_ERROR - * - */ - long HispecTrackingCamera::set_exposure_mode(const std::string &modein) { - - if (modein==HispecTrackingCameraExposureMode::TRACKING) { - this->exposuremode = std::make_unique(this); - } - else { - return this->ArchonInterface::set_exposure_mode(modein); - } - - return NO_ERROR; - } - /***** Camera::HispecTrackingCamera::set_exposure_mode **********************/ - - - /***** Camera::HispecTrackingCamera::readout ********************************/ - /** - * @brief stub for HISPEC Tracking Camera readout command - * @param[in] args any number of arguments - * @param[out] retstring return string - * @return ERROR|NO_ERROR|HELP - * - */ - long HispecTrackingCamera::readout(const std::string &args, std::string &retstring) { - const std::string function("Camera::HispecTrackingCamera::readout"); - logwrite(function, "readout stub called with args: "+args); - retstring="readout stub"; - return NO_ERROR; - } - /***** Camera::HispecTrackingCamera::readout ********************************/ - - - /***** Camera::HispecTrackingCamera::expose *********************************/ - /** - * @brief stub for HISPEC Tracking Camera expose command - * @param[in] args any number of arguments - * @param[out] retstring return string - * @return ERROR|NO_ERROR|HELP - * - */ - long HispecTrackingCamera::expose(const std::string &args, std::string &retstring) { - const std::string function("Camera::HispecTrackingCamera::expose"); - logwrite(function, "expose stub called with args: "+args); - retstring="expose stub"; - return NO_ERROR; - } - /***** Camera::HispecTrackingCamera::expose *********************************/ -} diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.h b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.h deleted file mode 100644 index 10774ed..0000000 --- a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.h +++ /dev/null @@ -1,38 +0,0 @@ -/** - * @file Instruments/hispec_tracking_camera/hispec_tracking_camera_instrument.h - * @brief contains properties unique to the HISPEC Tracking Camera instrument - * @author Michael Langmayr - * - */ -#pragma once - -#include "archon_interface.h" /// HISPEC Tracking Camera uses ArchonInterface - -namespace Camera { - - /***** Camera::HispecTrackingCamera *******************************************/ - /** - * @class HispecTrackingCamera - * @brief derived class inherits from ArchonInterface - * @details This class describes HISPEC Tracking Camera-specific functionality. - * - */ - class HispecTrackingCamera : public ArchonInterface { - public: - // instrument command dispatcher - long instrument_cmd(const std::string &cmd, - const std::string &args, - std::string &retstring) override; - - void configure_instrument() override; - - std::vector get_exposure_modes() override; - long set_exposure_mode(const std::string &modein) override; - - private: - // these are HISPEC Tracking Camera-specific functions - long readout(const std::string &args, std::string &retstring); - long expose(const std::string &args, std::string &retstring); - }; - /***** Camera::HispecTrackingCamera *******************************************/ -} diff --git a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp b/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp deleted file mode 100644 index ab4b1db..0000000 --- a/camerad/Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp +++ /dev/null @@ -1,23 +0,0 @@ -/** - * @file Instruments/hispec_tracking_camera/hispec_tracking_camera_interface_factory.cpp - * @brief HISPEC Tracking Camera Interface Factory - * @author Michael Langmayr - * - */ -#include "hispec_tracking_camera_instrument.h" -#include "camera_interface.h" - -namespace Camera { - - /***** Camera::Interface::create ********************************************/ - /** - * @brief factory function to create pointer to HispecTrackingCamera - * @return unique_ptr - * - */ - std::unique_ptr Interface::create() { - return std::make_unique(); - } - /***** Camera::Interface::create ********************************************/ - -}