49 #ifndef __QR_STREAM_H__
50 #define __QR_STREAM_H__
52 #include "algorithms/algorithm.h"
53 #include "data_management/data/numeric_table.h"
54 #include "services/daal_defines.h"
55 #include "algorithms/qr/qr_types.h"
79 template<
typename algorithmFPType, Method method, CpuType cpu>
80 class OnlineContainer :
public daal::algorithms::AnalysisContainerIface<online>
88 OnlineContainer(daal::services::Environment::env *daalEnv);
90 virtual ~OnlineContainer();
94 virtual services::Status compute() DAAL_C11_OVERRIDE;
98 virtual services::Status finalizeCompute() DAAL_C11_OVERRIDE;
112 template<
typename algorithmFPType = DAAL_ALGORITHM_FP_TYPE, Method method = defaultDense>
113 class Online :
public daal::algorithms::Analysis<online>
116 typedef OnlinePartialResult PartialResult;
117 typedef OnlinePartialResultPtr PartialResultPtr;
133 Online(
const Online<algorithmFPType, method> &other) : input(other.input), parameter(other.parameter)
142 virtual int getMethod() const DAAL_C11_OVERRIDE {
return(
int)method; }
148 ResultPtr getResult()
157 PartialResultPtr getPartialResult()
159 return _partialResult;
166 services::Status setResult(
const ResultPtr& res)
168 DAAL_CHECK(res, services::ErrorNullResult)
170 _res = _result.get();
171 return services::Status();
180 services::Status setPartialResult(
const PartialResultPtr &partialResult,
bool initFlag =
false)
182 _partialResult = partialResult;
183 _pres = _partialResult.get();
184 setInitFlag(initFlag);
185 return services::Status();
193 services::SharedPtr<Online<algorithmFPType, method> > clone()
const
195 return services::SharedPtr<Online<algorithmFPType, method> >(cloneImpl());
199 virtual Online<algorithmFPType, method> * cloneImpl() const DAAL_C11_OVERRIDE
201 return new Online<algorithmFPType, method>(*this);
204 virtual services::Status allocateResult() DAAL_C11_OVERRIDE
206 _result.reset(
new Result());
207 services::Status s = _result->allocate<algorithmFPType>(_pres, 0, 0);
208 _res = _result.get();
212 virtual services::Status allocatePartialResult() DAAL_C11_OVERRIDE
214 _partialResult.reset(
new PartialResult());
215 services::Status s = _partialResult->allocate<algorithmFPType>(_in, 0, 0);
216 _pres = _partialResult.get();
220 virtual services::Status initializePartialResult() DAAL_C11_OVERRIDE
222 services::Status s = _partialResult->initialize<algorithmFPType>(_in, 0, 0);
223 _pres = _partialResult.get();
229 Analysis<online>::_ac =
new __DAAL_ALGORITHM_CONTAINER(online, OnlineContainer, algorithmFPType, method)(&_env);
235 PartialResultPtr _partialResult;
240 using interface1::OnlineContainer;
241 using interface1::Online;
daal::algorithms::qr::interface1::OnlinePartialResult
Provides methods to access partial results obtained with the compute() method of the QR decomposition...
Definition: qr_types.h:321
daal::algorithms::qr::interface1::OnlineContainer::finalizeCompute
virtual services::Status finalizeCompute() DAAL_C11_OVERRIDE
daal
Definition: algorithm_base_common.h:57
daal::algorithms::qr::interface1::Online::input
Input input
Definition: qr_online.h:119
daal::algorithms::AnalysisContainerIface
Abstract interface class that provides virtual methods to access and run implementations of the analy...
Definition: analysis.h:79
daal::algorithms::qr::interface1::Parameter
Parameters for the QR decomposition compute method.
Definition: qr_types.h:662
daal::algorithms::qr::interface1::Online::setResult
services::Status setResult(const ResultPtr &res)
Definition: qr_online.h:166
daal::algorithms::qr::interface1::Online::parameter
Parameter parameter
Definition: qr_online.h:120
daal::algorithms::qr::interface1::OnlineContainer::~OnlineContainer
virtual ~OnlineContainer()
daal::algorithms::qr::interface1::OnlineContainer::OnlineContainer
OnlineContainer(daal::services::Environment::env *daalEnv)
daal::algorithms::qr::interface1::Online::getResult
ResultPtr getResult()
Definition: qr_online.h:148
daal::algorithms::qr::interface1::Online
Computes the results of the QR decomposition algorithm in the online processing mode.
Definition: qr_online.h:113
daal::algorithms::qr::interface1::Online::getPartialResult
PartialResultPtr getPartialResult()
Definition: qr_online.h:157
daal::algorithms::qr::interface1::Online::Online
Online(const Online< algorithmFPType, method > &other)
Definition: qr_online.h:133
daal::algorithms::qr::interface1::Online::clone
services::SharedPtr< Online< algorithmFPType, method > > clone() const
Definition: qr_online.h:193
daal::algorithms::qr::interface1::Online::getMethod
virtual int getMethod() const DAAL_C11_OVERRIDE
Definition: qr_online.h:142
daal::algorithms::qr::interface1::OnlineContainer::compute
virtual services::Status compute() DAAL_C11_OVERRIDE
daal::algorithms::Analysis
Provides methods for execution of operations over data, such as computation of Summary Statistics est...
Definition: analysis.h:94
daal::algorithms::qr::interface1::Online::setPartialResult
services::Status setPartialResult(const PartialResultPtr &partialResult, bool initFlag=false)
Definition: qr_online.h:180
daal::online
Definition: daal_defines.h:133
daal::algorithms::qr::interface1::OnlineContainer
Provides methods to run implementations of the QR decomposition algorithm in the online processing mo...
Definition: qr_online.h:80
daal::services::ErrorNullResult
Definition: error_indexes.h:122