OTB  9.0.0
Orfeo Toolbox
otbNeuralNetworkMachineLearningModelFactory.hxx
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2005-2022 Centre National d'Etudes Spatiales (CNES)
3  *
4  * This file is part of Orfeo Toolbox
5  *
6  * https://www.orfeo-toolbox.org/
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  */
20 
21 #ifndef otbNeuralNetworkMachineLearningModelFactory_hxx
22 #define otbNeuralNetworkMachineLearningModelFactory_hxx
23 
25 
26 #include "itkCreateObjectFunction.h"
28 #include "itkVersion.h"
29 
30 namespace otb
31 {
32 
33 template <class TInputValue, class TOutputValue>
35 {
36 
37  std::string classOverride = std::string("otbMachineLearningModel");
38  std::string subclass = std::string("otbNeuralNetworkMachineLearningModel");
39 
40  this->RegisterOverride(classOverride.c_str(), subclass.c_str(), "Artificial Neural Network ML Model", 1,
41  itk::CreateObjectFunction<NeuralNetworkMachineLearningModel<TInputValue, TOutputValue>>::New());
42 }
43 
44 template <class TInputValue, class TOutputValue>
46 {
47  return ITK_SOURCE_VERSION;
48 }
49 
50 template <class TInputValue, class TOutputValue>
52 {
53  return "Artificial Neural Network machine learning model factory";
54 }
55 
56 } // end namespace otb
57 
58 #endif
otb::NeuralNetworkMachineLearningModelFactory::GetDescription
const char * GetDescription(void) const override
Definition: otbNeuralNetworkMachineLearningModelFactory.hxx:51
otbNeuralNetworkMachineLearningModelFactory.h
otb
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.
Definition: otbJoinContainer.h:32
otbNeuralNetworkMachineLearningModel.h
otb::NeuralNetworkMachineLearningModel
Definition: otbNeuralNetworkMachineLearningModel.h:34
otb::NeuralNetworkMachineLearningModelFactory::NeuralNetworkMachineLearningModelFactory
NeuralNetworkMachineLearningModelFactory()
Definition: otbNeuralNetworkMachineLearningModelFactory.hxx:34
otb::NeuralNetworkMachineLearningModelFactory::GetITKSourceVersion
const char * GetITKSourceVersion(void) const override
Definition: otbNeuralNetworkMachineLearningModelFactory.hxx:45