Skip to main content

System Coupling C++ library 2024 R2

InputScalarData

Last update: 17.07.2025
1/*
2* Copyright 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* data,
33 std::size_t size);
34
42 float* data,
43 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
79 bool empty() const noexcept;
80
85 sysc::PrimitiveType getDataType() const noexcept;
86
91 void* getData() const noexcept;
92
93private:
94 sysc::PrimitiveType m_dataType{sysc::Double};
95 void* m_data{nullptr};
96 std::size_t m_size{0};
97};
98
99} // 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(std::vector< double > &data)
Provide a constructor for input scalar data.
InputScalarData(float *data, std::size_t size)
Provide a constructor for input scalar data.
std::size_t size() const noexcept
Get the size of data.
InputScalarData(InputScalarData &&)=default
Provide a move-constructor.
InputScalarData(const InputScalarData &)=default
Provide a copy-constructor.
InputScalarData(double *data, std::size_t size)
Provide a constructor for input scalar data.
PrimitiveType
Provide enum for supported primitive types.

Connect with Ansys