C++ API Reference for Intel® Data Analytics Acceleration Library 2018 Update 3

regression_predict_types.h
1 /* file: regression_predict_types.h */
2 /*******************************************************************************
3 * Copyright 2014-2018 Intel Corporation.
4 *
5 * This software and the related documents are Intel copyrighted materials, and
6 * your use of them is governed by the express license under which they were
7 * provided to you (License). Unless the License provides otherwise, you may not
8 * use, modify, copy, publish, distribute, disclose or transmit this software or
9 * the related documents without Intel's prior written permission.
10 *
11 * This software and the related documents are provided as is, with no express
12 * or implied warranties, other than those that are expressly stated in the
13 * License.
14 *******************************************************************************/
15 
16 /*
17 //++
18 // Implementation of the regression algorithm interface
19 //--
20 */
21 
22 #ifndef __REGRESSION_PREDICT_TYPES_H__
23 #define __REGRESSION_PREDICT_TYPES_H__
24 
25 #include "data_management/data/numeric_table.h"
26 #include "algorithms/algorithm_types.h"
27 #include "algorithms/regression/regression_model.h"
28 
29 namespace daal
30 {
31 namespace algorithms
32 {
33 namespace regression
34 {
44 namespace prediction
45 {
50 enum NumericTableInputId
51 {
52  data,
53  lastNumericTableInputId = data
54 };
55 
60 enum ModelInputId
61 {
62  model = lastNumericTableInputId + 1,
63  lastModelInputId = model
64 };
65 
70 enum ResultId
71 {
72  prediction,
73  lastResultId = prediction
74 };
75 
79 namespace interface1
80 {
85 class DAAL_EXPORT Input : public daal::algorithms::Input
86 {
87 public:
89  Input(size_t nElements = 0);
90  Input(const Input& other);
91 
97  data_management::NumericTablePtr get(NumericTableInputId id) const;
98 
104  regression::ModelPtr get(ModelInputId id) const;
105 
111  void set(NumericTableInputId id, const data_management::NumericTablePtr &value);
112 
118  void set(ModelInputId id, const regression::ModelPtr &value);
119 
125  services::Status check(const daal::algorithms::Parameter *parameter, int method) const DAAL_C11_OVERRIDE;
126 };
127 
128 
133 class DAAL_EXPORT Result : public daal::algorithms::Result
134 {
135 public:
136  DECLARE_SERIALIZABLE_CAST(Result);
137  Result(size_t nElements = 0);
138 
144  data_management::NumericTablePtr get(ResultId id) const;
145 
151  void set(ResultId id, const data_management::NumericTablePtr &value);
152 
161  services::Status check(const daal::algorithms::Input *input, const daal::algorithms::Parameter *par, int method) const DAAL_C11_OVERRIDE;
162 
163 protected:
165  template<typename Archive, bool onDeserialize>
166  services::Status serialImpl(Archive *arch)
167  {
168  return daal::algorithms::Result::serialImpl<Archive, onDeserialize>(arch);
169  }
170 };
171 typedef services::SharedPtr<Result> ResultPtr;
172 typedef services::SharedPtr<const Result> ResultConstPtr;
173 } // namespace interface1
174 using interface1::Input;
175 using interface1::Result;
176 using interface1::ResultPtr;
177 using interface1::ResultConstPtr;
178 }
180 }
181 }
182 }
183 
184 #endif
daal::algorithms::regression::prediction::interface1::Result
Provides interface for the result of the regression model-based prediction.
Definition: regression_predict_types.h:133
daal
Definition: algorithm_base_common.h:31
daal::algorithms::regression::prediction::ModelInputId
ModelInputId
Available identifiers of input models for making the regression model-based prediction.
Definition: regression_predict_types.h:60
daal::algorithms::regression::prediction::interface1::Input
Provides an interface for input objects for making the regression model-based prediction.
Definition: regression_predict_types.h:85
daal::algorithms::regression::prediction::prediction
Definition: regression_predict_types.h:72
daal::algorithms::regression::prediction::data
Definition: regression_predict_types.h:52
daal::algorithms::regression::prediction::NumericTableInputId
NumericTableInputId
Available identifiers of input numeric tables for making the regression model-based prediction...
Definition: regression_predict_types.h:50
daal::algorithms::math::abs::value
Definition: abs_types.h:86
daal::algorithms::regression::prediction::ResultId
ResultId
Available identifiers of the result for making the regression model-based prediction.
Definition: regression_predict_types.h:70
daal::algorithms::regression::prediction::model
Definition: regression_predict_types.h:62

For more complete information about compiler optimizations, see our Optimization Notice.