    

 ## On this page

  

 

 # sysc::InputComplexScalarData Class Reference

 Last update: 17.07.2025 

Provide a class for input complex scalar data. [More...](classsysc_1_1InputComplexScalarData.xhtml#details)

`#include <<a class="el" href="InputComplexScalarData_8hpp_source.xhtml">InputComplexScalarData.hpp</a>>`

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

 [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#a9799ecb48164481feb8e3c234b5f17a2) (std::vector&lt; std::complex&lt; double &gt;&gt; &amp;dataComplex) Provide a constructor for input complex scalar data with compact storage for complex components. [More...](classsysc_1_1InputComplexScalarData.xhtml#a9799ecb48164481feb8e3c234b5f17a2)  
  [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#a4fd7a610e7b5bbf7e23fafed47354e4b) (std::complex&lt; double &gt; \*dataComplex, std::size\_t [size](classsysc_1_1InputComplexScalarData.xhtml#a9034067801b82ce51fb707e45517d08b)) Provide a constructor for input complex scalar data with compact storage for complex components. [More...](classsysc_1_1InputComplexScalarData.xhtml#a4fd7a610e7b5bbf7e23fafed47354e4b)  
  [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#a2651ceaed447865458a33e21feab6bc4) (double \*dataComplex, std::size\_t [size](classsysc_1_1InputComplexScalarData.xhtml#a9034067801b82ce51fb707e45517d08b)) Provide a constructor for input complex scalar data with compact storage for complex components. [More...](classsysc_1_1InputComplexScalarData.xhtml#a2651ceaed447865458a33e21feab6bc4)  
  [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#aebb2f21dc9bb49e32ef384ea232fac2d) (std::vector&lt; double &gt; &amp;dataReal, std::vector&lt; double &gt; &amp;dataImaginary) Create an input complex scalar data access object with split storage for complex components. [More...](classsysc_1_1InputComplexScalarData.xhtml#aebb2f21dc9bb49e32ef384ea232fac2d)  
  [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#aaad5ae16ce141940bf382347bfcde0fc) (double \*dataReal, double \*dataImaginary, std::size\_t [size](classsysc_1_1InputComplexScalarData.xhtml#a9034067801b82ce51fb707e45517d08b)) Create an input complex scalar data access object with split storage for complex components. [More...](classsysc_1_1InputComplexScalarData.xhtml#aaad5ae16ce141940bf382347bfcde0fc)  
  [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#ae35e1789225279bb36f03b24538c109c) (std::vector&lt; std::complex&lt; float &gt;&gt; &amp;dataComplex) Provide a constructor for input complex scalar data with compact storage for complex components. [More...](classsysc_1_1InputComplexScalarData.xhtml#ae35e1789225279bb36f03b24538c109c)  
  [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#a4767c4598c7bf8e358581963281d116f) (std::complex&lt; float &gt; \*dataComplex, std::size\_t [size](classsysc_1_1InputComplexScalarData.xhtml#a9034067801b82ce51fb707e45517d08b)) Provide a constructor for input complex scalar data with compact storage for complex components. [More...](classsysc_1_1InputComplexScalarData.xhtml#a4767c4598c7bf8e358581963281d116f)  
  [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#a17e9c685d7df19afaab8c8d79a7f3a5e) (float \*dataComplex, std::size\_t [size](classsysc_1_1InputComplexScalarData.xhtml#a9034067801b82ce51fb707e45517d08b)) Provide a constructor for input complex scalar data with compact storage for complex components. [More...](classsysc_1_1InputComplexScalarData.xhtml#a17e9c685d7df19afaab8c8d79a7f3a5e)  
  [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#aa3af42841050f48442f7c799934464b1) (std::vector&lt; float &gt; &amp;dataReal, std::vector&lt; float &gt; &amp;dataImaginary) Create an input complex scalar data access object with split storage for complex components. [More...](classsysc_1_1InputComplexScalarData.xhtml#aa3af42841050f48442f7c799934464b1)  
  [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#a3cb2a7e0408644aa704afe24a3c69680) (float \*dataReal, float \*dataImaginary, std::size\_t [size](classsysc_1_1InputComplexScalarData.xhtml#a9034067801b82ce51fb707e45517d08b)) Create an input complex scalar data access object with split storage for complex components. [More...](classsysc_1_1InputComplexScalarData.xhtml#a3cb2a7e0408644aa704afe24a3c69680)  
 <a id="a87ddce421dd35973a0fb7e5ba971f1ab"></a> [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#a87ddce421dd35973a0fb7e5ba971f1ab) ()=default Provide a default constructor.   
 <a id="a580988b37a3df87bc3f7b8e54ab44bb1"></a> [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#a580988b37a3df87bc3f7b8e54ab44bb1) (const [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml) &amp;)=default Provide a copy-constructor.   
 <a id="a04373a36866867b8d84d2eddca6c123e"></a> [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml#a04373a36866867b8d84d2eddca6c123e) ([InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml) &amp;&amp;)=default Provide a move-constructor.   
 <a id="a0f21d4c6de589c264c44a9a6203d46cf"></a>[InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml) &amp; [operator=](classsysc_1_1InputComplexScalarData.xhtml#a0f21d4c6de589c264c44a9a6203d46cf) (const [InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml) &amp;)=default Provide a copy-assign operator.   
 <a id="ac229c985802f1d806d13460ce35b4ae6"></a>[InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml) &amp; [operator=](classsysc_1_1InputComplexScalarData.xhtml#ac229c985802f1d806d13460ce35b4ae6) ([InputComplexScalarData](classsysc_1_1InputComplexScalarData.xhtml) &amp;&amp;)=default Provide a move-assign operator.   
 <a id="a9034067801b82ce51fb707e45517d08b"></a>std::size\_t [size](classsysc_1_1InputComplexScalarData.xhtml#a9034067801b82ce51fb707e45517d08b) () const noexcept Get the size of data.   
 <a id="ad7c8bad4fe00dc8e31160925a811eb5a"></a>bool [empty](classsysc_1_1InputComplexScalarData.xhtml#ad7c8bad4fe00dc8e31160925a811eb5a) () const noexcept Check if array "data" is empty.   
 [sysc::PrimitiveType](group__SystemCouplingParticipantAPIs.xhtml#gad3b1c73e4a63f4d292d65f3db875e844) [getDataType](classsysc_1_1InputComplexScalarData.xhtml#a19522f922326595ae0eeafbb3807136b) () const noexcept Get the primitive type of data. [More...](classsysc_1_1InputComplexScalarData.xhtml#a19522f922326595ae0eeafbb3807136b)  
 bool [isSplitComplex](classsysc_1_1InputComplexScalarData.xhtml#a77de5929a7ea7631649982e5fb3104da) () const noexcept Query whether it's a split or compact vector layout. [More...](classsysc_1_1InputComplexScalarData.xhtml#a77de5929a7ea7631649982e5fb3104da)  
 void \* [getData1](classsysc_1_1InputComplexScalarData.xhtml#a88e72a3976633fd62cd8c373ccbb6194) () const noexcept Get pointer to data1. [More...](classsysc_1_1InputComplexScalarData.xhtml#a88e72a3976633fd62cd8c373ccbb6194)  
 void \* [getData2](classsysc_1_1InputComplexScalarData.xhtml#a039392f0e599a4a2a2fca00787e546a0) () const noexcept Get pointer to data2. [More...](classsysc_1_1InputComplexScalarData.xhtml#a039392f0e599a4a2a2fca00787e546a0)  
 <a id="details" name="details"></a>## Detailed Description

Provide a class for input complex scalar data.

Input scalar data provides read and write access to an array of complex scalars.

Definition at line [24](InputComplexScalarData_8hpp_source.xhtml#l00024) of file [InputComplexScalarData.hpp](InputComplexScalarData_8hpp_source.xhtml).



## Constructor &amp; Destructor Documentation

<a id="a9799ecb48164481feb8e3c234b5f17a2"></a>## [◆ ](#a9799ecb48164481feb8e3c234b5f17a2)InputComplexScalarData() \[1/10\]

 sysc::InputComplexScalarData::InputComplexScalarData  ( std::vector&lt; std::complex&lt; double &gt;&gt; &amp;  *dataComplex*) 

Provide a constructor for input complex scalar data with compact storage for complex components.

Parameters dataComplex- reference to the STL vector of complex double-precision data 



<a id="a4fd7a610e7b5bbf7e23fafed47354e4b"></a>## [◆ ](#a4fd7a610e7b5bbf7e23fafed47354e4b)InputComplexScalarData() \[2/10\]

 sysc::InputComplexScalarData::InputComplexScalarData  ( std::complex&lt; double &gt; \*  *dataComplex*,    std::size\_t  *size*   ) 

Provide a constructor for input complex scalar data with compact storage for complex components.

Parameters dataComplex- pointer to an array of complex double-precision scalarssize- number of scalars 



<a id="a2651ceaed447865458a33e21feab6bc4"></a>## [◆ ](#a2651ceaed447865458a33e21feab6bc4)InputComplexScalarData() \[3/10\]

 sysc::InputComplexScalarData::InputComplexScalarData  ( double \*  *dataComplex*,    std::size\_t  *size*   ) 

Provide a constructor for input complex scalar data with compact storage for complex components.

Parameters dataComplex- pointer to an array of complex double-precision scalarssize- number of scalars 



<a id="aebb2f21dc9bb49e32ef384ea232fac2d"></a>## [◆ ](#aebb2f21dc9bb49e32ef384ea232fac2d)InputComplexScalarData() \[4/10\]

 sysc::InputComplexScalarData::InputComplexScalarData  ( std::vector&lt; double &gt; &amp;  *dataReal*,    std::vector&lt; double &gt; &amp;  *dataImaginary*   ) 

Create an input complex scalar data access object with split storage for complex components.

Parameters dataReal- reference to an STL vector of double-precision data, that stores the real components of the complex scalars.dataImaginary- reference to an STL vector of double-precision data, that stores the imaginary components of the complex scalars. 



<a id="aaad5ae16ce141940bf382347bfcde0fc"></a>## [◆ ](#aaad5ae16ce141940bf382347bfcde0fc)InputComplexScalarData() \[5/10\]

 sysc::InputComplexScalarData::InputComplexScalarData  ( double \*  *dataReal*,    double \*  *dataImaginary*,    std::size\_t  *size*   ) 

Create an input complex scalar data access object with split storage for complex components.

Parameters dataReal- pointer to an array of double-precision data, that stores the real components of the complex scalars.dataImaginary- pointer to an array of double-precision data, that stores the imaginary components of the complex scalars.size- number of complex scalars 



<a id="ae35e1789225279bb36f03b24538c109c"></a>## [◆ ](#ae35e1789225279bb36f03b24538c109c)InputComplexScalarData() \[6/10\]

 sysc::InputComplexScalarData::InputComplexScalarData  ( std::vector&lt; std::complex&lt; float &gt;&gt; &amp;  *dataComplex*) 

Provide a constructor for input complex scalar data with compact storage for complex components.

Parameters dataComplex- reference to the STL vector of complex single-precision data 



<a id="a4767c4598c7bf8e358581963281d116f"></a>## [◆ ](#a4767c4598c7bf8e358581963281d116f)InputComplexScalarData() \[7/10\]

 sysc::InputComplexScalarData::InputComplexScalarData  ( std::complex&lt; float &gt; \*  *dataComplex*,    std::size\_t  *size*   ) 

Provide a constructor for input complex scalar data with compact storage for complex components.

Parameters dataComplex- pointer to an array of complex single-precision scalarssize- number of scalars 



<a id="a17e9c685d7df19afaab8c8d79a7f3a5e"></a>## [◆ ](#a17e9c685d7df19afaab8c8d79a7f3a5e)InputComplexScalarData() \[8/10\]

 sysc::InputComplexScalarData::InputComplexScalarData  ( float \*  *dataComplex*,    std::size\_t  *size*   ) 

Provide a constructor for input complex scalar data with compact storage for complex components.

Parameters dataComplex- pointer to an array of complex single-precision scalarssize- number of scalars 



<a id="aa3af42841050f48442f7c799934464b1"></a>## [◆ ](#aa3af42841050f48442f7c799934464b1)InputComplexScalarData() \[9/10\]

 sysc::InputComplexScalarData::InputComplexScalarData  ( std::vector&lt; float &gt; &amp;  *dataReal*,    std::vector&lt; float &gt; &amp;  *dataImaginary*   ) 

Create an input complex scalar data access object with split storage for complex components.

Parameters dataReal- reference to an STL vector of single-precision data, that stores the real components of the complex scalars.dataImaginary- reference to an STL vector of single-precision data, that stores the imaginary components of the complex scalars. 



<a id="a3cb2a7e0408644aa704afe24a3c69680"></a>## [◆ ](#a3cb2a7e0408644aa704afe24a3c69680)InputComplexScalarData() \[10/10\]

 sysc::InputComplexScalarData::InputComplexScalarData  ( float \*  *dataReal*,    float \*  *dataImaginary*,    std::size\_t  *size*   ) 

Create an input complex scalar data access object with split storage for complex components.

Parameters dataReal- pointer to an array of single-precision data, that stores the real components of the complex scalars.dataImaginary- pointer to an array of single-precision data, that stores the imaginary components of the complex scalars.size- number of complex scalars 



## Member Function Documentation

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

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

Get pointer to data1.

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





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

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

Get pointer to data2.

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

References [sysc::Double](CommonTypes_8hpp_source.xhtml#l00222).





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

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

Get the primitive type of data.

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





<a id="a77de5929a7ea7631649982e5fb3104da"></a>## [◆ ](#a77de5929a7ea7631649982e5fb3104da)isSplitComplex()

 bool sysc::InputComplexScalarData::isSplitComplex  ( )  const  noexcept 

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

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