Skip to main content

System Coupling C++ library 2024 R2

sysc::InputVectorData Class Reference

Last update: 17.07.2025

Provide a class for input vector data. More...

#include <InputVectorData.hpp>

Public Member Functions

 InputVectorData (double *data, std::size_t size)
 Provide a constructor for input vector data with compact storage.
 
 InputVectorData (double *data, std::size_t size, Dimension dimension)
 Provide a constructor for 2D output vector data with compact storage.
 
 InputVectorData (float *data, std::size_t size)
 Provide a constructor for input vector data with compact storage.
 
 InputVectorData (float *data, std::size_t size, Dimension dimension)
 Provide a constructor for 2D output vector data with compact storage.
 
 InputVectorData (std::vector< double > &data)
 Provide a constructor for input vector data with compact storage.
 
 InputVectorData (std::vector< double > &data, Dimension dimension)
 Provide a constructor for 2D output vector data with compact storage.
 
 InputVectorData (std::vector< float > &data)
 Provide a constructor for input vector data with compact storage.
 
 InputVectorData (std::vector< float > &data, Dimension dimension)
 Provide a constructor for 2D output vector data with compact storage.
 
 InputVectorData (double *data0, double *data1, double *data2, std::size_t size)
 Create an input vector data access object with split storage.
 
 InputVectorData (double *data0, double *data1, std::size_t size)
 Create an 2D output vector data access object with split storage.
 
 InputVectorData (float *data0, float *data1, float *data2, std::size_t size)
 Create an input vector data access object with split storage.
 
 InputVectorData (float *data0, float *data1, std::size_t size)
 Create an 2D output vector data access object with split storage.
 
 InputVectorData (std::vector< double > &data0, std::vector< double > &data1, std::vector< double > &data2)
 Create an input vector data access object with split storage.
 
 InputVectorData (std::vector< double > &data0, std::vector< double > &data1)
 Create an 2D output vector data access object with split storage.
 
 InputVectorData (std::vector< float > &data0, std::vector< float > &data1, std::vector< float > &data2)
 Create an input vector data access object with split storage.
 
 InputVectorData (std::vector< float > &data0, std::vector< float > &data1)
 Create an 2D output vector data access object with split storage.
 
 InputVectorData ()=default
 Provide a default constructor.
 
 InputVectorData (const InputVectorData &)=default
 Provide a copy-constructor.
 
 InputVectorData (InputVectorData &&)=default
 Provide a move-constructor.
 
InputVectorDataoperator= (const InputVectorData &)=default
 Provide a copy-assign operator.
 
InputVectorDataoperator= (InputVectorData &&)=default
 Provide a move-assign operator.
 
std::size_t size () const noexcept
 Get the size of data.
 
bool empty () const noexcept
 Check if array "data" is empty.
 
sysc::PrimitiveType getDataType () const noexcept
 Get the primitive type of data.
 
bool isSplitVector () const noexcept
 Query whether it's a split or compact vector layout.
 
void * getData0 () const noexcept
 Get pointer to data0.
 
void * getData1 () const noexcept
 Get pointer to data1.
 
void * getData2 () const noexcept
 Get pointer to data2.
 
Dimension getDimension () const noexcept
 Get the Dimension object.
 

Detailed Description

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.

Definition at line 27 of file InputVectorData.hpp.

Constructor & Destructor Documentation

◆ InputVectorData() [1/16]

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.

◆ InputVectorData() [2/16]

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.

◆ InputVectorData() [3/16]

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.

◆ InputVectorData() [4/16]

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.

◆ InputVectorData() [5/16]

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.

◆ InputVectorData() [6/16]

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.

◆ InputVectorData() [7/16]

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.

◆ InputVectorData() [8/16]

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.

◆ InputVectorData() [9/16]

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.

◆ InputVectorData() [10/16]

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.

◆ InputVectorData() [11/16]

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.

◆ InputVectorData() [12/16]

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.

◆ InputVectorData() [13/16]

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.

◆ InputVectorData() [14/16]

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.

◆ InputVectorData() [15/16]

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.

◆ InputVectorData() [16/16]

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.

Member Function Documentation

◆ getData0()

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

Get pointer to data0.

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

◆ getData1()

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

Get pointer to data1.

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

◆ getData2()

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

Get pointer to data2.

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

◆ getDataType()

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

Get the primitive type of data.

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

◆ getDimension()

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

Get the Dimension object.

Returns
const Dimension

References sysc::Double.

◆ 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).

Connect with Ansys