Skip to main content

Class sysc::InputVectorData

Definition: InputVectorData.hpp (line 27)

Provide a class for input vector data.

Input vector data provides read and write access to an array of vector data.

The size is the total number of vectors, not the total number of components, i.e. if all data is stored in one contiguous array, then size is 1/3 the size of that array.

Members

Private attributes

Variable m_dataType

Definition: InputVectorData.hpp (line 268)

sysc::PrimitiveType sysc::InputVectorData::m_dataType {sysc::Double}

Type: sysc::PrimitiveType

Variable m_isSplitVector

Definition: InputVectorData.hpp (line 269)

bool sysc::InputVectorData::m_isSplitVector {false}

Type: bool

Variable m_data0

Definition: InputVectorData.hpp (line 270)

void* sysc::InputVectorData::m_data0 {nullptr}

Type: void *

Variable m_data1

Definition: InputVectorData.hpp (line 271)

void* sysc::InputVectorData::m_data1 {nullptr}

Type: void *

Variable m_data2

Definition: InputVectorData.hpp (line 272)

void* sysc::InputVectorData::m_data2 {nullptr}

Type: void *

Variable m_size

Definition: InputVectorData.hpp (line 273)

std::size_t sysc::InputVectorData::m_size {0}

Type: std::size_t

Variable m_dimension

Definition: InputVectorData.hpp (line 274)

Dimension sysc::InputVectorData::m_dimension {Dimension::D3}

Type: Dimension

Public functions

Function InputVectorData

sysc::InputVectorData::InputVectorData(double *data, std::size_t size)

Provide a constructor for input vector data with compact storage.

Parameters:

  • data: - pointer to the array of double-precision data.
  • size: - number of vectors.

Parameters:

  • double * data
  • std::size_t size

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(double *data, std::size_t size, Dimension dimension)

Provide a constructor for 2D output vector data with compact storage.

Parameters:

  • data: - pointer to the array of double-precision data.
  • size: - number of vectors.
  • dimension: - dimension of double-precision vector data.

Parameters:

  • double * data
  • std::size_t size
  • Dimension dimension

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(float *data, std::size_t size)

Provide a constructor for input vector data with compact storage.

Parameters:

  • data: - pointer to the array of single-precision data.
  • size: - number of vectors.

Parameters:

  • float * data
  • std::size_t size

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(float *data, std::size_t size, Dimension dimension)

Provide a constructor for 2D output vector data with compact storage.

Parameters:

  • data: - pointer to the array of single-precision data.
  • size: - number of vectors.
  • dimension: - dimension of single-precision vector data.

Parameters:

  • float * data
  • std::size_t size
  • Dimension dimension

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(std::vector< double > &data)

Provide a constructor for input vector data with compact storage.

Parameters:

  • data: - reference to the STL vector of double-precision data.

Parameters:

  • std::vector< double > & data

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(std::vector< double > &data, Dimension dimension)

Provide a constructor for 2D output vector data with compact storage.

Parameters:

  • data: - reference to the STL vector of double-precision data.
  • dimension: - dimension of double-precision vector data.

Parameters:

  • std::vector< double > & data
  • Dimension dimension

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(std::vector< float > &data)

Provide a constructor for input vector data with compact storage.

Parameters:

  • data: - reference to the STL vector of single-precision data.

Parameters:

  • std::vector< float > & data

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(std::vector< float > &data, Dimension dimension)

Provide a constructor for 2D output vector data with compact storage.

Parameters:

  • data: - reference to the STL vector of single-precision data.
  • dimension: - dimension of single-precision vector data.

Parameters:

  • std::vector< float > & data
  • Dimension dimension

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(double *data0, double *data1, double *data2, std::size_t size)

Create an input vector data access object with split storage.

Parameters:

  • data0: - pointer to the first array of double-precision data.
  • data1: - pointer to the second array of double-precision data.
  • data2: - pointer to the third array of double-precision data.
  • size: - number of vectors.

Parameters:

  • double * data0
  • double * data1
  • double * data2
  • std::size_t size

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(double *data0, double *data1, std::size_t size)

Create an 2D output vector data access object with split storage.

Parameters:

  • data0: - pointer to the first array of double-precision data.
  • data1: - pointer to the second array of double-precision data.
  • size: - number of vectors.

