24 #ifndef __DATA_SOURCE_H__
25 #define __DATA_SOURCE_H__
27 #include "data_management/data/data_dictionary.h"
28 #include "data_management/data/numeric_table.h"
29 #include "data_management/data/homogen_numeric_table.h"
30 #include "data_management/data/aos_numeric_table.h"
31 #include "data_management/data/soa_numeric_table.h"
33 #include "data_management/data_source/data_source_utils.h"
37 namespace data_management
70 enum DictionaryCreationFlag
72 notDictionaryFromContext = 1,
73 doDictionaryFromContext = 2
80 enum NumericTableAllocationFlag
82 notAllocateNumericTable = 1,
83 doAllocateNumericTable = 2
91 DAAL_DEPRECATED_VIRTUAL
virtual DataSourceDictionary *getDictionary() = 0;
97 virtual DataSourceDictionaryPtr getDictionarySharedPtr() = 0;
102 virtual services::Status setDictionary(DataSourceDictionary *dict) = 0;
107 virtual services::Status createDictionaryFromContext() = 0;
113 virtual DataSourceStatus getStatus() = 0;
119 virtual size_t getNumberOfColumns() = 0;
125 virtual size_t getNumericTableNumberOfColumns() = 0;
131 virtual size_t getNumberOfAvailableRows() = 0;
136 virtual services::Status allocateNumericTable() = 0;
142 virtual NumericTablePtr getNumericTable() = 0;
147 virtual void freeNumericTable() = 0;
153 virtual size_t loadDataBlock(
size_t maxRows) = 0;
161 virtual size_t loadDataBlock(
size_t maxRows,
size_t rowOffset,
size_t fullRows) = 0;
168 virtual size_t loadDataBlock(
size_t maxRows, NumericTable *nt) = 0;
177 virtual size_t loadDataBlock(
size_t maxRows,
size_t rowOffset,
size_t fullRows, NumericTable *nt) = 0;
182 virtual size_t loadDataBlock() = 0;
188 virtual size_t loadDataBlock(NumericTable *nt) = 0;
195 class DataSource :
public DataSourceIface
198 DataSource() : _dict(), _errors(
new services::ErrorCollection()), _initialMaxRows(10), _autoNumericTableFlag(doAllocateNumericTable), _autoDictionaryFlag(doDictionaryFromContext) {}
200 virtual ~DataSource() {}
202 DAAL_DEPRECATED_VIRTUAL DataSourceDictionary *getDictionary() DAAL_C11_OVERRIDE
204 services::Status s = checkDictionary();
210 DataSourceDictionaryPtr getDictionarySharedPtr() DAAL_C11_OVERRIDE
212 services::Status s = checkDictionary();
214 return DataSourceDictionaryPtr();
218 services::Status setDictionary(DataSourceDictionary *dict) DAAL_C11_OVERRIDE
221 return services::throwIfPossible(services::Status(services::ErrorDictionaryAlreadyAvailable));
223 services::Status s = dict->checkDictionary();
225 return services::throwIfPossible(s);
227 _dict.reset(dict, services::EmptyDeleter());
228 return services::Status();
231 services::Status createDictionaryFromContext() DAAL_C11_OVERRIDE
233 return services::throwIfPossible(services::Status(services::ErrorMethodNotSupported));
236 size_t loadDataBlock(
size_t maxRows) DAAL_C11_OVERRIDE
238 services::Status s = checkDictionary();
239 s.add(checkNumericTable());
242 this->_status.add(services::throwIfPossible(s));
245 return loadDataBlock(maxRows, this->DataSource::_spnt.
get());
248 size_t loadDataBlock(
size_t maxRows, NumericTable *nt) DAAL_C11_OVERRIDE
250 this->_status.add(services::throwIfPossible(services::ErrorMethodNotSupported));
254 size_t loadDataBlock(
size_t maxRows,
size_t rowOffset,
size_t fullRows) DAAL_C11_OVERRIDE
256 services::Status s = checkDictionary();
258 s.add(checkNumericTable());
261 this->_status.add(services::throwIfPossible(s));
264 return loadDataBlock(maxRows, rowOffset, fullRows, this->DataSource::_spnt.
get());
267 size_t loadDataBlock(
size_t maxRows,
size_t rowOffset,
size_t fullRows, NumericTable *nt) DAAL_C11_OVERRIDE
269 this->_status.add(services::throwIfPossible(services::ErrorMethodNotSupported));
273 size_t loadDataBlock() DAAL_C11_OVERRIDE
275 services::Status s = checkDictionary();
278 s.add(checkNumericTable());
282 this->_status.add(services::throwIfPossible(s));
285 return loadDataBlock(this->DataSource::_spnt.
get());
288 size_t loadDataBlock(NumericTable *nt) DAAL_C11_OVERRIDE
290 this->_status.add(services::throwIfPossible(services::ErrorMethodNotSupported));
294 NumericTablePtr getNumericTable() DAAL_C11_OVERRIDE
300 size_t getNumberOfColumns() DAAL_C11_OVERRIDE
303 return _dict ? _dict->getNumberOfFeatures() : 0;
310 services::Status status()
const
312 services::Status s = _status;
323 DAAL_DEPRECATED services::SharedPtr<services::ErrorCollection> getErrors()
325 return status().getCollection();
328 virtual size_t getNumericTableNumberOfColumns() DAAL_C11_OVERRIDE
330 return getNumberOfColumns();
334 DataSourceDictionaryPtr _dict;
335 NumericTablePtr _spnt;
337 NumericTableAllocationFlag _autoNumericTableFlag;
338 DictionaryCreationFlag _autoDictionaryFlag;
339 services::Status _status;
340 services::SharedPtr<services::ErrorCollection> _errors;
341 size_t _initialMaxRows;
346 services::Status checkNumericTable()
348 if( _spnt.get() == NULL )
350 if( _autoNumericTableFlag == notAllocateNumericTable )
351 return services::throwIfPossible(services::Status(services::ErrorNumericTableNotAllocated));
352 return allocateNumericTable();
354 return services::Status();
360 services::Status checkDictionary()
364 if( _autoDictionaryFlag == notDictionaryFromContext )
365 return services::throwIfPossible(services::Status(services::ErrorDictionaryNotAvailable));
366 return createDictionaryFromContext();
368 return services::Status();
380 template<
typename NumericTableType> services::Status allocateNumericTableImpl(services::SharedPtr<NumericTableType> &nt);
391 template<
typename FPType> services::Status allocateNumericTableImpl(services::SharedPtr<HomogenNumericTable<FPType> > &nt);
393 size_t getStructureSize()
395 size_t structureSize = 0;
396 size_t nFeatures = _dict->getNumberOfFeatures();
397 for(
size_t i = 0; i < nFeatures; i++)
399 features::IndexNumType indexNumType = (*_dict)[i].ntFeature.indexType;
400 structureSize += (*_dict)[i].ntFeature.typeSize;
402 return structureSize;
405 virtual services::Status setNumericTableDictionary(NumericTablePtr nt)
407 if (!nt)
return services::throwIfPossible(services::Status(services::ErrorNullNumericTable));
408 NumericTableDictionaryPtr ntDict = nt->getDictionarySharedPtr();
409 if (!ntDict)
return services::throwIfPossible(services::Status(services::ErrorDictionaryNotAvailable));
411 size_t nFeatures = ntDict->getNumberOfFeatures();
413 for(
size_t i = 0; i < nFeatures; i++)
415 (*ntDict)[i] = (*_dict)[i].ntFeature;
417 return services::Status();
421 template<
typename NumericTableType>
422 inline services::Status DataSource::allocateNumericTableImpl(services::SharedPtr<NumericTableType> &nt)
424 nt = services::SharedPtr<NumericTableType>();
425 return services::Status();
429 inline services::Status DataSource::allocateNumericTableImpl(AOSNumericTablePtr &nt)
431 size_t nFeatures = _dict->getNumberOfFeatures();
432 size_t structureSize = getStructureSize();
434 nt = AOSNumericTable::create(structureSize, nFeatures, 0, &s);
436 s |= setNumericTableDictionary(nt);
441 inline services::Status DataSource::allocateNumericTableImpl(SOANumericTablePtr &nt)
443 nt = SOANumericTablePtr();
444 return services::Status();
447 template<
typename FPType>
448 inline services::Status DataSource::allocateNumericTableImpl(services::SharedPtr<HomogenNumericTable<FPType> > &nt)
450 size_t nFeatures = getNumericTableNumberOfColumns();
452 nt = HomogenNumericTable<FPType>::create(nFeatures, 0, NumericTableIface::doNotAllocate, &s);
454 s |= setNumericTableDictionary(nt);
463 template<
typename _numericTableType,
typename _summaryStatisticsType = DAAL_SUMMARY_STATISTICS_TYPE >
464 class DataSourceTemplate :
public DataSource
467 typedef _numericTableType numericTableType;
470 DataSourceTemplate( NumericTableAllocationFlag doAllocateNumericTable,
471 DictionaryCreationFlag doCreateDictionaryFromContext ) : DataSource()
473 DataSource::_autoNumericTableFlag = doAllocateNumericTable;
474 DataSource::_autoDictionaryFlag = doCreateDictionaryFromContext;
477 virtual ~DataSourceTemplate() {}
479 virtual void freeNumericTable() DAAL_C11_OVERRIDE
481 _spnt = NumericTablePtr();
484 virtual services::Status allocateNumericTable() DAAL_C11_OVERRIDE
486 if( _spnt.get() != NULL )
487 return services::throwIfPossible(services::Status(services::ErrorNumericTableAlreadyAllocated));
489 services::Status s = checkDictionary();
493 services::SharedPtr<numericTableType> nt;
495 s |= allocateNumericTableImpl( nt );
498 services::SharedPtr<HomogenNumericTable<_summaryStatisticsType> > ssNt;
500 s |= allocateNumericTableImpl( ssNt );
501 _spnt->basicStatistics.set(NumericTable::minimum, ssNt);
503 s |= allocateNumericTableImpl( ssNt );
504 _spnt->basicStatistics.set(NumericTable::maximum, ssNt);
506 s |= allocateNumericTableImpl( ssNt );
507 _spnt->basicStatistics.set(NumericTable::sum, ssNt);
509 s |= allocateNumericTableImpl( ssNt );
510 _spnt->basicStatistics.set(NumericTable::sumSquares, ssNt);
515 services::Status resizeNumericTableImpl(
const size_t linesToLoad, NumericTable* nt)
518 return services::Status(services::ErrorNullInputNumericTable);
521 return services::Status(services::ErrorDictionaryNotAvailable);
523 size_t nFeatures = getNumericTableNumberOfColumns();
525 if (nt->getNumberOfColumns() < nFeatures) {
526 nt->getDictionarySharedPtr()->setNumberOfFeatures(nFeatures);
530 nt->resize(linesToLoad);
532 const size_t nCols = nt->getNumberOfColumns();
534 nt->allocateBasicStatistics();
536 NumericTablePtr ntMin = nt->basicStatistics.get(NumericTable::minimum );
537 NumericTablePtr ntMax = nt->basicStatistics.get(NumericTable::maximum );
538 NumericTablePtr ntSum = nt->basicStatistics.get(NumericTable::sum );
539 NumericTablePtr ntSumSq = nt->basicStatistics.get(NumericTable::sumSquares);
541 if( ntMin->getNumberOfColumns() != nCols || ntMin->getNumberOfRows() != 1 )
543 if( ntMin->getNumberOfColumns() != nCols )
545 ntMin->getDictionarySharedPtr()->setNumberOfFeatures(nCols);
550 if( ntMax->getNumberOfColumns() != nCols || ntMax->getNumberOfRows() != 1 )
552 if( ntMax->getNumberOfColumns() != nCols )
554 ntMax->getDictionarySharedPtr()->setNumberOfFeatures(nCols);
559 if( ntSum->getNumberOfColumns() != nCols || ntSum->getNumberOfRows() != 1 )
561 if( ntSum->getNumberOfColumns() != nCols )
563 ntSum->getDictionarySharedPtr()->setNumberOfFeatures(nCols);
568 if( ntSumSq->getNumberOfColumns() != nCols || ntSumSq->getNumberOfRows() != 1 )
570 if( ntSumSq->getNumberOfColumns() != nCols )
572 ntSumSq->getDictionarySharedPtr()->setNumberOfFeatures(nCols);
576 return services::Status();
579 services::Status updateStatistics(
size_t ntRowIndex, NumericTable *nt,
size_t offset = 0)
582 return services::Status(services::ErrorNullInputNumericTable);
584 NumericTablePtr ntMin = nt->basicStatistics.get(NumericTable::minimum );
585 NumericTablePtr ntMax = nt->basicStatistics.get(NumericTable::maximum );
586 NumericTablePtr ntSum = nt->basicStatistics.get(NumericTable::sum );
587 NumericTablePtr ntSumSq = nt->basicStatistics.get(NumericTable::sumSquares);
589 BlockDescriptor<_summaryStatisticsType> blockMin;
590 BlockDescriptor<_summaryStatisticsType> blockMax;
591 BlockDescriptor<_summaryStatisticsType> blockSum;
592 BlockDescriptor<_summaryStatisticsType> blockSumSq;
594 ntMin->getBlockOfRows(0, 1, readWrite, blockMin);
595 ntMax->getBlockOfRows(0, 1, readWrite, blockMax);
596 ntSum->getBlockOfRows(0, 1, readWrite, blockSum);
597 ntSumSq->getBlockOfRows(0, 1, readWrite, blockSumSq);
599 _summaryStatisticsType *minimum = blockMin.getBlockPtr();
600 _summaryStatisticsType *maximum = blockMax.getBlockPtr();
601 _summaryStatisticsType *sum = blockSum.getBlockPtr();
602 _summaryStatisticsType *sumSquares = blockSumSq.getBlockPtr();
604 size_t nCols = nt->getNumberOfColumns();
606 if( minimum == NULL || maximum == NULL || sum == NULL || sumSquares == NULL )
608 ntMin->releaseBlockOfRows(blockMin);
609 ntMax->releaseBlockOfRows(blockMax);
610 ntSum->releaseBlockOfRows(blockSum);
611 ntSumSq->releaseBlockOfRows(blockSumSq);
612 return services::Status(services::ErrorIncorrectInputNumericTable);
615 BlockDescriptor<_summaryStatisticsType> block;
616 nt->getBlockOfRows( ntRowIndex + offset, 1, readOnly, block );
617 _summaryStatisticsType *row = block.getBlockPtr();
619 if( ntRowIndex != 0 )
621 for(
size_t i = 0; i < nCols; i++ )
623 if( minimum[i] > row[i] ) { minimum[i] = row[i]; }
624 if( maximum[i] < row[i] ) { maximum[i] = row[i]; }
626 sumSquares[i] += row[i] * row[i];
631 for(
size_t i = 0; i < nCols; i++ )
636 sumSquares[i] = row[i] * row[i];
640 nt->releaseBlockOfRows( block );
641 ntMin->releaseBlockOfRows( blockMin );
642 ntMax->releaseBlockOfRows( blockMax );
643 ntSum->releaseBlockOfRows( blockSum );
644 ntSumSq->releaseBlockOfRows( blockSumSq );
645 return services::Status();
648 services::Status combineSingleStatistics(NumericTable *ntSrc, NumericTable *ntDst,
bool wasEmpty, NumericTable::BasicStatisticsId
id)
650 if( ntSrc == NULL || ntDst == NULL )
651 return services::Status(services::ErrorNullInputNumericTable);
653 NumericTablePtr ntSrcStat = ntSrc->basicStatistics.get(
id);
654 NumericTablePtr ntDstStat = ntDst->basicStatistics.get(
id);
656 BlockDescriptor<_summaryStatisticsType> blockSrc;
657 BlockDescriptor<_summaryStatisticsType> blockDst;
659 ntSrcStat->getBlockOfRows(0, 1, readOnly, blockSrc);
660 ntDstStat->getBlockOfRows(0, 1, readWrite, blockDst);
662 const _summaryStatisticsType *src = blockSrc.getBlockPtr();
663 _summaryStatisticsType *dst = blockDst.getBlockPtr();
665 if( src == NULL || dst == NULL )
667 ntSrcStat->releaseBlockOfRows(blockSrc);
668 ntDstStat->releaseBlockOfRows(blockDst);
669 return services::Status(services::ErrorIncorrectInputNumericTable);
672 const size_t nColsSrc = ntSrc->getNumberOfColumns();
673 const size_t nCols = ntDst->getNumberOfColumns();
675 if (nCols != nColsSrc)
677 ntSrcStat->releaseBlockOfRows(blockSrc);
678 ntDstStat->releaseBlockOfRows(blockDst);
679 return services::Status(services::ErrorIncorrectInputNumericTable);
684 for(
size_t i = 0; i < nCols; i++ )
691 if (
id == NumericTable::minimum)
693 for(
size_t i = 0; i < nCols; i++ )
702 if (
id == NumericTable::maximum)
704 for(
size_t i = 0; i < nCols; i++ )
713 if (
id == NumericTable::sum)
715 for(
size_t i = 0; i < nCols; i++ )
721 if (
id == NumericTable::sumSquares)
723 for(
size_t i = 0; i < nCols; i++ )
730 ntSrcStat->releaseBlockOfRows( blockSrc );
731 ntDstStat->releaseBlockOfRows( blockDst );
732 return services::Status();
735 services::Status combineStatistics(NumericTable *ntSrc, NumericTable *ntDst,
bool wasEmpty)
738 s.add(combineSingleStatistics(ntSrc, ntDst, wasEmpty, NumericTable::minimum));
739 s.add(combineSingleStatistics(ntSrc, ntDst, wasEmpty, NumericTable::maximum));
740 s.add(combineSingleStatistics(ntSrc, ntDst, wasEmpty, NumericTable::sum));
741 s.add(combineSingleStatistics(ntSrc, ntDst, wasEmpty, NumericTable::sumSquares));
749 using interface1::DataSourceIface;
750 using interface1::DataSource;
751 using interface1::DataSourceTemplate;
daal::services::ErrorMethodNotSupported
Definition: error_indexes.h:71
daal::data_management::interface1::NumericTable::allocateBasicStatistics
virtual services::Status allocateBasicStatistics() DAAL_C11_OVERRIDE
daal::data_management::interface1::DataSourceIface::NumericTableAllocationFlag
NumericTableAllocationFlag
Specifies whether a Numeric Table is allocated inside of the Data Source object.
Definition: data_source.h:80
daal::data_management::interface1::NumericTableIface::sumSquares
Definition: numeric_table.h:301
daal::data_management::interface1::NumericTableIface::maximum
Definition: numeric_table.h:299
daal::data_management::interface1::DataSource::checkNumericTable
services::Status checkNumericTable()
Definition: data_source.h:346
daal::services::ErrorDictionaryAlreadyAvailable
Definition: error_indexes.h:156
daal::data_management::interface1::DataSource::status
services::Status status() const
Definition: data_source.h:310
daal::data_management::interface1::DataSource::loadDataBlock
size_t loadDataBlock(NumericTable *nt) DAAL_C11_OVERRIDE
Definition: data_source.h:288
daal::data_management::interface1::DataSource::loadDataBlock
size_t loadDataBlock(size_t maxRows, NumericTable *nt) DAAL_C11_OVERRIDE
Definition: data_source.h:248
daal::services::ErrorNumericTableAlreadyAllocated
Definition: error_indexes.h:159
daal::data_management::interface1::DataSourceIface::doDictionaryFromContext
Definition: data_source.h:73
daal::data_management::interface1::DataSource::allocateNumericTableImpl
services::Status allocateNumericTableImpl(services::SharedPtr< NumericTableType > &nt)
Definition: data_source.h:422
daal::data_management::interface1::Dictionary
Class that represents a dictionary of a data set and provides methods to work with the data dictionar...
Definition: data_dictionary.h:163
daal::data_management::interface1::DataSource::getNumericTable
NumericTablePtr getNumericTable() DAAL_C11_OVERRIDE
Definition: data_source.h:294
daal::data_management::interface1::DataSourceIface::freeNumericTable
virtual void freeNumericTable()=0
daal::data_management::interface1::DataSourceIface::notAllocateNumericTable
Definition: data_source.h:82
daal::data_management::interface1::NumericTable
Class for a data management component responsible for representation of data in the numeric format...
Definition: numeric_table.h:577
daal::data_management::interface1::DataSource::loadDataBlock
size_t loadDataBlock(size_t maxRows, size_t rowOffset, size_t fullRows) DAAL_C11_OVERRIDE
Definition: data_source.h:254
daal::data_management::interface1::DataSourceIface::notDictionaryFromContext
Definition: data_source.h:72
daal::data_management::interface1::DataSourceIface::loadDataBlock
virtual size_t loadDataBlock()=0
daal::data_management::interface1::DataSourceIface::allocateNumericTable
virtual services::Status allocateNumericTable()=0
daal::data_management::interface1::DataSource
Implements the abstract DataSourceIface interface.
Definition: data_source.h:195
daal::data_management::interface1::DataSourceIface::readyForLoad
Definition: data_source.h:60
daal::services::ErrorNullNumericTable
Definition: error_indexes.h:115
daal::data_management::interface1::DataSourceIface::waitingForRows
Definition: data_source.h:61
daal::algorithms::low_order_moments::sumSquares
Definition: low_order_moments_types.h:92
daal::data_management::interface1::DataSource::setDictionary
services::Status setDictionary(DataSourceDictionary *dict) DAAL_C11_OVERRIDE
Definition: data_source.h:218
daal::data_management::interface1::HomogenNumericTable::create
static services::SharedPtr< HomogenNumericTable< DataType > > create(NumericTableDictionaryPtr ddictForHomogenNumericTable, services::Status *stat=NULL)
Definition: homogen_numeric_table.h:95
daal::data_management::interface1::NumericTableIface::minimum
Definition: numeric_table.h:298
daal::data_management::interface1::DataSource::getNumericTableNumberOfColumns
virtual size_t getNumericTableNumberOfColumns() DAAL_C11_OVERRIDE
Definition: data_source.h:328
daal::data_management::interface1::DataSourceIface::notReady
Definition: data_source.h:63
daal::data_management::interface1::DataSource::loadDataBlock
size_t loadDataBlock() DAAL_C11_OVERRIDE
Definition: data_source.h:273
daal::services::ErrorDictionaryNotAvailable
Definition: error_indexes.h:157
daal::data_management::interface1::DataSourceIface::DataSourceStatus
DataSourceStatus
Specifies the status of the Data Source.
Definition: data_source.h:58
daal::data_management::interface1::NumericTableIface::doNotAllocate
Definition: numeric_table.h:287
daal::data_management::interface1::DataSourceIface::getDictionarySharedPtr
virtual DataSourceDictionaryPtr getDictionarySharedPtr()=0
daal::data_management::interface1::NumericTable::getNumberOfColumns
size_t getNumberOfColumns() const
Definition: numeric_table.h:654
daal::data_management::interface1::DataSource::getErrors
DAAL_DEPRECATED services::SharedPtr< services::ErrorCollection > getErrors()
Definition: data_source.h:323
daal::data_management::interface1::DataSourceIface::endOfData
Definition: data_source.h:62
daal::data_management::interface1::NumericTable::resize
virtual services::Status resize(size_t nrows) DAAL_C11_OVERRIDE
Definition: numeric_table.h:639
daal::data_management::interface1::DataSourceIface::doAllocateNumericTable
Definition: data_source.h:83
daal::data_management::interface1::HomogenNumericTable
Class that provides methods to access data stored as a contiguous array of homogeneous feature vector...
Definition: homogen_numeric_table.h:54
daal::data_management::interface1::DataSource::getDictionary
DAAL_DEPRECATED_VIRTUAL DataSourceDictionary * getDictionary() DAAL_C11_OVERRIDE
Definition: data_source.h:202
daal::algorithms::low_order_moments::minimum
Definition: low_order_moments_types.h:89
daal::data_management::interface1::DataSourceTemplate::freeNumericTable
virtual void freeNumericTable() DAAL_C11_OVERRIDE
Definition: data_source.h:479
daal::services::ErrorNullInputNumericTable
Definition: error_indexes.h:83
daal::data_management::interface1::DataSourceIface::getDictionary
virtual DAAL_DEPRECATED_VIRTUAL DataSourceDictionary * getDictionary()=0
daal::data_management::interface1::DataSourceIface::DictionaryCreationFlag
DictionaryCreationFlag
Specifies whether a Data Dictionary is created from the context of a Data Source. ...
Definition: data_source.h:70
daal::services::ErrorNumericTableNotAllocated
Definition: error_indexes.h:160
daal::data_management::interface1::DataSourceIface::getNumberOfColumns
virtual size_t getNumberOfColumns()=0
daal::data_management::interface1::DataSourceIface::getNumericTableNumberOfColumns
virtual size_t getNumericTableNumberOfColumns()=0
daal::algorithms::covariance::sum
Definition: covariance_types.h:80
daal::data_management::interface1::NumericTable::getDictionarySharedPtr
virtual NumericTableDictionaryPtr getDictionarySharedPtr() const DAAL_C11_OVERRIDE
Definition: numeric_table.h:635
daal::data_management::interface1::DataSource::getNumberOfColumns
size_t getNumberOfColumns() DAAL_C11_OVERRIDE
Definition: data_source.h:300
daal::data_management::interface1::DataSource::loadDataBlock
size_t loadDataBlock(size_t maxRows, size_t rowOffset, size_t fullRows, NumericTable *nt) DAAL_C11_OVERRIDE
Definition: data_source.h:267
daal::data_management::interface1::DataSourceIface::getNumericTable
virtual NumericTablePtr getNumericTable()=0
daal::data_management::interface1::NumericTableIface::sum
Definition: numeric_table.h:300
daal::data_management::interface1::AOSNumericTable::create
static services::SharedPtr< AOSNumericTable > create(size_t structSize=0, size_t ncol=0, size_t nrow=0, services::Status *stat=NULL)
daal::data_management::interface1::DataSourceIface::getNumberOfAvailableRows
virtual size_t getNumberOfAvailableRows()=0
daal::data_management::interface1::DataSourceTemplate
Implements the abstract DataSourceIface interface.
Definition: data_source.h:464
daal::data_management::interface1::DataSource::checkDictionary
services::Status checkDictionary()
Definition: data_source.h:360
daal::data_management::interface1::DataSourceTemplate::allocateNumericTable
virtual services::Status allocateNumericTable() DAAL_C11_OVERRIDE
Definition: data_source.h:484
daal::data_management::interface1::DataSource::createDictionaryFromContext
services::Status createDictionaryFromContext() DAAL_C11_OVERRIDE
Definition: data_source.h:231
daal::data_management::interface1::DataSourceIface::setDictionary
virtual services::Status setDictionary(DataSourceDictionary *dict)=0
daal::services::ErrorIncorrectInputNumericTable
Definition: error_indexes.h:77
daal::data_management::interface1::DataSourceIface::getStatus
virtual DataSourceStatus getStatus()=0
daal::data_management::interface1::DataSource::getDictionarySharedPtr
DataSourceDictionaryPtr getDictionarySharedPtr() DAAL_C11_OVERRIDE
Definition: data_source.h:210
daal::data_management::interface1::DataSource::loadDataBlock
size_t loadDataBlock(size_t maxRows) DAAL_C11_OVERRIDE
Definition: data_source.h:236
daal::algorithms::low_order_moments::maximum
Definition: low_order_moments_types.h:90
daal::data_management::interface1::DataSourceIface
Abstract interface class that defines the interface for a data management component responsible for r...
Definition: data_source.h:51
daal::data_management::interface1::NumericTableIface::BasicStatisticsId
BasicStatisticsId
Enumeration to specify estimates of basic statistics stored.
Definition: numeric_table.h:296
daal::data_management::interface1::DataSourceIface::createDictionaryFromContext
virtual services::Status createDictionaryFromContext()=0