49 #ifndef __NUMERIC_TABLE_H__ 50 #define __NUMERIC_TABLE_H__ 52 #include "services/base.h" 53 #include "services/daal_defines.h" 54 #include "services/daal_memory.h" 55 #include "services/error_handling.h" 56 #include "algorithms/algorithm_types.h" 57 #include "data_management/data/data_collection.h" 58 #include "data_management/data/data_dictionary.h" 60 #include "data_management/data/numeric_types.h" 65 namespace data_management
80 template<
typename DataType = DAAL_DATA_TYPE>
81 class DAAL_EXPORT BlockDescriptor
85 BlockDescriptor() : _ptr(), _buffer(), _capacity(0), _ncols(0), _nrows(0), _colsOffset(0), _rowsOffset(0), _rwFlag(0), _pPtr(0), _rawPtr(0)
89 ~BlockDescriptor() { freeBuffer(); }
95 inline DataType *getBlockPtr()
const 99 return (DataType *)_rawPtr;
108 inline services::SharedPtr<DataType> getBlockSharedPtr()
const 112 return services::SharedPtr<DataType>(services::reinterpretPointerCast<DataType, byte>(*_pPtr), (DataType *)_rawPtr);
121 inline size_t getNumberOfColumns()
const {
return _ncols; }
127 inline size_t getNumberOfRows()
const {
return _nrows; }
148 inline void setPtr( DataType *ptr,
size_t nColumns,
size_t nRows )
150 _ptr = services::SharedPtr<DataType>(ptr, services::EmptyDeleter());
161 void setPtr(services::SharedPtr<byte> *pPtr, byte *rawPtr,
size_t nColumns,
size_t nRows )
177 inline bool resizeBuffer(
size_t nColumns,
size_t nRows,
size_t auxMemorySize = 0 )
182 size_t newSize = nColumns * nRows *
sizeof(DataType) + auxMemorySize;
184 if ( newSize > _capacity )
187 _buffer = services::SharedPtr<DataType>((DataType *)daal::services::daal_malloc(newSize), services::ServiceDeleter());
204 _aux_ptr = services::SharedPtr<DataType>();
209 _aux_ptr = services::SharedPtr<DataType>(_buffer, _buffer.get() + nColumns * nRows);
221 inline void setDetails(
size_t columnIdx,
size_t rowIdx,
int rwFlag )
223 _colsOffset = columnIdx;
224 _rowsOffset = rowIdx;
232 inline size_t getColumnsOffset()
const {
return _colsOffset; }
238 inline size_t getRowsOffset()
const {
return _rowsOffset; }
244 inline size_t getRWFlag()
const {
return _rwFlag; }
250 inline void *getAdditionalBufferPtr()
const {
return _aux_ptr.get(); }
251 inline services::SharedPtr<DataType> getAdditionalBufferSharedPtr()
const {
return _aux_ptr; }
261 _buffer = services::SharedPtr<DataType>();
267 services::SharedPtr<DataType> _ptr;
275 services::SharedPtr<DataType> _aux_ptr;
277 services::SharedPtr<DataType> _buffer;
280 services::SharedPtr<byte> *_pPtr;
289 class NumericTableIface
292 virtual ~NumericTableIface()
320 enum BasicStatisticsId
332 enum FeatureBasicStatistics
341 enum NormalizationType
344 standardScoreNormalized = 1,
357 upperPackedSymmetricMatrix = 1 << 8,
358 lowerPackedSymmetricMatrix = 2 << 8,
359 upperPackedTriangularMatrix = 1 << 7,
360 lowerPackedTriangularMatrix = 4 << 8,
362 layout_unknown = 0x80000000
370 DAAL_DEPRECATED_VIRTUAL
virtual services::Status setDictionary( NumericTableDictionary *ddict ) {
return services::Status(); }
377 DAAL_DEPRECATED_VIRTUAL
virtual NumericTableDictionary *getDictionary()
const = 0;
383 virtual NumericTableDictionaryPtr getDictionarySharedPtr()
const = 0;
389 DAAL_DEPRECATED_VIRTUAL
virtual services::Status resetDictionary() {
return services::Status(); }
396 virtual data_feature_utils::FeatureType getFeatureType(
size_t feature_idx)
const = 0;
403 virtual size_t getNumberOfCategories(
size_t feature_idx)
const = 0;
409 virtual StorageLayout getDataLayout()
const = 0;
414 virtual services::Status resize(
size_t nrows) = 0;
422 DAAL_DEPRECATED_VIRTUAL
virtual services::Status setNumberOfColumns(
size_t ncol) = 0;
430 DAAL_DEPRECATED_VIRTUAL
virtual services::Status setNumberOfRows(
size_t nrow) = 0;
436 DAAL_DEPRECATED_VIRTUAL
virtual services::Status allocateDataMemory(daal::MemType type = daal::dram) = 0;
442 DAAL_DEPRECATED_VIRTUAL
virtual void freeDataMemory() = 0;
447 virtual services::Status allocateBasicStatistics() = 0;
455 virtual services::Status check(
const char *description,
bool checkDataAllocation =
true)
const = 0;
459 using interface1::BlockDescriptor;
460 using interface1::NumericTableIface;
462 const int packed_mask = (int)NumericTableIface::csrArray |
463 (
int)NumericTableIface::upperPackedSymmetricMatrix |
464 (int)NumericTableIface::lowerPackedSymmetricMatrix |
465 (
int)NumericTableIface::upperPackedTriangularMatrix |
466 (int)NumericTableIface::lowerPackedTriangularMatrix;
475 class DenseNumericTableIface
478 virtual ~DenseNumericTableIface()
490 virtual services::Status getBlockOfRows(
size_t vector_idx,
size_t vector_num, ReadWriteMode rwflag, BlockDescriptor<double> &block) = 0;
502 virtual services::Status getBlockOfRows(
size_t vector_idx,
size_t vector_num, ReadWriteMode rwflag, BlockDescriptor<float> &block) = 0;
514 virtual services::Status getBlockOfRows(
size_t vector_idx,
size_t vector_num, ReadWriteMode rwflag, BlockDescriptor<int> &block) = 0;
520 virtual services::Status releaseBlockOfRows(BlockDescriptor<double> &block) = 0;
526 virtual services::Status releaseBlockOfRows(BlockDescriptor<float> &block) = 0;
532 virtual services::Status releaseBlockOfRows(BlockDescriptor<int> &block) = 0;
545 virtual services::Status getBlockOfColumnValues(
size_t feature_idx,
size_t vector_idx,
size_t value_num,
546 ReadWriteMode rwflag, BlockDescriptor<double> &block) = 0;
559 virtual services::Status getBlockOfColumnValues(
size_t feature_idx,
size_t vector_idx,
size_t value_num,
560 ReadWriteMode rwflag, BlockDescriptor<float> &block) = 0;
573 virtual services::Status getBlockOfColumnValues(
size_t feature_idx,
size_t vector_idx,
size_t value_num,
574 ReadWriteMode rwflag, BlockDescriptor<int> &block) = 0;
580 virtual services::Status releaseBlockOfColumnValues(BlockDescriptor<double> &block) = 0;
586 virtual services::Status releaseBlockOfColumnValues(BlockDescriptor<float> &block) = 0;
592 virtual services::Status releaseBlockOfColumnValues(BlockDescriptor<int> &block) = 0;
600 class DAAL_EXPORT NumericTable :
public SerializationIface,
public NumericTableIface,
public DenseNumericTableIface
603 DAAL_CAST_OPERATOR(NumericTable);
610 DAAL_DEPRECATED NumericTable( NumericTableDictionary *ddict )
613 _ddict = NumericTableDictionaryPtr(ddict, services::EmptyDeleter());
614 _layout = layout_unknown;
615 _memStatus = notAllocated;
616 _normalizationFlag = NumericTable::nonNormalized;
623 NumericTable( NumericTableDictionaryPtr ddict )
627 _layout = layout_unknown;
628 _memStatus = notAllocated;
629 _normalizationFlag = NumericTable::nonNormalized;
638 NumericTable(
size_t featnum,
size_t obsnum, DictionaryIface::FeaturesEqual featuresEqual = DictionaryIface::notEqual )
641 _ddict = NumericTableDictionaryPtr(
new NumericTableDictionary(featnum, featuresEqual));
642 _layout = layout_unknown;
643 _memStatus = notAllocated;
644 _normalizationFlag = NumericTable::nonNormalized;
648 virtual ~NumericTable() {}
650 DAAL_DEPRECATED_VIRTUAL
virtual services::Status setDictionary( NumericTableDictionary *ddict ) DAAL_C11_OVERRIDE
652 _ddict = NumericTableDictionaryPtr(ddict, services::EmptyDeleter());
653 return services::Status();
656 DAAL_DEPRECATED_VIRTUAL
virtual NumericTableDictionary *getDictionary() const DAAL_C11_OVERRIDE {
return _ddict.get(); }
658 virtual NumericTableDictionaryPtr getDictionarySharedPtr() const DAAL_C11_OVERRIDE {
return _ddict; }
660 DAAL_DEPRECATED_VIRTUAL
virtual services::Status resetDictionary() DAAL_C11_OVERRIDE {
return services::Status(); }
662 virtual services::Status resize(
size_t nrows) DAAL_C11_OVERRIDE
664 size_t obsnum = _obsnum;
665 services::Status s = setNumberOfRowsImpl(nrows);
666 if((_memStatus != userAllocated && obsnum < nrows) || _memStatus == notAllocated)
668 s |= allocateDataMemoryImpl();
677 size_t getNumberOfColumns()
const 679 return _ddict->getNumberOfFeatures();
686 size_t getNumberOfRows()
const {
return _obsnum; }
688 DAAL_DEPRECATED_VIRTUAL services::Status setNumberOfColumns(
size_t ncol) DAAL_C11_OVERRIDE
690 return setNumberOfColumnsImpl(ncol);
693 DAAL_DEPRECATED_VIRTUAL services::Status setNumberOfRows(
size_t nrow) DAAL_C11_OVERRIDE
695 return setNumberOfRowsImpl(nrow);
698 DAAL_DEPRECATED_VIRTUAL services::Status allocateDataMemory(daal::MemType type = daal::dram) DAAL_C11_OVERRIDE
700 return allocateDataMemoryImpl(type);
703 DAAL_DEPRECATED_VIRTUAL
void freeDataMemory() DAAL_C11_OVERRIDE
705 freeDataMemoryImpl();
708 StorageLayout getDataLayout() const DAAL_C11_OVERRIDE
713 data_feature_utils::FeatureType getFeatureType(
size_t feature_idx)
const DAAL_C11_OVERRIDE
715 if ( _ddict.get() != NULL && _ddict->getNumberOfFeatures() > feature_idx )
717 const NumericTableFeature &f = (*_ddict)[feature_idx];
718 return f.featureType;
723 return data_feature_utils::DAAL_CONTINUOUS;
727 size_t getNumberOfCategories(
size_t feature_idx)
const DAAL_C11_OVERRIDE
729 if ( _ddict.get() != NULL && _ddict->getNumberOfFeatures() > feature_idx &&
730 getFeatureType(feature_idx) != data_feature_utils::DAAL_CONTINUOUS )
732 const NumericTableFeature &f = (*_ddict)[feature_idx];
733 return f.categoryNumber;
745 virtual MemoryStatus getDataMemoryStatus()
const {
return _memStatus; }
752 bool isNormalized(NormalizationType flag)
const 754 return (_normalizationFlag == flag);
762 NormalizationType setNormalizationFlag(NormalizationType flag)
764 NormalizationType oldValue = _normalizationFlag;
765 _normalizationFlag = flag;
774 DAAL_DEPRECATED services::SharedPtr<services::KernelErrorCollection> getErrors()
776 return _status.getCollection()->getErrors();
782 virtual services::Status allocateBasicStatistics() DAAL_C11_OVERRIDE;
787 virtual services::Status check(
const char *description,
bool checkDataAllocation =
true) const DAAL_C11_OVERRIDE
789 if (getDataMemoryStatus() == notAllocated && checkDataAllocation)
791 return services::Status(services::Error::create(services::ErrorNullNumericTable, services::ArgumentName, description));
794 if (getNumberOfColumns() == 0)
796 return services::Status(services::Error::create(services::ErrorIncorrectNumberOfColumns, services::ArgumentName, description));
799 if (getNumberOfRows() == 0 && getDataMemoryStatus() != notAllocated)
801 return services::Status(services::Error::create(services::ErrorIncorrectNumberOfRows, services::ArgumentName, description));
804 return services::Status();
811 virtual services::Status assign(
float value) {
return assignImpl<float>(value);}
817 virtual services::Status assign(
double value) {
return assignImpl<double>(value);}
823 virtual services::Status assign(
int value) {
return assignImpl<int>(value);}
831 template <
typename DataType>
832 DataType getValue(
size_t column,
size_t row)
const 834 services::Status status;
835 return getValueImpl<DataType>(column, row, status);
845 template <
typename DataType>
846 DataType getValue(
size_t column,
size_t row, services::Status & status)
const 848 return getValueImpl<DataType>(column, row, status);
856 class BasicStatisticsDataCollection :
public algorithms::Argument
859 BasicStatisticsDataCollection() : algorithms::Argument(4) {}
861 services::SharedPtr<NumericTable>
get(BasicStatisticsId id)
863 return services::staticPointerCast<NumericTable, SerializationIface>(Argument::get(
id));
866 void set(BasicStatisticsId id,
const services::SharedPtr<NumericTable> &value)
868 Argument::set(
id, value);
872 BasicStatisticsDataCollection basicStatistics;
875 NumericTableDictionaryPtr _ddict;
879 MemoryStatus _memStatus;
880 StorageLayout _layout;
882 NormalizationType _normalizationFlag;
884 services::Status _status;
888 NumericTable(NumericTableDictionaryPtr ddict, services::Status &st) :
889 _obsnum(0), _ddict(ddict), _layout(layout_unknown), _memStatus(notAllocated), _normalizationFlag(NumericTable::nonNormalized)
893 NumericTable(
size_t featnum,
size_t obsnum, DictionaryIface::FeaturesEqual featuresEqual, services::Status &st):
894 _obsnum(obsnum), _layout(layout_unknown), _memStatus(notAllocated), _normalizationFlag(NumericTable::nonNormalized)
896 _ddict = NumericTableDictionary::create(featnum, featuresEqual, &st);
900 virtual services::Status setNumberOfColumnsImpl(
size_t ncol)
902 return _ddict->setNumberOfFeatures(ncol);
905 virtual services::Status setNumberOfRowsImpl(
size_t nrow)
908 return services::Status();
911 virtual services::Status allocateDataMemoryImpl(daal::MemType type = daal::dram) {
return services::Status(); }
913 virtual void freeDataMemoryImpl() {}
915 template <
typename DataType>
916 DataType getValueImpl(
size_t column,
size_t row, services::Status & status)
const 918 const DataType defaultValue = 0;
921 BlockDescriptor<DataType> bd;
922 status |=
const_cast<NumericTable *
>(
this)->getBlockOfColumnValues(column, row, 1, readOnly, bd);
925 const DataType v = *(bd.getBlockPtr());
926 status |=
const_cast<NumericTable *
>(
this)->releaseBlockOfColumnValues(bd);
930 virtual float getFloatValueImpl(
size_t column,
size_t row, services::Status & status)
const 932 return getValueImpl<float>(column, row, status);
935 virtual double getDoubleValueImpl(
size_t column,
size_t row, services::Status & status)
const 937 return getValueImpl<double>(column, row, status);
940 virtual int getIntValueImpl(
size_t column,
size_t row, services::Status & status)
const 942 return getValueImpl<int>(column, row, status);
946 template<
typename Archive,
bool onDeserialize>
947 services::Status serialImpl( Archive *arch )
949 arch->setSharedPtrObj( _ddict );
951 arch->set( _obsnum );
955 _memStatus = notAllocated;
958 arch->set( _layout );
960 return services::Status();
964 template <
typename T>
965 services::Status assignImpl(T value)
967 size_t nRows = getNumberOfRows();
968 size_t nCols = getNumberOfColumns();
969 BlockDescriptor<T> block;
970 DAAL_CHECK(getBlockOfRows(0, nRows, writeOnly, block), services::ErrorMemoryAllocationFailed)
971 T* array = block.getBlockSharedPtr().get();
972 for(
size_t i = 0; i < nCols * nRows; i++) {array[i] = value;}
973 releaseBlockOfRows(block);
974 return services::Status();
977 typedef services::SharedPtr<NumericTable> NumericTablePtr;
978 typedef services::SharedPtr<const NumericTable> NumericTableConstPtr;
981 inline float NumericTable::getValue<float>(
size_t column,
size_t row)
const 983 services::Status status;
984 return getFloatValueImpl(column, row, status);
988 inline double NumericTable::getValue<double>(
size_t column,
size_t row)
const 990 services::Status status;
991 return getDoubleValueImpl(column, row, status);
995 inline int NumericTable::getValue<int>(
size_t column,
size_t row)
const 997 services::Status status;
998 return getIntValueImpl(column, row, status);
1002 inline float NumericTable::getValue<float>(
size_t column,
size_t row, services::Status & status)
const 1004 return getFloatValueImpl(column, row, status);
1008 inline double NumericTable::getValue<double>(
size_t column,
size_t row, services::Status & status)
const 1010 return getDoubleValueImpl(column, row, status);
1014 inline int NumericTable::getValue<int>(
size_t column,
size_t row, services::Status & status)
const 1016 return getIntValueImpl(column, row, status);
1022 using interface1::DenseNumericTableIface;
1023 using interface1::NumericTable;
1024 using interface1::NumericTablePtr;
1025 using interface1::NumericTableConstPtr;
1040 DAAL_EXPORT services::Status checkNumericTable(
const NumericTable *nt,
const char *description,
1041 const int unexpectedLayouts = 0,
const int expectedLayouts = 0,
size_t nColumns = 0,
size_t nRows = 0,
1042 bool checkDataAllocation =
true);
1049 template<
typename DataType>
1050 DAAL_EXPORT daal::data_management::NumericTablePtr convertToHomogen(NumericTable &src, daal::MemType type = daal::dram);
daal::data_management::interface1::NumericTableIface::AllocationFlag
AllocationFlag
Enumeration to specify whether the Numeric Table must allocate memory.
Definition: numeric_table.h:309
daal::data_management::interface1::BlockDescriptor::freeBuffer
void freeBuffer()
Definition: numeric_table.h:257
daal::data_management::interface1::NumericTableIface::notAllocated
Definition: numeric_table.h:300
daal::services::interface1::Status
Class that holds the results of API calls. In case of API routine failure it contains the list of err...
Definition: error_handling.h:491
daal
Definition: algorithm_base_common.h:57
daal::data_management::interface1::NumericTable::NumericTable
NumericTable(NumericTableDictionaryPtr ddict)
Definition: numeric_table.h:623
daal::data_management::interface1::NumericTable::assign
virtual services::Status assign(double value)
Definition: numeric_table.h:817
daal::data_management::interface1::NumericTable::getValue
DataType getValue(size_t column, size_t row, services::Status &status) const
Definition: numeric_table.h:846
daal::data_management::interface1::NumericTableIface::NormalizationType
NormalizationType
Enumeration to specify types of normalization.
Definition: numeric_table.h:341
daal::data_management::interface1::NumericTable::isNormalized
bool isNormalized(NormalizationType flag) const
Definition: numeric_table.h:752
daal::data_management::convertToHomogen
DAAL_EXPORT daal::data_management::NumericTablePtr convertToHomogen(NumericTable &src, daal::MemType type=daal::dram)
daal::data_management::interface1::NumericTable::getNumberOfCategories
size_t getNumberOfCategories(size_t feature_idx) const DAAL_C11_OVERRIDE
Definition: numeric_table.h:727
daal::data_management::interface1::NumericTable::getValue
DataType getValue(size_t column, size_t row) const
Definition: numeric_table.h:832
daal::data_management::interface1::NumericTable::getDictionarySharedPtr
virtual NumericTableDictionaryPtr getDictionarySharedPtr() const DAAL_C11_OVERRIDE
Definition: numeric_table.h:658
daal::services::ErrorIncorrectNumberOfColumns
Definition: error_indexes.h:140
daal::algorithms::low_order_moments::maximum
Definition: low_order_moments_types.h:114
daal::services::ErrorMemoryAllocationFailed
Definition: error_indexes.h:172
daal::dram
Definition: daal_defines.h:159
daal::data_management::interface1::BlockDescriptor::getBlockPtr
DataType * getBlockPtr() const
Definition: numeric_table.h:95
daal::algorithms::low_order_moments::minimum
Definition: low_order_moments_types.h:113
daal::data_management::interface1::NumericTable::assign
virtual services::Status assign(float value)
Definition: numeric_table.h:811
daal::data_management::interface1::NumericTableIface::userAllocated
Definition: numeric_table.h:301
daal::data_management::interface1::NumericTableIface::FeatureBasicStatistics
FeatureBasicStatistics
Enumeration to specify feature-specific estimates of basic statistics stored.
Definition: numeric_table.h:332
daal::data_management::interface1::NumericTable::BasicStatisticsDataCollection
Basic statistics for each column of original Numeric Table.
Definition: numeric_table.h:856
daal::data_management::interface1::BlockDescriptor::resizeBuffer
bool resizeBuffer(size_t nColumns, size_t nRows, size_t auxMemorySize=0)
Definition: numeric_table.h:177
daal::data_management::interface1::BlockDescriptor::setPtr
void setPtr(services::SharedPtr< byte > *pPtr, byte *rawPtr, size_t nColumns, size_t nRows)
Definition: numeric_table.h:161
daal::data_management::interface1::NumericTable::assign
virtual services::Status assign(int value)
Definition: numeric_table.h:823
daal::algorithms::low_order_moments::sumSquares
Definition: low_order_moments_types.h:116
daal::data_management::interface1::BlockDescriptor::getAdditionalBufferPtr
void * getAdditionalBufferPtr() const
Definition: numeric_table.h:250
daal::data_management::interface1::NumericTable::setNormalizationFlag
NormalizationType setNormalizationFlag(NormalizationType flag)
Definition: numeric_table.h:762
daal::services::interface1::SharedPtr
Shared pointer that retains shared ownership of an object through a pointer. Several SharedPtr object...
Definition: daal_shared_ptr.h:187
daal::algorithms::covariance::sum
Definition: covariance_types.h:104
daal::data_management::interface1::NumericTableIface::nonNormalized
Definition: numeric_table.h:343
daal::services::daal_malloc
DAAL_EXPORT void * daal_malloc(size_t size, size_t alignment=DAAL_MALLOC_DEFAULT_ALIGNMENT)
daal::data_management::interface1::NumericTableIface::MemoryStatus
MemoryStatus
Enumeration to specify the status of memory related to the Numeric Table.
Definition: numeric_table.h:298
daal::services::interface1::SharedPtr::get
T * get() const
Definition: daal_shared_ptr.h:332
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::NumericTableIface::StorageLayout
StorageLayout
Storage layouts that may need to be supported.
Definition: numeric_table.h:352
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::BlockDescriptor::getNumberOfColumns
size_t getNumberOfColumns() const
Definition: numeric_table.h:121
daal::data_management::checkNumericTable
DAAL_EXPORT services::Status checkNumericTable(const NumericTable *nt, const char *description, const int unexpectedLayouts=0, const int expectedLayouts=0, size_t nColumns=0, size_t nRows=0, bool checkDataAllocation=true)
daal::data_management::interface1::NumericTable::getDataMemoryStatus
virtual MemoryStatus getDataMemoryStatus() const
Definition: numeric_table.h:745
daal::data_management::interface1::BlockDescriptor::getRWFlag
size_t getRWFlag() const
Definition: numeric_table.h:244
daal::data_management::interface1::NumericTable::_ddict
NumericTableDictionaryPtr _ddict
Definition: numeric_table.h:875
daal::services::interface1::ServiceDeleter
Implementation of DeleterIface to destroy a pointer by the daal_free function.
Definition: daal_shared_ptr.h:110
daal::data_management::interface1::NumericTableIface::BasicStatisticsId
BasicStatisticsId
Enumeration to specify estimates of basic statistics stored.
Definition: numeric_table.h:320
daal::data_management::interface1::NumericTable::NumericTable
NumericTable(size_t featnum, size_t obsnum, DictionaryIface::FeaturesEqual featuresEqual=DictionaryIface::notEqual)
Definition: numeric_table.h:638
daal::services::interface1::Error::create
static SharedPtr< Error > create(ErrorID id)
daal::data_management::interface1::NumericTable::getFeatureType
data_feature_utils::FeatureType getFeatureType(size_t feature_idx) const DAAL_C11_OVERRIDE
Definition: numeric_table.h:713
daal::data_management::interface1::NumericTable::getNumberOfRows
size_t getNumberOfRows() const
Definition: numeric_table.h:686
daal::data_management::interface1::BlockDescriptor::reset
void reset()
Definition: numeric_table.h:132
daal::services::ErrorIncorrectNumberOfRows
Definition: error_indexes.h:141
daal::data_management::interface1::BlockDescriptor::getColumnsOffset
size_t getColumnsOffset() const
Definition: numeric_table.h:232
daal::data_management::interface1::BlockDescriptor
Base class that manages buffer memory for read/write operations required by numeric tables...
Definition: numeric_table.h:81
daal::data_management::interface1::DenseNumericTableIface
Abstract interface class for a data management component responsible for accessing data in the numeri...
Definition: numeric_table.h:475
daal::data_management::interface1::NumericTable::check
virtual services::Status check(const char *description, bool checkDataAllocation=true) const DAAL_C11_OVERRIDE
Definition: numeric_table.h:787
daal::algorithms::math::abs::value
Definition: abs_types.h:112
daal::data_management::interface1::NumericTable::getNumberOfColumns
size_t getNumberOfColumns() const
Definition: numeric_table.h:677
daal::data_management::interface1::BlockDescriptor::getNumberOfRows
size_t getNumberOfRows() const
Definition: numeric_table.h:127
daal::data_management::interface1::NumericTable::getDataLayout
StorageLayout getDataLayout() const DAAL_C11_OVERRIDE
Definition: numeric_table.h:708
daal::data_management::interface1::Dictionary::create
static services::SharedPtr< Dictionary > create(size_t nfeat, FeaturesEqual featuresEqual=notEqual, services::Status *stat=NULL)
Definition: data_dictionary.h:209
daal::services::ErrorNullNumericTable
Definition: error_indexes.h:139
daal::data_management::interface1::BlockDescriptor::setDetails
void setDetails(size_t columnIdx, size_t rowIdx, int rwFlag)
Definition: numeric_table.h:221
daal::algorithms::interface1::Argument
Base class to represent computation input and output arguments.
Definition: algorithm_types.h:100
daal::data_management::interface1::NumericTableIface
Abstract interface class for a data management component responsible for representation of data in th...
Definition: numeric_table.h:289
daal::data_management::interface1::BlockDescriptor::getBlockSharedPtr
services::SharedPtr< DataType > getBlockSharedPtr() const
Definition: numeric_table.h:108
daal::data_management::interface1::BlockDescriptor::setPtr
void setPtr(DataType *ptr, size_t nColumns, size_t nRows)
Definition: numeric_table.h:148
daal::services::interface1::EmptyDeleter
Implementation of DeleterIface without pointer destroying.
Definition: daal_shared_ptr.h:125
daal::data_management::interface1::BlockDescriptor::getRowsOffset
size_t getRowsOffset() const
Definition: numeric_table.h:238
daal::data_management::interface1::SerializationIface
Abstract interface class that defines the interface for serialization and deserialization.
Definition: data_serialize.h:76
daal::data_management::interface1::NumericTableFeature
Data structure describes the Numeric Table feature.
Definition: data_dictionary.h:74
daal::services::ArgumentName
Definition: error_indexes.h:76
daal::MemType
MemType
Definition: daal_defines.h:157
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