48 #ifndef __DATA_SOURCE_H__
49 #define __DATA_SOURCE_H__
52 #include "data_management/data/data_dictionary.h"
53 #include "data_management/data/numeric_table.h"
54 #include "data_management/data/homogen_numeric_table.h"
55 #include "data_management/data/aos_numeric_table.h"
56 #include "data_management/data/soa_numeric_table.h"
58 #include "data_management/data_source/data_source_utils.h"
62 namespace data_management
95 enum DictionaryCreationFlag
97 notDictionaryFromContext = 1,
98 doDictionaryFromContext = 2
105 enum NumericTableAllocationFlag
107 notAllocateNumericTable = 1,
108 doAllocateNumericTable = 2
116 DAAL_DEPRECATED_VIRTUAL
virtual DataSourceDictionary *getDictionary() = 0;
122 virtual DataSourceDictionaryPtr getDictionarySharedPtr() = 0;
127 virtual services::Status setDictionary(DataSourceDictionary *dict) = 0;
132 virtual services::Status createDictionaryFromContext() = 0;
138 virtual DataSourceStatus getStatus() = 0;
144 virtual size_t getNumberOfColumns() = 0;
150 virtual size_t getNumericTableNumberOfColumns() = 0;
156 virtual size_t getNumberOfAvailableRows() = 0;
161 virtual services::Status allocateNumericTable() = 0;
167 virtual NumericTablePtr &getNumericTable() = 0;
172 virtual void freeNumericTable() = 0;
178 virtual size_t loadDataBlock(
size_t maxRows) = 0;
186 virtual size_t loadDataBlock(
size_t maxRows,
size_t rowOffset,
size_t fullRows) = 0;
193 virtual size_t loadDataBlock(
size_t maxRows, NumericTable *nt) = 0;
202 virtual size_t loadDataBlock(
size_t maxRows,
size_t rowOffset,
size_t fullRows, NumericTable *nt) = 0;
207 virtual size_t loadDataBlock() = 0;
213 virtual size_t loadDataBlock(NumericTable *nt) = 0;
220 class DataSource :
public DataSourceIface
223 DataSource() : _dict(), _errors(
new services::ErrorCollection()), _initialMaxRows(10), _autoNumericTableFlag(doAllocateNumericTable), _autoDictionaryFlag(doDictionaryFromContext) {}
225 virtual ~DataSource() {}
227 DAAL_DEPRECATED_VIRTUAL DataSourceDictionary *getDictionary() DAAL_C11_OVERRIDE
229 services::Status s = checkDictionary();
235 DataSourceDictionaryPtr getDictionarySharedPtr() DAAL_C11_OVERRIDE
237 services::Status s = checkDictionary();
239 return DataSourceDictionaryPtr();
243 services::Status setDictionary(DataSourceDictionary *dict) DAAL_C11_OVERRIDE
246 return services::throwIfPossible(services::Status(services::ErrorDictionaryAlreadyAvailable));
248 services::Status s = dict->checkDictionary();
250 return services::throwIfPossible(s);
252 _dict.reset(dict, services::EmptyDeleter());
253 return services::Status();
256 services::Status createDictionaryFromContext() DAAL_C11_OVERRIDE
258 return services::throwIfPossible(services::Status(services::ErrorMethodNotSupported));
261 size_t loadDataBlock(
size_t maxRows) DAAL_C11_OVERRIDE
263 services::Status s = checkDictionary();
264 s.add(checkNumericTable());
267 this->_status.add(services::throwIfPossible(s));
270 return loadDataBlock(maxRows, this->DataSource::_spnt.
get());
273 size_t loadDataBlock(
size_t maxRows, NumericTable *nt) DAAL_C11_OVERRIDE
275 this->_status.add(services::throwIfPossible(services::ErrorMethodNotSupported));
279 size_t loadDataBlock(
size_t maxRows,
size_t rowOffset,
size_t fullRows) DAAL_C11_OVERRIDE
281 services::Status s = checkDictionary();
283 s.add(checkNumericTable());
286 this->_status.add(services::throwIfPossible(s));
289 return loadDataBlock(maxRows, rowOffset, fullRows, this->DataSource::_spnt.
get());
292 size_t loadDataBlock(
size_t maxRows,
size_t rowOffset,
size_t fullRows, NumericTable *nt) DAAL_C11_OVERRIDE
294 this->_status.add(services::throwIfPossible(services::ErrorMethodNotSupported));
298 size_t loadDataBlock() DAAL_C11_OVERRIDE
300 services::Status s = checkDictionary();
303 s.add(checkNumericTable());
307 this->_status.add(services::throwIfPossible(s));
310 return loadDataBlock(this->DataSource::_spnt.
get());
313 size_t loadDataBlock(NumericTable *nt) DAAL_C11_OVERRIDE
315 this->_status.add(services::throwIfPossible(services::ErrorMethodNotSupported));
319 NumericTablePtr &getNumericTable() DAAL_C11_OVERRIDE
325 size_t getNumberOfColumns() DAAL_C11_OVERRIDE
328 return _dict ? _dict->getNumberOfFeatures() : 0;
335 services::Status status()
const
337 services::Status s = _status;
348 DAAL_DEPRECATED services::SharedPtr<services::ErrorCollection> getErrors()
350 return status().getCollection();
353 virtual size_t getNumericTableNumberOfColumns() DAAL_C11_OVERRIDE
355 return getNumberOfColumns();
359 DataSourceDictionaryPtr _dict;
360 NumericTablePtr _spnt;
362 NumericTableAllocationFlag _autoNumericTableFlag;
363 DictionaryCreationFlag _autoDictionaryFlag;
364 services::Status _status;
365 services::SharedPtr<services::ErrorCollection> _errors;
366 size_t _initialMaxRows;
371 services::Status checkNumericTable()
373 if( _spnt.get() == NULL )
375 if( _autoNumericTableFlag == notAllocateNumericTable )
376 return services::throwIfPossible(services::Status(services::ErrorNumericTableNotAllocated));
377 return allocateNumericTable();
379 return services::Status();
385 services::Status checkDictionary()
389 if( _autoDictionaryFlag == notDictionaryFromContext )
390 return services::throwIfPossible(services::Status(services::ErrorDictionaryNotAvailable));
391 return createDictionaryFromContext();
393 return services::Status();
405 template<
typename NumericTableType> services::Status allocateNumericTableImpl(services::SharedPtr<NumericTableType> &nt);
416 template<
typename FPType> services::Status allocateNumericTableImpl(services::SharedPtr<HomogenNumericTable<FPType> > &nt);
418 size_t getStructureSize()
420 size_t structureSize = 0;
421 size_t nFeatures = _dict->getNumberOfFeatures();
422 for(
size_t i = 0; i < nFeatures; i++)
424 data_feature_utils::IndexNumType indexNumType = (*_dict)[i].ntFeature.indexType;
425 structureSize += (*_dict)[i].ntFeature.typeSize;
427 return structureSize;
430 virtual services::Status setNumericTableDictionary(NumericTablePtr nt)
432 if (!nt)
return services::throwIfPossible(services::Status(services::ErrorNullNumericTable));
433 NumericTableDictionaryPtr ntDict = nt->getDictionarySharedPtr();
434 if (!ntDict)
return services::throwIfPossible(services::Status(services::ErrorDictionaryNotAvailable));
436 size_t nFeatures = ntDict->getNumberOfFeatures();
438 for(
size_t i = 0; i < nFeatures; i++)
440 (*ntDict)[i] = (*_dict)[i].ntFeature;
442 return services::Status();
446 template<
typename NumericTableType>
447 inline services::Status DataSource::allocateNumericTableImpl(services::SharedPtr<NumericTableType> &nt)
449 nt = services::SharedPtr<NumericTableType>();
450 return services::Status();
454 inline services::Status DataSource::allocateNumericTableImpl(AOSNumericTablePtr &nt)
456 size_t nFeatures = _dict->getNumberOfFeatures();
457 size_t structureSize = getStructureSize();
459 nt = AOSNumericTable::create(structureSize, nFeatures, 0, &s);
461 s |= setNumericTableDictionary(nt);
466 inline services::Status DataSource::allocateNumericTableImpl(SOANumericTablePtr &nt)
468 nt = SOANumericTablePtr();
469 return services::Status();
472 template<
typename FPType>
473 inline services::Status DataSource::allocateNumericTableImpl(services::SharedPtr<HomogenNumericTable<FPType> > &nt)
475 size_t nFeatures = getNumericTableNumberOfColumns();
477 nt = HomogenNumericTable<FPType>::create(nFeatures, 0, NumericTableIface::doNotAllocate, &s);
479 s |= setNumericTableDictionary(nt);
488 template<
typename _numericTableType,
typename _summaryStatisticsType = DAAL_SUMMARY_STATISTICS_TYPE >
489 class DataSourceTemplate :
public DataSource
492 typedef _numericTableType numericTableType;
495 DataSourceTemplate( NumericTableAllocationFlag doAllocateNumericTable,
496 DictionaryCreationFlag doCreateDictionaryFromContext ) : DataSource()
498 DataSource::_autoNumericTableFlag = doAllocateNumericTable;
499 DataSource::_autoDictionaryFlag = doCreateDictionaryFromContext;
502 virtual ~DataSourceTemplate() {}
505 services::Status allocateNumericTable() DAAL_C11_OVERRIDE
507 if( _spnt.get() != NULL )
508 return services::throwIfPossible(services::Status(services::ErrorNumericTableAlreadyAllocated));
510 services::Status s = checkDictionary();
514 services::SharedPtr<numericTableType> nt;
516 s |= allocateNumericTableImpl( nt );
519 services::SharedPtr<HomogenNumericTable<_summaryStatisticsType> > ssNt;
521 s |= allocateNumericTableImpl( ssNt );
522 _spnt->basicStatistics.set(NumericTable::minimum, ssNt);
524 s |= allocateNumericTableImpl( ssNt );
525 _spnt->basicStatistics.set(NumericTable::maximum, ssNt);
527 s |= allocateNumericTableImpl( ssNt );
528 _spnt->basicStatistics.set(NumericTable::sum, ssNt);
530 s |= allocateNumericTableImpl( ssNt );
531 _spnt->basicStatistics.set(NumericTable::sumSquares, ssNt);
535 void freeNumericTable() DAAL_C11_OVERRIDE
537 _spnt = NumericTablePtr();
540 services::Status resizeNumericTableImpl(
const size_t linesToLoad, NumericTable* nt)
543 return services::Status(services::ErrorNullInputNumericTable);
546 return services::Status(services::ErrorDictionaryNotAvailable);
548 size_t nFeatures = getNumericTableNumberOfColumns();
550 if (nt->getNumberOfColumns() < nFeatures) {
551 nt->getDictionarySharedPtr()->setNumberOfFeatures(nFeatures);
555 nt->resize(linesToLoad);
557 const size_t nCols = nt->getNumberOfColumns();
559 nt->allocateBasicStatistics();
561 NumericTablePtr ntMin = nt->basicStatistics.get(NumericTable::minimum );
562 NumericTablePtr ntMax = nt->basicStatistics.get(NumericTable::maximum );
563 NumericTablePtr ntSum = nt->basicStatistics.get(NumericTable::sum );
564 NumericTablePtr ntSumSq = nt->basicStatistics.get(NumericTable::sumSquares);
566 if( ntMin->getNumberOfColumns() != nCols || ntMin->getNumberOfRows() != 1 )
568 if( ntMin->getNumberOfColumns() != nCols )
570 ntMin->getDictionarySharedPtr()->setNumberOfFeatures(nCols);
575 if( ntMax->getNumberOfColumns() != nCols || ntMax->getNumberOfRows() != 1 )
577 if( ntMax->getNumberOfColumns() != nCols )
579 ntMax->getDictionarySharedPtr()->setNumberOfFeatures(nCols);
584 if( ntSum->getNumberOfColumns() != nCols || ntSum->getNumberOfRows() != 1 )
586 if( ntSum->getNumberOfColumns() != nCols )
588 ntSum->getDictionarySharedPtr()->setNumberOfFeatures(nCols);
593 if( ntSumSq->getNumberOfColumns() != nCols || ntSumSq->getNumberOfRows() != 1 )
595 if( ntSumSq->getNumberOfColumns() != nCols )
597 ntSumSq->getDictionarySharedPtr()->setNumberOfFeatures(nCols);
601 return services::Status();
604 services::Status updateStatistics(
size_t ntRowIndex, NumericTable *nt,
size_t offset = 0)
607 return services::Status(services::ErrorNullInputNumericTable);
609 NumericTablePtr ntMin = nt->basicStatistics.get(NumericTable::minimum );
610 NumericTablePtr ntMax = nt->basicStatistics.get(NumericTable::maximum );
611 NumericTablePtr ntSum = nt->basicStatistics.get(NumericTable::sum );
612 NumericTablePtr ntSumSq = nt->basicStatistics.get(NumericTable::sumSquares);
614 BlockDescriptor<_summaryStatisticsType> blockMin;
615 BlockDescriptor<_summaryStatisticsType> blockMax;
616 BlockDescriptor<_summaryStatisticsType> blockSum;
617 BlockDescriptor<_summaryStatisticsType> blockSumSq;
619 ntMin->getBlockOfRows(0, 1, readWrite, blockMin);
620 ntMax->getBlockOfRows(0, 1, readWrite, blockMax);
621 ntSum->getBlockOfRows(0, 1, readWrite, blockSum);
622 ntSumSq->getBlockOfRows(0, 1, readWrite, blockSumSq);
624 _summaryStatisticsType *minimum = blockMin.getBlockPtr();
625 _summaryStatisticsType *maximum = blockMax.getBlockPtr();
626 _summaryStatisticsType *sum = blockSum.getBlockPtr();
627 _summaryStatisticsType *sumSquares = blockSumSq.getBlockPtr();
629 size_t nCols = nt->getNumberOfColumns();
631 if( minimum == NULL || maximum == NULL || sum == NULL || sumSquares == NULL )
633 ntMin->releaseBlockOfRows(blockMin);
634 ntMax->releaseBlockOfRows(blockMax);
635 ntSum->releaseBlockOfRows(blockSum);
636 ntSumSq->releaseBlockOfRows(blockSumSq);
637 return services::Status(services::ErrorIncorrectInputNumericTable);
640 BlockDescriptor<_summaryStatisticsType> block;
641 nt->getBlockOfRows( ntRowIndex + offset, 1, readOnly, block );
642 _summaryStatisticsType *row = block.getBlockPtr();
644 if( ntRowIndex != 0 )
646 for(
size_t i = 0; i < nCols; i++ )
648 if( minimum[i] > row[i] ) { minimum[i] = row[i]; }
649 if( maximum[i] < row[i] ) { maximum[i] = row[i]; }
651 sumSquares[i] += row[i] * row[i];
656 for(
size_t i = 0; i < nCols; i++ )
661 sumSquares[i] = row[i] * row[i];
665 nt->releaseBlockOfRows( block );
666 ntMin->releaseBlockOfRows( blockMin );
667 ntMax->releaseBlockOfRows( blockMax );
668 ntSum->releaseBlockOfRows( blockSum );
669 ntSumSq->releaseBlockOfRows( blockSumSq );
670 return services::Status();
673 services::Status combineSingleStatistics(NumericTable *ntSrc, NumericTable *ntDst,
bool wasEmpty, NumericTable::BasicStatisticsId
id)
675 if( ntSrc == NULL || ntDst == NULL )
676 return services::Status(services::ErrorNullInputNumericTable);
678 NumericTablePtr ntSrcStat = ntSrc->basicStatistics.get(
id);
679 NumericTablePtr ntDstStat = ntDst->basicStatistics.get(
id);
681 BlockDescriptor<_summaryStatisticsType> blockSrc;
682 BlockDescriptor<_summaryStatisticsType> blockDst;
684 ntSrcStat->getBlockOfRows(0, 1, readOnly, blockSrc);
685 ntDstStat->getBlockOfRows(0, 1, readWrite, blockDst);
687 const _summaryStatisticsType *src = blockSrc.getBlockPtr();
688 _summaryStatisticsType *dst = blockDst.getBlockPtr();
690 if( src == NULL || dst == NULL )
692 ntSrcStat->releaseBlockOfRows(blockSrc);
693 ntDstStat->releaseBlockOfRows(blockDst);
694 return services::Status(services::ErrorIncorrectInputNumericTable);
697 const size_t nColsSrc = ntSrc->getNumberOfColumns();
698 const size_t nCols = ntDst->getNumberOfColumns();
700 if (nCols != nColsSrc)
702 ntSrcStat->releaseBlockOfRows(blockSrc);
703 ntDstStat->releaseBlockOfRows(blockDst);
704 return services::Status(services::ErrorIncorrectInputNumericTable);
709 for(
size_t i = 0; i < nCols; i++ )
716 if (
id == NumericTable::minimum)
718 for(
size_t i = 0; i < nCols; i++ )
727 if (
id == NumericTable::maximum)
729 for(
size_t i = 0; i < nCols; i++ )
738 if (
id == NumericTable::sum)
740 for(
size_t i = 0; i < nCols; i++ )
746 if (
id == NumericTable::sumSquares)
748 for(
size_t i = 0; i < nCols; i++ )
755 ntSrcStat->releaseBlockOfRows( blockSrc );
756 ntDstStat->releaseBlockOfRows( blockDst );
757 return services::Status();
760 services::Status combineStatistics(NumericTable *ntSrc, NumericTable *ntDst,
bool wasEmpty)
763 s.add(combineSingleStatistics(ntSrc, ntDst, wasEmpty, NumericTable::minimum));
764 s.add(combineSingleStatistics(ntSrc, ntDst, wasEmpty, NumericTable::maximum));
765 s.add(combineSingleStatistics(ntSrc, ntDst, wasEmpty, NumericTable::sum));
766 s.add(combineSingleStatistics(ntSrc, ntDst, wasEmpty, NumericTable::sumSquares));
772 using interface1::DataSourceIface;
773 using interface1::DataSource;
774 using interface1::DataSourceTemplate;
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:279
daal::data_management::interface1::DataSource::getDictionary
DAAL_DEPRECATED_VIRTUAL DataSourceDictionary * getDictionary() DAAL_C11_OVERRIDE
Definition: data_source.h:227
daal::data_management::interface1::DataSource::checkDictionary
services::Status checkDictionary()
Definition: data_source.h:385
daal::services::ErrorDictionaryAlreadyAvailable
Definition: error_indexes.h:175
daal::services::ErrorNullInputNumericTable
Definition: error_indexes.h:107
daal
Definition: algorithm_base_common.h:57
daal::services::ErrorIncorrectInputNumericTable
Definition: error_indexes.h:101
daal::data_management::interface1::DataSourceIface
Abstract interface class that defines the interface for a data management component responsible for r...
Definition: data_source.h:76
daal::data_management::interface1::DataSourceIface::allocateNumericTable
virtual services::Status allocateNumericTable()=0
daal::services::ErrorNumericTableNotAllocated
Definition: error_indexes.h:179
daal::data_management::interface1::DataSource::status
services::Status status() const
Definition: data_source.h:335
daal::data_management::interface1::DataSourceIface::createDictionaryFromContext
virtual services::Status createDictionaryFromContext()=0
daal::data_management::interface1::DataSourceIface::getNumberOfAvailableRows
virtual size_t getNumberOfAvailableRows()=0
daal::data_management::interface1::NumericTable::getDictionarySharedPtr
virtual NumericTableDictionaryPtr getDictionarySharedPtr() const DAAL_C11_OVERRIDE
Definition: numeric_table.h:658
daal::data_management::interface1::DataSourceIface::loadDataBlock
virtual size_t loadDataBlock()=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:95
daal::algorithms::low_order_moments::maximum
Definition: low_order_moments_types.h:114
daal::data_management::interface1::DataSource
Implements the abstract DataSourceIface interface.
Definition: data_source.h:220
daal::data_management::interface1::DataSourceIface::notAllocateNumericTable
Definition: data_source.h:107
daal::data_management::interface1::NumericTable::getNumberOfColumns
size_t getNumberOfColumns() const
Definition: numeric_table.h:677
daal::data_management::interface1::DataSourceIface::freeNumericTable
virtual void freeNumericTable()=0
daal::algorithms::low_order_moments::minimum
Definition: low_order_moments_types.h:113
daal::data_management::interface1::DataSource::getDictionarySharedPtr
DataSourceDictionaryPtr getDictionarySharedPtr() DAAL_C11_OVERRIDE
Definition: data_source.h:235
daal::data_management::interface1::DataSource::getNumberOfColumns
size_t getNumberOfColumns() DAAL_C11_OVERRIDE
Definition: data_source.h:325
daal::data_management::interface1::DataSourceTemplate::allocateNumericTable
services::Status allocateNumericTable() DAAL_C11_OVERRIDE
Definition: data_source.h:505
daal::data_management::interface1::DataSource::loadDataBlock
size_t loadDataBlock(size_t maxRows) DAAL_C11_OVERRIDE
Definition: data_source.h:261
daal::data_management::interface1::DataSource::loadDataBlock
size_t loadDataBlock(NumericTable *nt) DAAL_C11_OVERRIDE
Definition: data_source.h:313
daal::data_management::interface1::DataSourceIface::doAllocateNumericTable
Definition: data_source.h:108
daal::data_management::interface1::DataSourceTemplate
Implements the abstract DataSourceIface interface.
Definition: data_source.h:489
daal::data_management::interface1::NumericTableIface::minimum
Definition: numeric_table.h:322
daal::data_management::interface1::NumericTable::allocateBasicStatistics
virtual services::Status allocateBasicStatistics() DAAL_C11_OVERRIDE
daal::algorithms::low_order_moments::sumSquares
Definition: low_order_moments_types.h:116
daal::data_management::interface1::DataSource::checkNumericTable
services::Status checkNumericTable()
Definition: data_source.h:371
daal::algorithms::covariance::sum
Definition: covariance_types.h:104
daal::data_management::interface1::HomogenNumericTable::create
static services::SharedPtr< HomogenNumericTable< DataType > > create(NumericTableDictionaryPtr ddictForHomogenNumericTable, services::Status *stat=NULL)
Definition: homogen_numeric_table.h:117
daal::data_management::interface1::NumericTable
Class for a data management component responsible for representation of data in the numeric format...
Definition: numeric_table.h:600
daal::data_management::interface1::DataSourceTemplate::freeNumericTable
void freeNumericTable() DAAL_C11_OVERRIDE
Definition: data_source.h:535
daal::data_management::interface1::DataSourceIface::setDictionary
virtual services::Status setDictionary(DataSourceDictionary *dict)=0
daal::data_management::interface1::DataSource::loadDataBlock
size_t loadDataBlock() DAAL_C11_OVERRIDE
Definition: data_source.h:298
daal::data_management::interface1::NumericTableIface::doNotAllocate
Definition: numeric_table.h:311
daal::data_management::interface1::NumericTable::resize
virtual services::Status resize(size_t nrows) DAAL_C11_OVERRIDE
Definition: numeric_table.h:662
daal::data_management::interface1::DataSource::getErrors
DAAL_DEPRECATED services::SharedPtr< services::ErrorCollection > getErrors()
Definition: data_source.h:348
daal::services::ErrorNumericTableAlreadyAllocated
Definition: error_indexes.h:178
daal::data_management::interface1::DataSourceIface::doDictionaryFromContext
Definition: data_source.h:98
daal::data_management::interface1::DataSourceIface::DataSourceStatus
DataSourceStatus
Specifies the status of the Data Source.
Definition: data_source.h:83
daal::data_management::interface1::NumericTableIface::maximum
Definition: numeric_table.h:323
daal::data_management::interface1::DataSourceIface::getNumericTable
virtual NumericTablePtr & getNumericTable()=0
daal::data_management::interface1::NumericTableIface::BasicStatisticsId
BasicStatisticsId
Enumeration to specify estimates of basic statistics stored.
Definition: numeric_table.h:320
daal::data_management::interface1::DataSourceIface::readyForLoad
Definition: data_source.h:85
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::getNumberOfColumns
virtual size_t getNumberOfColumns()=0
daal::data_management::interface1::DataSource::createDictionaryFromContext
services::Status createDictionaryFromContext() DAAL_C11_OVERRIDE
Definition: data_source.h:256
daal::services::ErrorDictionaryNotAvailable
Definition: error_indexes.h:176
daal::data_management::interface1::DataSourceIface::notDictionaryFromContext
Definition: data_source.h:97
daal::data_management::interface1::DataSourceIface::waitingForRows
Definition: data_source.h:86
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:292
daal::data_management::interface1::DataSource::getNumericTable
NumericTablePtr & getNumericTable() DAAL_C11_OVERRIDE
Definition: data_source.h:319
daal::data_management::interface1::DataSourceIface::getDictionary
virtual DAAL_DEPRECATED_VIRTUAL DataSourceDictionary * getDictionary()=0
daal::data_management::interface1::DataSourceIface::endOfData
Definition: data_source.h:87
daal::data_management::interface1::DataSource::getNumericTableNumberOfColumns
virtual size_t getNumericTableNumberOfColumns() DAAL_C11_OVERRIDE
Definition: data_source.h:353
daal::data_management::interface1::DataSourceIface::getDictionarySharedPtr
virtual DataSourceDictionaryPtr getDictionarySharedPtr()=0
daal::data_management::interface1::DataSourceIface::NumericTableAllocationFlag
NumericTableAllocationFlag
Specifies whether a Numeric Table is allocated inside of the Data Source object.
Definition: data_source.h:105
daal::data_management::interface1::DataSource::allocateNumericTableImpl
services::Status allocateNumericTableImpl(services::SharedPtr< NumericTableType > &nt)
Definition: data_source.h:447
daal::data_management::interface1::NumericTableIface::sum
Definition: numeric_table.h:324
daal::algorithms::implicit_als::training::offset
Definition: implicit_als_training_types.h:174
daal::data_management::interface1::DataSource::loadDataBlock
size_t loadDataBlock(size_t maxRows, NumericTable *nt) DAAL_C11_OVERRIDE
Definition: data_source.h:273
daal::data_management::interface1::DataSourceIface::getStatus
virtual DataSourceStatus getStatus()=0
daal::data_management::interface1::NumericTableIface::sumSquares
Definition: numeric_table.h:325
daal::data_management::interface1::DataSourceIface::getNumericTableNumberOfColumns
virtual size_t getNumericTableNumberOfColumns()=0
daal::services::ErrorNullNumericTable
Definition: error_indexes.h:139
daal::data_management::interface1::DataSource::setDictionary
services::Status setDictionary(DataSourceDictionary *dict) DAAL_C11_OVERRIDE
Definition: data_source.h:243
daal::data_management::interface1::DataSourceIface::notReady
Definition: data_source.h:88
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:76
daal::services::ErrorMethodNotSupported
Definition: error_indexes.h:95
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:184