Thermal Camera SDK 11.4.10
SDK for Optris Thermal Cameras
Loading...
Searching...
No Matches
IRImagerFactory.h
Go to the documentation of this file.
1// Copyright (c) 2008-2026 Optris GmbH & Co. KG
2
11#pragma once
12
13#include <memory>
14#include <string>
15#include <unordered_map>
16
17#include "otcsdk/Api.h"
18#include "otcsdk/Exceptions.h"
20
21
22namespace optris
23{
24
32{
33public:
41 OTC_SDK_API static IRImagerFactory& getInstance();
42
55 OTC_SDK_API std::shared_ptr<IRImager> create(const std::string& name) noexcept(false);
56
57
66 OTC_SDK_API void registerCreator(const std::string& name, std::shared_ptr<IRImagerCreator> creator);
67
68
69private:
71 IRImagerFactory() noexcept;
72
73
75 std::unordered_map<std::string, std::shared_ptr<IRImagerCreator>> _creators;
76};
77
78} // namespace optris
Contains defines controlling the Windows DLL export and import of symbols.
Contains the exceptions raised by the SDK.
Contains the interface definition for classes instantiating IRImager implementations.
Defines the interface for classes that instantiate IRImager implementations.
Definition IRImagerCreator.h:23
Factory instantiating IRImager implementations.
Definition IRImagerFactory.h:32
static OTC_SDK_API IRImagerFactory & getInstance()
Returns an instance of the IRImagerFactory.
OTC_SDK_API void registerCreator(const std::string &name, std::shared_ptr< IRImagerCreator > creator)
Registers an creator for an IRImager implementation with the given name.
OTC_SDK_API std::shared_ptr< IRImager > create(const std::string &name) noexcept(false)
Creates an instance of an IRImager implementation.
Main SDK namespace.
Definition AlarmChannel.h:21