C++ API Reference for Intel® Data Analytics Acceleration Library 2019 Update 5

base_arrow_numeric_table.h
1 /* file: base_arrow_numeric_table.h */
2 /*******************************************************************************
3 * Copyright 2014-2019 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 #ifndef __BASE_ARROW_NUMERIC_TABLE_H__
17 #define __BASE_ARROW_NUMERIC_TABLE_H__
18 
19 #include "data_management/data/numeric_table.h"
20 #include "data_management/data/internal/conversion.h"
21 
22 namespace daal
23 {
24 namespace data_management
25 {
26 namespace interface1
27 {
36 class DAAL_EXPORT ArrowNumericTable : public NumericTable
37 {
38 public:
43  virtual bool isMutable() const = 0;
44 
45 protected:
46  ArrowNumericTable(size_t featnum, size_t obsnum, services::Status & st)
47  : NumericTable(featnum, obsnum, DictionaryIface::notEqual, st) {}
48 };
49 typedef services::SharedPtr<ArrowNumericTable> ArrowNumericTablePtr;
50 
55 class DAAL_EXPORT BaseArrowImmutableNumericTable : public ArrowNumericTable
56 {
57  DECLARE_SERIALIZABLE_TAG();
58 
59 public:
60  bool isMutable() const DAAL_C11_OVERRIDE { return false; }
61 
62 protected:
63  BaseArrowImmutableNumericTable(size_t featnum, size_t obsnum, services::Status & st) : ArrowNumericTable(featnum, obsnum, st) {}
64 };
65 typedef services::SharedPtr<BaseArrowImmutableNumericTable> BaseArrowImmutableNumericTablePtr;
66 
68 } // namespace interface1
69 
70 using interface1::ArrowNumericTable;
71 using interface1::ArrowNumericTablePtr;
72 using interface1::BaseArrowImmutableNumericTable;
73 using interface1::BaseArrowImmutableNumericTablePtr;
74 
75 } // namespace data_management
76 } // namespace daal
77 
78 #endif
daal
Definition: algorithm_base_common.h:31
daal::data_management::interface1::ArrowNumericTable
Base class that provides methods to access data stored as a Apache Arrow table.
Definition: base_arrow_numeric_table.h:36
daal::data_management::interface1::BaseArrowImmutableNumericTable
Base class that provides methods to access data stored as a immutable Apache Arrow table...
Definition: base_arrow_numeric_table.h:55
daal::data_management::interface1::NumericTable
Class for a data management component responsible for representation of data in the numeric format...
Definition: numeric_table.h:575
daal::data_management::interface1::BaseArrowImmutableNumericTable::isMutable
bool isMutable() const DAAL_C11_OVERRIDE
Definition: base_arrow_numeric_table.h:60

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