matlab::data::ArrayType - C++ array type enumeration class - MATLAB (original) (raw)
C++ array type enumeration class
Description
Use ArrayType
objects to identify the data type and other attributes of a MATLABĀ® array.
Class Details
Namespace: | matlab::data |
---|---|
Include: | ArrayType.hpp |
Enumeration
enum class ArrayType { UNKNOWN, LOGICAL, CHAR, DOUBLE, SINGLE, INT8, UINT8, INT16, UINT16, INT32, UINT32, INT64, UINT64, COMPLEX_DOUBLE, COMPLEX_SINGLE, COMPLEX_INT8, COMPLEX_UINT8, COMPLEX_INT16, COMPLEX_UINT16, COMPLEX_INT32, COMPLEX_UINT32, COMPLEX_INT64, COMPLEX_UINT64, CELL, STRUCT, VALUE_OBJECT, HANDLE_OBJECT_REF, ENUM, SPARSE_LOGICAL, SPARSE_DOUBLE, SPARSE_COMPLEX_DOUBLE, MATLAB_STRING };
C++ Data Type Conversion
MATLAB ArrayType Value | C++ Type | Description |
---|---|---|
DOUBLE | double | double-precision (64-bit), floating-point number |
SINGLE | float | single-precision (32-bit), floating-point number |
INT8 | int8_t | signed 8-bit integer |
UINT8 | uint8_t | unsigned 8-bit integer |
INT16 | int16_t | signed 16-bit integer |
UINT16 | uint16_t | unsigned 16-bit integer |
INT32 | int32_t | signed 32-bit integer |
UINT32 | uint32_t | unsigned 32-bit integer |
INT64 | int64_t | signed 64-bit integer |
UINT64 | uint64_t | unsigned 64-bit integer |
CHAR | char16_t | 16-bit character |
LOGICAL | bool | logical |
COMPLEX_DOUBLE | std::complex | complex, double-precision (64-bit), floating-point number |
COMPLEX_SINGLE | std::complex | complex, single precision (32-bit), floating-point number |
COMPLEX_INT8 | std::complex<int8_t> | complex, signed 8-bit integer |
COMPLEX_UINT8 | std::complex<uint8_t> | complex, unsigned 8-bit integer |
COMPLEX_INT16 | std::complex<int16_t> | complex, signed 16-bit integer |
COMPLEX_UINT16 | std::complex<uint16_t> | complex, unsigned 16-bit integer |
COMPLEX_INT32 | std::complex<int32_t> | complex, signed 32-bit integer |
COMPLEX_UINT32 | std::complex<uint32_t> | complex, unsigned 32-bit integer |
COMPLEX_INT64 | std::complex<int64_t> | complex, signed 64-bit integer |
COMPLEX_UINT64 | std::complex<uint64_t> | complex, unsigned 64-bit integer |
CELL | matlab::data::Array | Array containing other Arrays |
STRUCT | matlab::data::Struct | Array with named fields that can contain data of varying types and sizes |
VALUE_OBJECT | matlab::data::Object | MATLAB value object |
HANDLE_OBJECT_REF | matlab::data::Object | Reference to an existing handle object in MATLAB |
ENUM | matlab::data::Enumeration | Array of enumeration values |
SPARSE_LOGICAL | bool | Sparse array of logical |
SPARSE_DOUBLE | double | Sparse array of double |
SPARSE_COMPLEX_DOUBLE | std::complex | Sparse array of complex double |
MATLAB_STRING | matlab::data::MATLABString | MATLAB string |
Examples
Test Array for COMPLEX_DOUBLE
Type
Suppose that you have an array declared as follows.
matlab::data::TypedArray const argArray
After you set values for argArray
, call thesqrt
function.
matlab::data::Array const tresults = matlabPtr->feval(u"sqrt", argArray);
These statements test the result for type COMPLEX_DOUBLE
and then set the array type.
matlab::data::TypedArray<std::complex> results = factory.createEmptyArray(); matlab::data::ArrayType type = tresults.getType(); if (type == matlab::data::ArrayType::COMPLEX_DOUBLE) results = (matlab::data::TypedArray<std::complex>) tresults; else std::cout << "ERROR: complex double array expected." << std::endl;
Version History
Introduced in R2017b