    

 ## On this page

  

 

 # sysc::InputVectorData Class Reference

 Last update: 17.07.2025 

Provide a class for input vector data. [More...](classsysc_1_1InputVectorData.xhtml#details)

`#include <<a class="el" href="InputVectorData_8hpp_source.xhtml">InputVectorData.hpp</a>>`

## <a id="pub-methods" name="pub-methods"></a>Public Member Functions

 [InputVectorData](classsysc_1_1InputVectorData.xhtml#a9576407cff04f685f890b03512a22f8d) (double \*data, std::size\_t [size](classsysc_1_1InputVectorData.xhtml#a421e44762b642930822a119ae59751eb)) Provide a constructor for input vector data with compact storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#a313b74bc43ee9519a03c7351d5a1b9e9) (double \*data, std::size\_t [size](classsysc_1_1InputVectorData.xhtml#a421e44762b642930822a119ae59751eb), [Dimension](group__SystemCouplingParticipantAPIs.xhtml#ga47c8e4142175574918b84d336780cc7c) dimension) Provide a constructor for 2D output vector data with compact storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#a353712571f18e0d9c9113a6279fd4bd9) (float \*data, std::size\_t [size](classsysc_1_1InputVectorData.xhtml#a421e44762b642930822a119ae59751eb)) Provide a constructor for input vector data with compact storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#a2b7ad10e29d9b8f9d5cc19bcb4880852) (float \*data, std::size\_t [size](classsysc_1_1InputVectorData.xhtml#a421e44762b642930822a119ae59751eb), [Dimension](group__SystemCouplingParticipantAPIs.xhtml#ga47c8e4142175574918b84d336780cc7c) dimension) Provide a constructor for 2D output vector data with compact storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#ab859e8fda9352a223489fc9710ebc176) (std::vector&lt; double &gt; &amp;data) Provide a constructor for input vector data with compact storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#a16a3d28c7a9176077b094d0c090ab8e8) (std::vector&lt; double &gt; &amp;data, [Dimension](group__SystemCouplingParticipantAPIs.xhtml#ga47c8e4142175574918b84d336780cc7c) dimension) Provide a constructor for 2D output vector data with compact storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#a93f8cbc6fd62623d017dd402e75ea60e) (std::vector&lt; float &gt; &amp;data) Provide a constructor for input vector data with compact storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#aa49d763df2ced8b08b5f96d0fd581815) (std::vector&lt; float &gt; &amp;data, [Dimension](group__SystemCouplingParticipantAPIs.xhtml#ga47c8e4142175574918b84d336780cc7c) dimension) Provide a constructor for 2D output vector data with compact storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#ae46ff595736820fb92cb12797f05d62a) (double \*data0, double \*data1, double \*data2, std::size\_t [size](classsysc_1_1InputVectorData.xhtml#a421e44762b642930822a119ae59751eb)) Create an input vector data access object with split storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#a34e2f29605de1f3d218f61f305231f37) (double \*data0, double \*data1, std::size\_t [size](classsysc_1_1InputVectorData.xhtml#a421e44762b642930822a119ae59751eb)) Create an 2D output vector data access object with split storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#a6290f72e042d38bee53f671eaeef382b) (float \*data0, float \*data1, float \*data2, std::size\_t [size](classsysc_1_1InputVectorData.xhtml#a421e44762b642930822a119ae59751eb)) Create an input vector data access object with split storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#a5e7ec5d5f55d26d79f5beb5f492e8173) (float \*data0, float \*data1, std::size\_t [size](classsysc_1_1InputVectorData.xhtml#a421e44762b642930822a119ae59751eb)) Create an 2D output vector data access object with split storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#ad682d56f49fc69628ad18410cefad197) (std::vector&lt; double &gt; &amp;data0, std::vector&lt; double &gt; &amp;data1, std::vector&lt; double &gt; &amp;data2) Create an input vector data access object with split storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#a4fdc6e50b3aa55afc3375e9e8a25589f) (std::vector&lt; double &gt; &amp;data0, std::vector&lt; double &gt; &amp;data1) Create an 2D output vector data access object with split storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#a6e884069f0f4f3cb1e58d3ee6894407f) (std::vector&lt; float &gt; &amp;data0, std::vector&lt; float &gt; &amp;data1, std::vector&lt; float &gt; &amp;data2) Create an input vector data access object with split storage.   
  [InputVectorData](classsysc_1_1InputVectorData.xhtml#adeceff37584427f9b487228ed1619ad8) (std::vector&lt; float &gt; &amp;data0, std::vector&lt; float &gt; &amp;data1) Create an 2D output vector data access object with split storage.   
 <a id="aee6e8ae9cc5c83b4f016a68b6825643d" name="aee6e8ae9cc5c83b4f016a68b6825643d"></a> **InputVectorData** ()=default Provide a default constructor.   
 <a id="a9c493ca8719b46214215275adcaf8a6d" name="a9c493ca8719b46214215275adcaf8a6d"></a> **InputVectorData** (const [InputVectorData](classsysc_1_1InputVectorData.xhtml) &amp;)=default Provide a copy-constructor.   
 <a id="adf89794c1d53ceec3ed34f6c4820530b" name="adf89794c1d53ceec3ed34f6c4820530b"></a> **InputVectorData** ([InputVectorData](classsysc_1_1InputVectorData.xhtml) &amp;&amp;)=default Provide a move-constructor.   
 <a id="a0bda3f6d27e251205e1c5b7e99e9f9d8" name="a0bda3f6d27e251205e1c5b7e99e9f9d8"></a>[InputVectorData](classsysc_1_1InputVectorData.xhtml) &amp; **operator=** (const [InputVectorData](classsysc_1_1InputVectorData.xhtml) &amp;)=default Provide a copy-assign operator.   
 <a id="a566537c59f11967283a4fd253649ee9f" name="a566537c59f11967283a4fd253649ee9f"></a>[InputVectorData](classsysc_1_1InputVectorData.xhtml) &amp; **operator=** ([InputVectorData](classsysc_1_1InputVectorData.xhtml) &amp;&amp;)=default Provide a move-assign operator.   
 <a id="a421e44762b642930822a119ae59751eb" name="a421e44762b642930822a119ae59751eb"></a>std::size\_t **size** () const noexcept Get the size of data.   
 <a id="a4ce74ce70cf4f3b150392bc2e622f23e" name="a4ce74ce70cf4f3b150392bc2e622f23e"></a>bool **empty** () const noexcept Check if array "data" is empty.   
 [sysc::PrimitiveType](group__SystemCouplingParticipantAPIs.xhtml#gad3b1c73e4a63f4d292d65f3db875e844) [getDataType](classsysc_1_1InputVectorData.xhtml#a36c2f1ad1395f88faf59a1b6da0db099) () const noexcept Get the primitive type of data.   
 bool [isSplitVector](classsysc_1_1InputVectorData.xhtml#a8b96a950634f0ed4dae6468e88319e53) () const noexcept Query whether it's a split or compact vector layout.   
 void \* [getData0](classsysc_1_1InputVectorData.xhtml#a240b4fe8f40171284dab0e91fea7e473) () const noexcept Get pointer to data0.   
 void \* [getData1](classsysc_1_1InputVectorData.xhtml#ac224fdb63436e849363881e75fa7dd01) () const noexcept Get pointer to data1.   
 void \* [getData2](classsysc_1_1InputVectorData.xhtml#a2d48a4becc9e840618fe6245d1ce9ef0) () const noexcept Get pointer to data2.   
 [Dimension](group__SystemCouplingParticipantAPIs.xhtml#ga47c8e4142175574918b84d336780cc7c) [getDimension](classsysc_1_1InputVectorData.xhtml#a04a85b9650fe4c0b8f4e3ecbad088c52) () const noexcept Get the Dimension object.   
 <a id="details" name="details"></a>## 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](InputVectorData_8hpp_source.xhtml#l00027) of file [InputVectorData.hpp](InputVectorData_8hpp_source.xhtml).



## Constructor &amp; Destructor Documentation

<a id="a9576407cff04f685f890b03512a22f8d" name="a9576407cff04f685f890b03512a22f8d"></a>## [◆ ](#a9576407cff04f685f890b03512a22f8d)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. 



<a id="a313b74bc43ee9519a03c7351d5a1b9e9" name="a313b74bc43ee9519a03c7351d5a1b9e9"></a>## [◆ ](#a313b74bc43ee9519a03c7351d5a1b9e9)InputVectorData() \[2/16\]

 sysc::InputVectorData::InputVectorData  ( double \*  *data*,    std::size\_t  *size*,    [Dimension](group__SystemCouplingParticipantAPIs.xhtml#ga47c8e4142175574918b84d336780cc7c)  *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. 



<a id="a353712571f18e0d9c9113a6279fd4bd9" name="a353712571f18e0d9c9113a6279fd4bd9"></a>## [◆ ](#a353712571f18e0d9c9113a6279fd4bd9)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. 



<a id="a2b7ad10e29d9b8f9d5cc19bcb4880852" name="a2b7ad10e29d9b8f9d5cc19bcb4880852"></a>## [◆ ](#a2b7ad10e29d9b8f9d5cc19bcb4880852)InputVectorData() \[4/16\]

 sysc::InputVectorData::InputVectorData  ( float \*  *data*,    std::size\_t  *size*,    [Dimension](group__SystemCouplingParticipantAPIs.xhtml#ga47c8e4142175574918b84d336780cc7c)  *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. 



<a id="ab859e8fda9352a223489fc9710ebc176" name="ab859e8fda9352a223489fc9710ebc176"></a>## [◆ ](#ab859e8fda9352a223489fc9710ebc176)InputVectorData() \[5/16\]

 sysc::InputVectorData::InputVectorData  ( std::vector&lt; double &gt; &amp;  *data*) 

Provide a constructor for input vector data with compact storage.

Parameters data- reference to the STL vector of double-precision data. 



<a id="a16a3d28c7a9176077b094d0c090ab8e8" name="a16a3d28c7a9176077b094d0c090ab8e8"></a>## [◆ ](#a16a3d28c7a9176077b094d0c090ab8e8)InputVectorData() \[6/16\]

 sysc::InputVectorData::InputVectorData  ( std::vector&lt; double &gt; &amp;  *data*,    [Dimension](group__SystemCouplingParticipantAPIs.xhtml#ga47c8e4142175574918b84d336780cc7c)  *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. 



<a id="a93f8cbc6fd62623d017dd402e75ea60e" name="a93f8cbc6fd62623d017dd402e75ea60e"></a>## [◆ ](#a93f8cbc6fd62623d017dd402e75ea60e)InputVectorData() \[7/16\]

 sysc::InputVectorData::InputVectorData  ( std::vector&lt; float &gt; &amp;  *data*) 

Provide a constructor for input vector data with compact storage.

Parameters data- reference to the STL vector of single-precision data. 



<a id="aa49d763df2ced8b08b5f96d0fd581815" name="aa49d763df2ced8b08b5f96d0fd581815"></a>## [◆ ](#aa49d763df2ced8b08b5f96d0fd581815)InputVectorData() \[8/16\]

 sysc::InputVectorData::InputVectorData  ( std::vector&lt; float &gt; &amp;  *data*,    [Dimension](group__SystemCouplingParticipantAPIs.xhtml#ga47c8e4142175574918b84d336780cc7c)  *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. 



<a id="ae46ff595736820fb92cb12797f05d62a" name="ae46ff595736820fb92cb12797f05d62a"></a>## [◆ ](#ae46ff595736820fb92cb12797f05d62a)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. 



<a id="a34e2f29605de1f3d218f61f305231f37" name="a34e2f29605de1f3d218f61f305231f37"></a>## [◆ ](#a34e2f29605de1f3d218f61f305231f37)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. 



<a id="a6290f72e042d38bee53f671eaeef382b" name="a6290f72e042d38bee53f671eaeef382b"></a>## [◆ ](#a6290f72e042d38bee53f671eaeef382b)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. 



<a id="a5e7ec5d5f55d26d79f5beb5f492e8173" name="a5e7ec5d5f55d26d79f5beb5f492e8173"></a>## [◆ ](#a5e7ec5d5f55d26d79f5beb5f492e8173)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. 



<a id="ad682d56f49fc69628ad18410cefad197" name="ad682d56f49fc69628ad18410cefad197"></a>## [◆ ](#ad682d56f49fc69628ad18410cefad197)InputVectorData() \[13/16\]

 sysc::InputVectorData::InputVectorData  ( std::vector&lt; double &gt; &amp;  *data0*,    std::vector&lt; double &gt; &amp;  *data1*,    std::vector&lt; double &gt; &amp;  *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. 



<a id="a4fdc6e50b3aa55afc3375e9e8a25589f" name="a4fdc6e50b3aa55afc3375e9e8a25589f"></a>## [◆ ](#a4fdc6e50b3aa55afc3375e9e8a25589f)InputVectorData() \[14/16\]

 sysc::InputVectorData::InputVectorData  ( std::vector&lt; double &gt; &amp;  *data0*,    std::vector&lt; double &gt; &amp;  *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. 



<a id="a6e884069f0f4f3cb1e58d3ee6894407f" name="a6e884069f0f4f3cb1e58d3ee6894407f"></a>## [◆ ](#a6e884069f0f4f3cb1e58d3ee6894407f)InputVectorData() \[15/16\]

 sysc::InputVectorData::InputVectorData  ( std::vector&lt; float &gt; &amp;  *data0*,    std::vector&lt; float &gt; &amp;  *data1*,    std::vector&lt; float &gt; &amp;  *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. 



<a id="adeceff37584427f9b487228ed1619ad8" name="adeceff37584427f9b487228ed1619ad8"></a>## [◆ ](#adeceff37584427f9b487228ed1619ad8)InputVectorData() \[16/16\]

 sysc::InputVectorData::InputVectorData  ( std::vector&lt; float &gt; &amp;  *data0*,    std::vector&lt; float &gt; &amp;  *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

<a id="a240b4fe8f40171284dab0e91fea7e473" name="a240b4fe8f40171284dab0e91fea7e473"></a>## [◆ ](#a240b4fe8f40171284dab0e91fea7e473)getData0()

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

Get pointer to data0.

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





<a id="ac224fdb63436e849363881e75fa7dd01" name="ac224fdb63436e849363881e75fa7dd01"></a>## [◆ ](#ac224fdb63436e849363881e75fa7dd01)getData1()

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

Get pointer to data1.

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





<a id="a2d48a4becc9e840618fe6245d1ce9ef0" name="a2d48a4becc9e840618fe6245d1ce9ef0"></a>## [◆ ](#a2d48a4becc9e840618fe6245d1ce9ef0)getData2()

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

Get pointer to data2.

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





<a id="a36c2f1ad1395f88faf59a1b6da0db099" name="a36c2f1ad1395f88faf59a1b6da0db099"></a>## [◆ ](#a36c2f1ad1395f88faf59a1b6da0db099)getDataType()

 [sysc::PrimitiveType](group__SystemCouplingParticipantAPIs.xhtml#gad3b1c73e4a63f4d292d65f3db875e844) sysc::InputVectorData::getDataType  ( )  const  noexcept 

Get the primitive type of data.

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





<a id="a04a85b9650fe4c0b8f4e3ecbad088c52" name="a04a85b9650fe4c0b8f4e3ecbad088c52"></a>## [◆ ](#a04a85b9650fe4c0b8f4e3ecbad088c52)getDimension()

 [Dimension](group__SystemCouplingParticipantAPIs.xhtml#ga47c8e4142175574918b84d336780cc7c) sysc::InputVectorData::getDimension  ( )  const  noexcept 

Get the Dimension object.

Returnsconst Dimension References [sysc::Double](CommonTypes_8hpp_source.xhtml#l00202).





<a id="a8b96a950634f0ed4dae6468e88319e53" name="a8b96a950634f0ed4dae6468e88319e53"></a>## [◆ ](#a8b96a950634f0ed4dae6468e88319e53)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).