Parameters:

  • double * data0
  • double * data1
  • std::size_t size

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(float *data0, float *data1, float *data2, std::size_t size)

Create an input vector data access object with split storage.

Parameters:

  • data0: - pointer to the first array of single-precision data.
  • data1: - pointer to the second array of single-precision data.
  • data2: - pointer to the third array of single-precision data.
  • size: - number of vectors.

Parameters:

  • float * data0
  • float * data1
  • float * data2
  • std::size_t size

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(float *data0, float *data1, std::size_t size)

Create an 2D output vector data access object with split storage.

Parameters:

  • data0: - pointer to the first array of single-precision data.
  • data1: - pointer to the second array of single-precision data.
  • size: - number of vectors.

Parameters:

  • float * data0
  • float * data1
  • std::size_t size

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(std::vector< double > &data0, std::vector< double > &data1, std::vector< double > &data2)

Create an input vector data access object with split storage.

Parameters:

  • data0: - reference to the first STL vector of double-precision data.
  • data1: - reference to the second STL vector of double-precision data.
  • data2: - reference to the third STL vector of double-precision data.

Parameters:

  • std::vector< double > & data0
  • std::vector< double > & data1
  • std::vector< double > & data2

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(std::vector< double > &data0, std::vector< double > &data1)

Create an 2D output vector data access object with split storage.

Parameters:

  • data0: - reference to the first STL vector of double-precision data.
  • data1: - reference to the second STL vector of double-precision data.

Parameters:

  • std::vector< double > & data0
  • std::vector< double > & data1

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(std::vector< float > &data0, std::vector< float > &data1, std::vector< float > &data2)

Create an input vector data access object with split storage.

Parameters:

  • data0: - reference to the first STL vector of single-precision data.
  • data1: - reference to the second STL vector of single-precision data.
  • data2: - reference to the third STL vector of single-precision data.

Parameters:

  • std::vector< float > & data0
  • std::vector< float > & data1
  • std::vector< float > & data2

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(std::vector< float > &data0, std::vector< float > &data1)

Create an 2D output vector data access object with split storage.

Parameters:

  • data0: - reference to the first STL vector of single-precision data.
  • data1: - reference to the second STL vector of single-precision data.

Parameters:

  • std::vector< float > & data0
  • std::vector< float > & data1

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData()=default

Provide a default constructor.

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(const InputVectorData &)=default

Provide a copy-constructor.

Parameters:

Return type:

Function InputVectorData

sysc::InputVectorData::InputVectorData(InputVectorData &&)=default

Provide a move-constructor.

Parameters:

Return type:

Function operator=

InputVectorData& sysc::InputVectorData::operator=(const InputVectorData &)=default

Provide a copy-assign operator.

Parameters:

Return type: InputVectorData &

Function operator=

InputVectorData& sysc::InputVectorData::operator=(InputVectorData &&)=default

Provide a move-assign operator.

Parameters:

Return type: InputVectorData &

Function size

std::size_t sysc::InputVectorData::size() const noexcept

Get the size of data.

Return type: std::size_t

Function empty

bool sysc::InputVectorData::empty() const noexcept

Check if array "data" is empty.

Return type: bool

Function getDataType

sysc::PrimitiveType sysc::InputVectorData::getDataType() const noexcept

Get the primitive type of data.

For internal use only (no back-compatibility guarantee).

Return type: sysc::PrimitiveType

Function isSplitVector

bool sysc::InputVectorData::isSplitVector() const noexcept

Query whether it's a split or compact vector layout.

For internal use only (no back-compatibility guarantee).

Return type: bool

Function getData0

void* sysc::InputVectorData::getData0() const noexcept

Get pointer to data0.

For internal use only (no back-compatibility guarantee).

Return type: void *

Function getData1

void* sysc::InputVectorData::getData1() const noexcept

Get pointer to data1.

For internal use only (no back-compatibility guarantee).

Return type: void *

Function getData2

void* sysc::InputVectorData::getData2() const noexcept

Get pointer to data2.

For internal use only (no back-compatibility guarantee).

Return type: void *

Function getDimension

Dimension sysc::InputVectorData::getDimension() const noexcept

Get the Dimension object.

Returns:

const Dimension

Return type: Dimension

References: