Skip to main content

System Coupling C++ library 2023 R2

InputScalarData

Last update: 17.07.2025
1/*
2* Copyright 2023 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.
3*/
4
5#pragma once
6
7#include "SystemCouplingParticipant/LibraryType.hpp"
8
9#include "SystemCouplingParticipant/CommonTypes.hpp"
10
11#include <cstddef>
12#include <vector>
13
14namespace sysc {
15
23class SYSTEM_COUPLING_PARTICIPANT_DLL InputScalarData {
24public:
32 double* const data,
33 const std::size_t size);
34
42 float* const data,
43 const std::size_t size);
44
50 InputScalarData(std::vector<double>& data);
51
58 InputScalarData(std::vector<float>& data);
59
61 InputScalarData() = default;
62
65
68
71
74
76 std::size_t size() const noexcept;
77
82 sysc::PrimitiveType getDataType() const noexcept;
83
88 void* getData() const noexcept;
89
90private:
91 const sysc::PrimitiveType m_dataType{sysc::Double};
92 void* const m_data{nullptr};
93 const std::size_t m_size{0};
94};
95
96} // namespace sysc
Provide a class for input scalar data.
InputScalarData(std::vector< float > &data)
Provide a constructor for input scalar data.
InputScalarData()=default
Provide a default constructor.
InputScalarData & operator=(const InputScalarData &)=default
Provide a copy-assign operator.
InputScalarData & operator=(InputScalarData &&)=default
Provide a move-assign operator.
InputScalarData(double *const data, const std::size_t size)
Provide a constructor for input scalar data.
InputScalarData(std::vector< double > &data)
Provide a constructor for input scalar data.
std::size_t size() const noexcept
Get the size of data.
InputScalarData(float *const data, const std::size_t size)
Provide a constructor for input scalar data.
InputScalarData(InputScalarData &&)=default
Provide a move-constructor.
InputScalarData(const InputScalarData &)=default
Provide a copy-constructor.
PrimitiveType
Provide enum for supported primitive types.

Connect with Ansys