31 class AbstractValuesProperty :
public AbstractProperty
72 DLL_IMPORT_OR_EXPORT
void pushBackFacet(gsoap_eml2_3::eml23__FacetKind facet, const std::
string & facetValue);
90 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__FacetKind
getFacetKind(uint64_t index) const;
118 template<typename T> std::enable_if_t<std::is_arithmetic_v<T>,
void>
120 EML2_NS::AbstractHdfProxy* proxy =
nullptr, T nullValue = (std::numeric_limits<T>::max)());
123 void pushBackArrayOfValuesPlusStatistics(const T* values, const uint64_t* numValues, uint32_t numDimensionsInArray, const COMMON_NS::NumberArrayStatistics<T>&
statistics,
124 EML2_NS::AbstractHdfProxy* proxy =
nullptr) {
147 EML2_NS::AbstractHdfProxy* proxy =
nullptr, T nullValue = (std::numeric_limits<T>::max)()) {
151 void pushBackArray1dOfValuesPlusStatistics(
const T* values, uint64_t valueCount,
const COMMON_NS::NumberArrayStatistics<T>&
statistics,
152 EML2_NS::AbstractHdfProxy* proxy =
nullptr) {
153 pushBackArray1dOfValues(values, valueCount, proxy,
statistics.getNullValue());
154 setStatistics(
statistics, getPatchCount() - 1);
178 EML2_NS::AbstractHdfProxy* proxy =
nullptr, T nullValue = (std::numeric_limits<T>::max)()) {
179 const uint64_t valueCountPerDimension[2] = { valueCountInSlowestDim, valueCountInFastestDim };
183 void pushBackArray2dOfValuesPlusStatistics(
const T* values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim,
const COMMON_NS::NumberArrayStatistics<T>&
statistics,
184 EML2_NS::AbstractHdfProxy* proxy =
nullptr) {
185 pushBackArray2dOfValues(values, valueCountInFastestDim, valueCountInSlowestDim, proxy,
statistics.getNullValue());
186 setStatistics(
statistics, getPatchCount() - 1);
211 void pushBackArray3dOfValues(
const T* values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim,
212 EML2_NS::AbstractHdfProxy* proxy =
nullptr, T nullValue = (std::numeric_limits<T>::max)()) {
213 const uint64_t valueCountPerDimension[3] = { valueCountInSlowestDim, valueCountInMiddleDim, valueCountInFastestDim };
217 void pushBackArray3dOfValuesPlusStatistics(
const T* values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim,
const COMMON_NS::NumberArrayStatistics<T>&
statistics,
218 EML2_NS::AbstractHdfProxy* proxy =
nullptr) {
219 pushBackArray3dOfValues(values, valueCountInFastestDim, valueCountInMiddleDim, valueCountInSlowestDim, proxy,
statistics.getNullValue());
220 setStatistics(
statistics, getPatchCount() - 1);
238 COMMON_NS::NumberArrayStatistics<T>
getArrayOfValuesOfPatch(uint64_t patchIndex, T* values,
bool forceStatisticsComputation =
false)
const {
240 if (values ==
nullptr) {
241 throw std::invalid_argument(
"The array of values cannot be null");
245 if (gsoapProxy2_0_1 !=
nullptr) {
246 auto const* xmlValues =
static_cast<gsoap_resqml2_0_1::resqml20__AbstractValuesProperty const*
>(gsoapProxy2_0_1)->PatchOfValues[patchIndex]->Values;
247 if constexpr (std::is_integral_v<T>) {
248 nullValue = readArrayNdOfIntegerValues(xmlValues, values);
251 auto const* xmlArray =
dynamic_cast<gsoap_resqml2_0_1::resqml20__AbstractDoubleArray const*
>(xmlValues);
252 if (xmlArray !=
nullptr) {
253 if constexpr (std::is_same_v<T, float>) {
254 nullValue = std::numeric_limits<float>::quiet_NaN();
255 readArrayNdOfFloatValues(xmlArray, values);
258 nullValue = std::numeric_limits<double>::quiet_NaN();
259 readArrayNdOfDoubleValues(xmlArray, values);
263 throw std::logic_error(
"Reading floating point values from a non RESQML2.0.1 double array is not supported.");
267 else if (gsoapProxy2_3 !=
nullptr) {
268 gsoap_eml2_3::eml23__AbstractValueArray
const* xmlValues =
static_cast<gsoap_eml2_3::resqml22__AbstractValuesProperty*
>(gsoapProxy2_3)->ValuesForPatch.at(patchIndex);
269 if constexpr (std::is_integral_v<T>) {
270 auto const* xmlArray =
dynamic_cast<gsoap_eml2_3::eml23__AbstractIntegerArray const*
>(xmlValues);
271 if (xmlArray !=
nullptr) {
272 nullValue = readArrayNdOfIntegerValues(xmlArray, values);
275 throw std::logic_error(
"Reading integer values from a non integer array is not supported.");
279 auto const* xmlArray =
dynamic_cast<gsoap_eml2_3::eml23__AbstractFloatingPointArray const*
>(xmlValues);
280 if (xmlArray !=
nullptr) {
281 if constexpr (std::is_same_v<T, float>) {
282 nullValue = std::numeric_limits<float>::quiet_NaN();
283 readArrayNdOfFloatValues(xmlArray, values);
286 nullValue = std::numeric_limits<double>::quiet_NaN();
287 readArrayNdOfDoubleValues(xmlArray, values);
291 throw std::logic_error(
"Reading floating point values from a non RESQML2.2 double array is not supported.");
296 throw std::logic_error(
"Only RESQML 2.2 and 2.0.1 are supported for now.");
299 if (forceStatisticsComputation) {
303 return getStatistics<T>(patchIndex);
306 template<
typename T> std::enable_if_t<std::is_arithmetic_v<T>, COMMON_NS::NumberArrayStatistics<T>>
307 getStatistics(uint64_t patchIndex)
const;
335 [[deprecated(
"Use pushBackArray1dOfValues instead.")]]
343 [[deprecated(
"Use pushBackArray1dOfValues instead.")]]
351 [[deprecated(
"Use pushBackArray1dOfValues instead.")]]
359 [[deprecated(
"Use pushBackArray1dOfValues instead.")]]
381 [[deprecated(
"Use pushBackArray2dOfValues instead.")]]
382 DLL_IMPORT_OR_EXPORT
void pushBackInt64Hdf5Array2dOfValues(
const int64_t* values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy, int64_t nullValue);
389 [[deprecated(
"Use pushBackArray2dOfValues instead.")]]
390 DLL_IMPORT_OR_EXPORT
void pushBackInt32Hdf5Array2dOfValues(
const int* values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy,
int nullValue);
397 [[deprecated(
"Use pushBackArray2dOfValues instead.")]]
398 DLL_IMPORT_OR_EXPORT
void pushBackInt16Hdf5Array2dOfValues(
const short* values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy,
short nullValue);
405 [[deprecated(
"Use pushBackArray2dOfValues instead.")]]
406 DLL_IMPORT_OR_EXPORT
void pushBackUInt16Hdf5Array2dOfValues(
const unsigned short* values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy,
unsigned short nullValue);
413 [[deprecated(
"Use pushBackArray2dOfValues instead.")]]
414 DLL_IMPORT_OR_EXPORT
void pushBackInt8Hdf5Array2dOfValues(
const int8_t* values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy, int8_t nullValue);
437 [[deprecated(
"Use pushBackArray3dOfValues instead.")]]
438 DLL_IMPORT_OR_EXPORT
void pushBackInt64Hdf5Array3dOfValues(
const int64_t* values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy, int64_t nullValue);
445 [[deprecated(
"Use pushBackArray3dOfValues instead.")]]
446 DLL_IMPORT_OR_EXPORT
void pushBackInt32Hdf5Array3dOfValues(
const int* values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy,
int nullValue);
453 DLL_IMPORT_OR_EXPORT
void pushBackInt16Hdf5Array3dOfValues(
const short* values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy,
short nullValue);
460 [[deprecated(
"Use pushBackArray3dOfValues instead.")]]
461 DLL_IMPORT_OR_EXPORT
void pushBackUInt16Hdf5Array3dOfValues(
const unsigned short* values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy,
unsigned short nullValue);
468 [[deprecated(
"Use pushBackArray3dOfValues instead.")]]
469 DLL_IMPORT_OR_EXPORT
void pushBackInt8Hdf5Array3dOfValues(
const int8_t* values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy, int8_t nullValue);
489 [[deprecated(
"Use pushBackArrayOfValues instead.")]]
490 DLL_IMPORT_OR_EXPORT
virtual void pushBackInt64Hdf5ArrayOfValues(
const int64_t* values,
const uint64_t* numValues,
unsigned int numDimensionsInArray, EML2_NS::AbstractHdfProxy* proxy, int64_t nullValue);
497 [[deprecated(
"Use pushBackArrayOfValues instead.")]]
498 DLL_IMPORT_OR_EXPORT
virtual void pushBackInt32Hdf5ArrayOfValues(
const int* values,
const uint64_t* numValues,
unsigned int numDimensionsInArray, EML2_NS::AbstractHdfProxy* proxy,
int nullValue);
505 [[deprecated(
"Use pushBackArrayOfValues instead.")]]
506 DLL_IMPORT_OR_EXPORT
virtual void pushBackInt16Hdf5ArrayOfValues(
const short* values,
const uint64_t* numValues,
unsigned int numDimensionsInArray, EML2_NS::AbstractHdfProxy* proxy,
short nullValue);
513 [[deprecated(
"Use pushBackArrayOfValues instead.")]]
514 DLL_IMPORT_OR_EXPORT
virtual void pushBackUInt16Hdf5ArrayOfValues(
const unsigned short* values,
const uint64_t* numValues,
unsigned int numDimensionsInArray, EML2_NS::AbstractHdfProxy* proxy,
unsigned short nullValue);
521 [[deprecated(
"Use pushBackArrayOfValues instead.")]]
522 DLL_IMPORT_OR_EXPORT
virtual void pushBackInt8Hdf5ArrayOfValues(
const int8_t* values,
const uint64_t* numValues,
unsigned int numDimensionsInArray, EML2_NS::AbstractHdfProxy* proxy, int8_t nullValue);
543 DLL_IMPORT_OR_EXPORT
virtual std::string
pushBackRefToExistingIntegerDataset(EML2_NS::AbstractHdfProxy* hdfProxy,
const std::string & dataset =
"", int64_t nullValue = (std::numeric_limits<int64_t>::max)());
603 [[deprecated(
"Use getArrayOfValuesOfPatch instead.")]]
604 DLL_IMPORT_OR_EXPORT int64_t getInt64ValuesOfPatch(uint64_t patchIndex, int64_t* values)
const {
608 [[deprecated(
"Use getArrayOfValuesOfPatch instead.")]]
609 DLL_IMPORT_OR_EXPORT uint64_t getUInt64ValuesOfPatch(uint64_t patchIndex, uint64_t* values)
const {
610 return getArrayOfValuesOfPatch(patchIndex, values).getNullValue();
613 [[deprecated(
"Use getArrayOfValuesOfPatch instead.")]]
614 DLL_IMPORT_OR_EXPORT int32_t getInt32ValuesOfPatch(uint64_t patchIndex, int32_t* values)
const {
615 return getArrayOfValuesOfPatch(patchIndex, values).getNullValue();
618 [[deprecated(
"Use getArrayOfValuesOfPatch instead.")]]
619 DLL_IMPORT_OR_EXPORT uint32_t getUInt32ValuesOfPatch(uint64_t patchIndex, uint32_t* values)
const {
620 return getArrayOfValuesOfPatch(patchIndex, values).getNullValue();
623 [[deprecated(
"Use getArrayOfValuesOfPatch instead.")]]
624 DLL_IMPORT_OR_EXPORT int16_t getInt16ValuesOfPatch(uint64_t patchIndex, int16_t* values)
const {
625 return getArrayOfValuesOfPatch(patchIndex, values).getNullValue();
628 [[deprecated(
"Use getArrayOfValuesOfPatch instead.")]]
629 DLL_IMPORT_OR_EXPORT uint16_t getUInt16ValuesOfPatch(uint64_t patchIndex, uint16_t* values)
const {
630 return getArrayOfValuesOfPatch(patchIndex, values).getNullValue();
633 DLL_IMPORT_OR_EXPORT int8_t getInt8ValuesOfPatch(uint64_t patchIndex, int8_t* values)
const {
634 return getArrayOfValuesOfPatch(patchIndex, values).getNullValue();
637 [[deprecated(
"Use getArrayOfValuesOfPatch instead.")]]
638 DLL_IMPORT_OR_EXPORT uint8_t getUInt8ValuesOfPatch(uint64_t patchIndex, uint8_t* values)
const {
639 return getArrayOfValuesOfPatch(patchIndex, values).getNullValue();
667 COMMON_NS::AbstractObject::numericalDatatypeEnum datatype,
668 uint64_t
const * numValues,
669 unsigned int numArrayDimensions,
670 int64_t nullValue = (std::numeric_limits<int64_t>::max)(),
671 EML2_NS::AbstractHdfProxy* proxy =
nullptr
692 COMMON_NS::AbstractObject::numericalDatatypeEnum datatype,
694 int64_t nullValue = (std::numeric_limits<int64_t>::max)(), EML2_NS::AbstractHdfProxy* proxy =
nullptr
718 COMMON_NS::AbstractObject::numericalDatatypeEnum datatype,
719 uint64_t valueCountInFastestDim,
720 uint64_t valueCountInSlowestDim,
721 int64_t nullValue = (std::numeric_limits<int64_t>::max)(),
722 EML2_NS::AbstractHdfProxy* proxy =
nullptr
748 COMMON_NS::AbstractObject::numericalDatatypeEnum datatype,
749 uint64_t valueCountInFastestDim,
750 uint64_t valueCountInMiddleDim,
751 uint64_t valueCountInSlowestDim,
752 int64_t nullValue = (std::numeric_limits<int64_t>::max)(),
753 EML2_NS::AbstractHdfProxy* proxy =
nullptr
787 int64_t
const* values,
788 uint64_t
const * numValues,
789 uint64_t
const * offsetValues,
790 unsigned int numArrayDimensions,
791 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
792 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
793 setValuesOfHdf5ArrayOfValues(
794 COMMON_NS::AbstractObject::numericalDatatypeEnum::INT64, values, numValues,
795 offsetValues, numArrayDimensions, proxy, patchIndex);
797 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt64Hdf5ArrayOfValues(
798 uint64_t
const* values,
799 uint64_t
const * numValues,
800 uint64_t
const * offsetValues,
801 unsigned int numArrayDimensions,
802 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
803 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
804 setValuesOfHdf5ArrayOfValues(
805 COMMON_NS::AbstractObject::numericalDatatypeEnum::UINT64, values, numValues,
806 offsetValues, numArrayDimensions, proxy, patchIndex);
808 DLL_IMPORT_OR_EXPORT
void setValuesOfInt32Hdf5ArrayOfValues(
809 int32_t
const* values,
810 uint64_t
const * numValues,
811 uint64_t
const * offsetValues,
812 unsigned int numArrayDimensions,
813 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
814 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
815 setValuesOfHdf5ArrayOfValues(
816 COMMON_NS::AbstractObject::numericalDatatypeEnum::INT32, values, numValues,
817 offsetValues, numArrayDimensions, proxy, patchIndex);
819 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt32Hdf5ArrayOfValues(
820 uint32_t
const* values,
821 uint64_t
const * numValues,
822 uint64_t
const * offsetValues,
823 unsigned int numArrayDimensions,
824 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
825 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
826 setValuesOfHdf5ArrayOfValues(
827 COMMON_NS::AbstractObject::numericalDatatypeEnum::UINT32, values, numValues,
828 offsetValues, numArrayDimensions, proxy, patchIndex);
830 DLL_IMPORT_OR_EXPORT
void setValuesOfInt16Hdf5ArrayOfValues(
831 int16_t
const* values,
832 uint64_t
const * numValues,
833 uint64_t
const * offsetValues,
834 unsigned int numArrayDimensions,
835 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
836 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
837 setValuesOfHdf5ArrayOfValues(
838 COMMON_NS::AbstractObject::numericalDatatypeEnum::INT16, values, numValues,
839 offsetValues, numArrayDimensions, proxy, patchIndex);
841 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt16Hdf5ArrayOfValues(
842 uint16_t
const* values,
843 uint64_t
const * numValues,
844 uint64_t
const * offsetValues,
845 unsigned int numArrayDimensions,
846 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
847 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
848 setValuesOfHdf5ArrayOfValues(
849 COMMON_NS::AbstractObject::numericalDatatypeEnum::UINT16, values, numValues,
850 offsetValues, numArrayDimensions, proxy, patchIndex);
852 DLL_IMPORT_OR_EXPORT
void setValuesOfInt8Hdf5ArrayOfValues(
853 int8_t
const* values,
854 uint64_t
const * numValues,
855 uint64_t
const * offsetValues,
856 unsigned int numArrayDimensions,
857 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
858 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
859 setValuesOfHdf5ArrayOfValues(
860 COMMON_NS::AbstractObject::numericalDatatypeEnum::INT8, values, numValues,
861 offsetValues, numArrayDimensions, proxy, patchIndex);
863 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt8Hdf5ArrayOfValues(
864 uint8_t
const* values,
865 uint64_t
const * numValues,
866 uint64_t
const * offsetValues,
867 unsigned int numArrayDimensions,
868 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
869 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
870 setValuesOfHdf5ArrayOfValues(
871 COMMON_NS::AbstractObject::numericalDatatypeEnum::UINT8, values, numValues,
872 offsetValues, numArrayDimensions, proxy, patchIndex);
874 DLL_IMPORT_OR_EXPORT
void setValuesOfDoubleHdf5ArrayOfValues(
875 double const* values,
876 uint64_t
const * numValues,
877 uint64_t
const * offsetValues,
878 unsigned int numArrayDimensions,
879 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
880 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
881 setValuesOfHdf5ArrayOfValues(
882 COMMON_NS::AbstractObject::numericalDatatypeEnum::DOUBLE, values, numValues,
883 offsetValues, numArrayDimensions, proxy, patchIndex);
885 DLL_IMPORT_OR_EXPORT
void setValuesOfFloatHdf5ArrayOfValues(
887 uint64_t
const * numValues,
888 uint64_t
const * offsetValues,
889 unsigned int numArrayDimensions,
890 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
891 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
892 setValuesOfHdf5ArrayOfValues(
893 COMMON_NS::AbstractObject::numericalDatatypeEnum::FLOAT, values, numValues,
894 offsetValues, numArrayDimensions, proxy, patchIndex);
924 int64_t
const* values,
927 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
928 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
931 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt64Hdf5Array1dOfValues(
932 uint64_t
const* values,
935 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
936 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
937 setValuesOfUInt64Hdf5ArrayOfValues(values, &valueCount, &offset, 1, proxy, patchIndex);
939 DLL_IMPORT_OR_EXPORT
void setValuesOfInt32Hdf5Array1dOfValues(
940 int32_t
const* values,
943 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
944 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
945 setValuesOfInt32Hdf5ArrayOfValues(values, &valueCount, &offset, 1, proxy, patchIndex);
947 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt32Hdf5Array1dOfValues(
948 uint32_t
const* values,
951 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
952 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
953 setValuesOfUInt32Hdf5ArrayOfValues(values, &valueCount, &offset, 1, proxy, patchIndex);
955 DLL_IMPORT_OR_EXPORT
void setValuesOfInt16Hdf5Array1dOfValues(
956 int16_t
const* values,
959 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
960 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
961 setValuesOfInt16Hdf5ArrayOfValues(values, &valueCount, &offset, 1, proxy, patchIndex);
963 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt16Hdf5Array1dOfValues(
964 uint16_t
const* values,
967 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
968 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
969 setValuesOfUInt16Hdf5ArrayOfValues(values, &valueCount, &offset, 1, proxy, patchIndex);
971 DLL_IMPORT_OR_EXPORT
void setValuesOfInt8Hdf5Array1dOfValues(
972 int8_t
const* values,
975 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
976 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
977 setValuesOfInt8Hdf5ArrayOfValues(values, &valueCount, &offset, 1, proxy, patchIndex);
979 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt8Hdf5Array1dOfValues(
980 uint8_t
const* values,
983 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
984 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
985 setValuesOfUInt8Hdf5ArrayOfValues(values, &valueCount, &offset, 1, proxy, patchIndex);
987 DLL_IMPORT_OR_EXPORT
void setValuesOfDoubleHdf5Array1dOfValues(
988 double const * values,
991 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
992 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
993 setValuesOfDoubleHdf5ArrayOfValues(values, &valueCount, &offset, 1, proxy, patchIndex);
995 DLL_IMPORT_OR_EXPORT
void setValuesOfFloatHdf5Array1dOfValues(
996 float const * values,
999 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1000 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1001 setValuesOfFloatHdf5ArrayOfValues(values, &valueCount, &offset, 1, proxy, patchIndex);
1037 int64_t
const* values,
1038 uint64_t valueCountInFastestDim,
1039 uint64_t valueCountInSlowestDim,
1040 uint64_t offsetInFastestDim,
1041 uint64_t offsetInSlowestDim,
1042 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1043 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1044 const uint64_t valueCountPerDimension[2] = { valueCountInSlowestDim, valueCountInFastestDim };
1045 const uint64_t offsetPerDimension[2] = { offsetInSlowestDim, offsetInFastestDim };
1048 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt64Hdf5Array2dOfValues(
1049 uint64_t
const* values,
1050 uint64_t valueCountInFastestDim,
1051 uint64_t valueCountInSlowestDim,
1052 uint64_t offsetInFastestDim,
1053 uint64_t offsetInSlowestDim,
1054 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1055 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1056 const uint64_t valueCountPerDimension[2] = { valueCountInSlowestDim, valueCountInFastestDim };
1057 const uint64_t offsetPerDimension[2] = { offsetInSlowestDim, offsetInFastestDim };
1058 setValuesOfUInt64Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 2, proxy, patchIndex);
1060 DLL_IMPORT_OR_EXPORT
void setValuesOfInt32Hdf5Array2dOfValues(
1061 int32_t
const* values,
1062 uint64_t valueCountInFastestDim,
1063 uint64_t valueCountInSlowestDim,
1064 uint64_t offsetInFastestDim,
1065 uint64_t offsetInSlowestDim,
1066 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1067 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1068 const uint64_t valueCountPerDimension[2] = { valueCountInSlowestDim, valueCountInFastestDim };
1069 const uint64_t offsetPerDimension[2] = { offsetInSlowestDim, offsetInFastestDim };
1070 setValuesOfInt32Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 2, proxy, patchIndex);
1072 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt32Hdf5Array2dOfValues(
1073 uint32_t
const* values,
1074 uint64_t valueCountInFastestDim,
1075 uint64_t valueCountInSlowestDim,
1076 uint64_t offsetInFastestDim,
1077 uint64_t offsetInSlowestDim,
1078 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1079 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1080 const uint64_t valueCountPerDimension[2] = { valueCountInSlowestDim, valueCountInFastestDim };
1081 const uint64_t offsetPerDimension[2] = { offsetInSlowestDim, offsetInFastestDim };
1082 setValuesOfUInt32Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 2, proxy, patchIndex);
1084 DLL_IMPORT_OR_EXPORT
void setValuesOfInt16Hdf5Array2dOfValues(
1085 int16_t
const* values,
1086 uint64_t valueCountInFastestDim,
1087 uint64_t valueCountInSlowestDim,
1088 uint64_t offsetInFastestDim,
1089 uint64_t offsetInSlowestDim,
1090 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1091 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1092 const uint64_t valueCountPerDimension[2] = { valueCountInSlowestDim, valueCountInFastestDim };
1093 const uint64_t offsetPerDimension[2] = { offsetInSlowestDim, offsetInFastestDim };
1094 setValuesOfInt16Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 2, proxy, patchIndex);
1096 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt16Hdf5Array2dOfValues(
1097 uint16_t
const* values,
1098 uint64_t valueCountInFastestDim,
1099 uint64_t valueCountInSlowestDim,
1100 uint64_t offsetInFastestDim,
1101 uint64_t offsetInSlowestDim,
1102 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1103 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1104 const uint64_t valueCountPerDimension[2] = { valueCountInSlowestDim, valueCountInFastestDim };
1105 const uint64_t offsetPerDimension[2] = { offsetInSlowestDim, offsetInFastestDim };
1106 setValuesOfUInt16Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 2, proxy, patchIndex);
1108 DLL_IMPORT_OR_EXPORT
void setValuesOfInt8Hdf5Array2dOfValues(
1109 int8_t
const* values,
1110 uint64_t valueCountInFastestDim,
1111 uint64_t valueCountInSlowestDim,
1112 uint64_t offsetInFastestDim,
1113 uint64_t offsetInSlowestDim,
1114 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1115 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1116 const uint64_t valueCountPerDimension[2] = { valueCountInSlowestDim, valueCountInFastestDim };
1117 const uint64_t offsetPerDimension[2] = { offsetInSlowestDim, offsetInFastestDim };
1118 setValuesOfInt8Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 2, proxy, patchIndex);
1120 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt8Hdf5Array2dOfValues(
1121 uint8_t
const* values,
1122 uint64_t valueCountInFastestDim,
1123 uint64_t valueCountInSlowestDim,
1124 uint64_t offsetInFastestDim,
1125 uint64_t offsetInSlowestDim,
1126 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1127 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1128 const uint64_t valueCountPerDimension[2] = { valueCountInSlowestDim, valueCountInFastestDim };
1129 const uint64_t offsetPerDimension[2] = { offsetInSlowestDim, offsetInFastestDim };
1130 setValuesOfUInt8Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 2, proxy, patchIndex);
1132 DLL_IMPORT_OR_EXPORT
void setValuesOfDoubleHdf5Array2dOfValues(
1133 double const * values,
1134 uint64_t valueCountInFastestDim,
1135 uint64_t valueCountInSlowestDim,
1136 uint64_t offsetInFastestDim,
1137 uint64_t offsetInSlowestDim,
1138 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1139 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1140 const uint64_t valueCountPerDimension[2] = { valueCountInSlowestDim, valueCountInFastestDim };
1141 const uint64_t offsetPerDimension[2] = { offsetInSlowestDim, offsetInFastestDim };
1142 setValuesOfDoubleHdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 2, proxy, patchIndex);
1144 DLL_IMPORT_OR_EXPORT
void setValuesOfFloatHdf5Array2dOfValues(
1145 float const * values,
1146 uint64_t valueCountInFastestDim,
1147 uint64_t valueCountInSlowestDim,
1148 uint64_t offsetInFastestDim,
1149 uint64_t offsetInSlowestDim,
1150 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1151 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1152 const uint64_t valueCountPerDimension[2] = { valueCountInSlowestDim, valueCountInFastestDim };
1153 const uint64_t offsetPerDimension[2] = { offsetInSlowestDim, offsetInFastestDim };
1154 setValuesOfFloatHdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 2, proxy, patchIndex);
1194 int64_t
const* values,
1195 uint64_t valueCountInFastestDim,
1196 uint64_t valueCountInMiddleDim,
1197 uint64_t valueCountInSlowestDim,
1198 uint64_t offsetInFastestDim,
1199 uint64_t offsetInMiddleDim,
1200 uint64_t offsetInSlowestDim,
1201 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1202 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1203 const uint64_t valueCountPerDimension[3] = { valueCountInSlowestDim, valueCountInMiddleDim, valueCountInFastestDim };
1204 const uint64_t offsetPerDimension[3] = { offsetInSlowestDim, offsetInMiddleDim, offsetInFastestDim };
1207 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt64Hdf5Array3dOfValues(
1208 uint64_t
const* values,
1209 uint64_t valueCountInFastestDim,
1210 uint64_t valueCountInMiddleDim,
1211 uint64_t valueCountInSlowestDim,
1212 uint64_t offsetInFastestDim,
1213 uint64_t offsetInMiddleDim,
1214 uint64_t offsetInSlowestDim,
1215 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1216 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1217 const uint64_t valueCountPerDimension[3] = { valueCountInSlowestDim, valueCountInMiddleDim, valueCountInFastestDim };
1218 const uint64_t offsetPerDimension[3] = { offsetInSlowestDim, offsetInMiddleDim, offsetInFastestDim };
1219 setValuesOfUInt64Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 3, proxy, patchIndex);
1221 DLL_IMPORT_OR_EXPORT
void setValuesOfInt32Hdf5Array3dOfValues(
1222 int32_t
const* values,
1223 uint64_t valueCountInFastestDim,
1224 uint64_t valueCountInMiddleDim,
1225 uint64_t valueCountInSlowestDim,
1226 uint64_t offsetInFastestDim,
1227 uint64_t offsetInMiddleDim,
1228 uint64_t offsetInSlowestDim,
1229 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1230 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1231 const uint64_t valueCountPerDimension[3] = { valueCountInSlowestDim, valueCountInMiddleDim, valueCountInFastestDim };
1232 const uint64_t offsetPerDimension[3] = { offsetInSlowestDim, offsetInMiddleDim, offsetInFastestDim };
1233 setValuesOfInt32Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 3, proxy, patchIndex);
1235 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt32Hdf5Array3dOfValues(
1236 uint32_t
const* values,
1237 uint64_t valueCountInFastestDim,
1238 uint64_t valueCountInMiddleDim,
1239 uint64_t valueCountInSlowestDim,
1240 uint64_t offsetInFastestDim,
1241 uint64_t offsetInMiddleDim,
1242 uint64_t offsetInSlowestDim,
1243 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1244 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1245 const uint64_t valueCountPerDimension[3] = { valueCountInSlowestDim, valueCountInMiddleDim, valueCountInFastestDim };
1246 const uint64_t offsetPerDimension[3] = { offsetInSlowestDim, offsetInMiddleDim, offsetInFastestDim };
1247 setValuesOfUInt32Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 3, proxy, patchIndex);
1249 DLL_IMPORT_OR_EXPORT
void setValuesOfInt16Hdf5Array3dOfValues(
1250 int16_t
const* values,
1251 uint64_t valueCountInFastestDim,
1252 uint64_t valueCountInMiddleDim,
1253 uint64_t valueCountInSlowestDim,
1254 uint64_t offsetInFastestDim,
1255 uint64_t offsetInMiddleDim,
1256 uint64_t offsetInSlowestDim,
1257 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1258 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1259 const uint64_t valueCountPerDimension[3] = { valueCountInSlowestDim, valueCountInMiddleDim, valueCountInFastestDim };
1260 const uint64_t offsetPerDimension[3] = { offsetInSlowestDim, offsetInMiddleDim, offsetInFastestDim };
1261 setValuesOfInt16Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 3, proxy, patchIndex);
1263 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt16Hdf5Array3dOfValues(
1264 uint16_t
const* values,
1265 uint64_t valueCountInFastestDim,
1266 uint64_t valueCountInMiddleDim,
1267 uint64_t valueCountInSlowestDim,
1268 uint64_t offsetInFastestDim,
1269 uint64_t offsetInMiddleDim,
1270 uint64_t offsetInSlowestDim,
1271 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1272 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1273 const uint64_t valueCountPerDimension[3] = { valueCountInSlowestDim, valueCountInMiddleDim, valueCountInFastestDim };
1274 const uint64_t offsetPerDimension[3] = { offsetInSlowestDim, offsetInMiddleDim, offsetInFastestDim };
1275 setValuesOfUInt16Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 3, proxy, patchIndex);
1277 DLL_IMPORT_OR_EXPORT
void setValuesOfInt8Hdf5Array3dOfValues(
1278 int8_t
const* values,
1279 uint64_t valueCountInFastestDim,
1280 uint64_t valueCountInMiddleDim,
1281 uint64_t valueCountInSlowestDim,
1282 uint64_t offsetInFastestDim,
1283 uint64_t offsetInMiddleDim,
1284 uint64_t offsetInSlowestDim,
1285 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1286 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1287 const uint64_t valueCountPerDimension[3] = { valueCountInSlowestDim, valueCountInMiddleDim, valueCountInFastestDim };
1288 const uint64_t offsetPerDimension[3] = { offsetInSlowestDim, offsetInMiddleDim, offsetInFastestDim };
1289 setValuesOfInt8Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 3, proxy, patchIndex);
1291 DLL_IMPORT_OR_EXPORT
void setValuesOfUInt8Hdf5Array3dOfValues(
1292 uint8_t
const* values,
1293 uint64_t valueCountInFastestDim,
1294 uint64_t valueCountInMiddleDim,
1295 uint64_t valueCountInSlowestDim,
1296 uint64_t offsetInFastestDim,
1297 uint64_t offsetInMiddleDim,
1298 uint64_t offsetInSlowestDim,
1299 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1300 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1301 const uint64_t valueCountPerDimension[3] = { valueCountInSlowestDim, valueCountInMiddleDim, valueCountInFastestDim };
1302 const uint64_t offsetPerDimension[3] = { offsetInSlowestDim, offsetInMiddleDim, offsetInFastestDim };
1303 setValuesOfUInt8Hdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 3, proxy, patchIndex);
1305 DLL_IMPORT_OR_EXPORT
void setValuesOfDoubleHdf5Array3dOfValues(
1306 double const * values,
1307 uint64_t valueCountInFastestDim,
1308 uint64_t valueCountInMiddleDim,
1309 uint64_t valueCountInSlowestDim,
1310 uint64_t offsetInFastestDim,
1311 uint64_t offsetInMiddleDim,
1312 uint64_t offsetInSlowestDim,
1313 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1314 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1315 const uint64_t valueCountPerDimension[3] = { valueCountInSlowestDim, valueCountInMiddleDim, valueCountInFastestDim };
1316 const uint64_t offsetPerDimension[3] = { offsetInSlowestDim, offsetInMiddleDim, offsetInFastestDim };
1317 setValuesOfDoubleHdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 3, proxy, patchIndex);
1319 DLL_IMPORT_OR_EXPORT
void setValuesOfFloatHdf5Array3dOfValues(
1320 float const * values,
1321 uint64_t valueCountInFastestDim,
1322 uint64_t valueCountInMiddleDim,
1323 uint64_t valueCountInSlowestDim,
1324 uint64_t offsetInFastestDim,
1325 uint64_t offsetInMiddleDim,
1326 uint64_t offsetInSlowestDim,
1327 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1328 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)()) {
1329 const uint64_t valueCountPerDimension[3] = { valueCountInSlowestDim, valueCountInMiddleDim, valueCountInFastestDim };
1330 const uint64_t offsetPerDimension[3] = { offsetInSlowestDim, offsetInMiddleDim, offsetInFastestDim };
1331 setValuesOfFloatHdf5ArrayOfValues(values, valueCountPerDimension, offsetPerDimension, 3, proxy, patchIndex);
1358 uint64_t patchIndex,
1360 uint64_t
const * numValuesInEachDimension,
1361 uint64_t
const * offsetInEachDimension,
1362 unsigned int numArrayDimensions
1389 uint64_t patchIndex,
1391 uint64_t valueCountInFastestDim,
1392 uint64_t valueCountInMiddleDim,
1393 uint64_t valueCountInSlowestDim,
1394 uint64_t offsetInFastestDim,
1395 uint64_t offsetInMiddleDim,
1396 uint64_t offsetInSlowestDim
1421 uint64_t patchIndex,
1423 const uint64_t* numValuesInEachDimension,
1424 const uint64_t* offsetInEachDimension,
1425 unsigned int numArrayDimensions
1452 uint64_t patchIndex,
1454 unsigned int valueCountInFastestDim,
1455 unsigned int valueCountInMiddleDim,
1456 unsigned int valueCountInSlowestDim,
1457 unsigned int offsetInFastestDim,
1458 unsigned int offsetInMiddleDim,
1459 unsigned int offsetInSlowestDim
1490 [[deprecated(
"Use pushBackArray1dOfValues instead.")]]
1511 [[deprecated(
"Use pushBackArray2dOfValues instead.")]]
1512 DLL_IMPORT_OR_EXPORT
void pushBackDoubleHdf5Array2dOfValues(
const double * values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy =
nullptr);
1534 [[deprecated(
"Use pushBackArray3dOfValues instead.")]]
1535 DLL_IMPORT_OR_EXPORT
void pushBackDoubleHdf5Array3dOfValues(
const double * values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy =
nullptr);
1554 [[deprecated(
"Use pushBackArrayOfValues instead.")]]
1555 DLL_IMPORT_OR_EXPORT
void pushBackDoubleHdf5ArrayOfValues(
double const * values, uint64_t
const * numValues,
unsigned int numArrayDimensions, EML2_NS::AbstractHdfProxy* proxy =
nullptr);
1562 [[deprecated(
"Use pushBackArray1dOfValues instead.")]]
1570 [[deprecated(
"Use pushBackArray2dOfValues instead.")]]
1571 DLL_IMPORT_OR_EXPORT
void pushBackFloatHdf5Array2dOfValues(
const float * values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy =
nullptr);
1578 [[deprecated(
"Use pushBackArray3dOfValues instead.")]]
1579 DLL_IMPORT_OR_EXPORT
void pushBackFloatHdf5Array3dOfValues(
const float * values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, EML2_NS::AbstractHdfProxy* proxy =
nullptr);
1586 [[deprecated(
"Use pushBackArrayOfValues instead.")]]
1587 DLL_IMPORT_OR_EXPORT
void pushBackFloatHdf5ArrayOfValues(
float const * values, uint64_t
const * numValues,
unsigned int numArrayDimensions, EML2_NS::AbstractHdfProxy* proxy =
nullptr);
1609 [[deprecated(
"Use getArrayOfValuesOfPatch instead.")]]
1610 DLL_IMPORT_OR_EXPORT
void getDoubleValuesOfPatch(uint64_t patchIndex,
double * values)
const {
1614 [[deprecated(
"Use getArrayOfValuesOfPatch instead.")]]
1615 DLL_IMPORT_OR_EXPORT
void getFloatValuesOfPatch(uint64_t patchIndex,
float * values)
const {
1616 getArrayOfValuesOfPatch(patchIndex, values);
1642 uint64_t patchIndex,
1644 uint64_t
const * numValuesInEachDimension,
1645 uint64_t
const * offsetInEachDimension,
1646 unsigned int numArrayDimensions
1672 uint64_t patchIndex,
1674 uint64_t valueCountInFastestDim,
1675 uint64_t valueCountInMiddleDim,
1676 uint64_t valueCountInSlowestDim,
1677 uint64_t offsetInFastestDim,
1678 uint64_t offsetInMiddleDim,
1679 uint64_t offsetInSlowestDim
1689 DLL_IMPORT_OR_EXPORT AbstractValuesProperty(gsoap_resqml2_0_1::eml20__DataObjectReference* partialObject) : AbstractProperty(partialObject) {}
1702 AbstractValuesProperty(gsoap_resqml2_0_1::resqml20__AbstractValuesProperty* fromGsoap) : RESQML2_NS::AbstractProperty(fromGsoap) {}
1703 AbstractValuesProperty(gsoap_eml2_3::resqml22__AbstractValuesProperty* fromGsoap) : RESQML2_NS::AbstractProperty(fromGsoap) {}
1716 EML2_NS::AbstractHdfProxy* getDatasetOfPatch(uint64_t patchIndex, int64_t & nullValue, std::string & dsPath)
const final;
1727 COMMON_NS::DataObjectReference getHdfProxyDor(uint64_t patchIndex)
const final;
1760 void setValuesOfHdf5ArrayOfValues(
1761 COMMON_NS::AbstractObject::numericalDatatypeEnum datatype,
1763 uint64_t
const * numValues,
1764 uint64_t
const * offsetValues,
1765 unsigned int numArrayDimensions,
1766 EML2_NS::AbstractHdfProxy* proxy =
nullptr,
1767 uint64_t patchIndex = (std::numeric_limits<uint64_t>::max)());
1770 DLL_IMPORT_OR_EXPORT
void pushBackArrayOfValues(
const void* values, COMMON_NS::AbstractObject::numericalDatatypeEnum numericalDatatype,
const uint64_t* numValues,
unsigned int numDimensionsInArray,
1771 EML2_NS::AbstractHdfProxy* proxy, int64_t nullValue);
1773 DLL_IMPORT_OR_EXPORT
virtual COMMON_NS::NumberArrayStatistics<int8_t> getInt8Statistics(uint64_t patchIndex)
const {
1774 auto nullValue = getNullValueOfPatch(patchIndex);
1775 if (nullValue > (std::numeric_limits<int8_t>::max)() || nullValue < (std::numeric_limits<int8_t>::min)()) {
1776 nullValue = (std::numeric_limits<int8_t>::max)();
1778 COMMON_NS::NumberArrayStatistics<int8_t> result;
1779 result.setNullValue(
static_cast<int8_t
>(nullValue));
1782 DLL_IMPORT_OR_EXPORT
virtual COMMON_NS::NumberArrayStatistics<uint8_t> getUInt8Statistics(uint64_t patchIndex)
const {
1783 auto nullValue = getNullValueOfPatch(patchIndex);
1784 if (nullValue > (std::numeric_limits<uint8_t>::max)() || nullValue < 0) {
1785 nullValue = (std::numeric_limits<uint8_t>::max)();
1787 COMMON_NS::NumberArrayStatistics<uint8_t> result;
1788 result.setNullValue(
static_cast<uint8_t
>(nullValue));
1791 DLL_IMPORT_OR_EXPORT
virtual COMMON_NS::NumberArrayStatistics<int16_t> getInt16Statistics(uint64_t patchIndex)
const {
1792 auto nullValue = getNullValueOfPatch(patchIndex);
1793 if (nullValue > (std::numeric_limits<int16_t>::max)() || nullValue < (std::numeric_limits<int16_t>::min)()) {
1794 nullValue = (std::numeric_limits<int16_t>::max)();
1796 COMMON_NS::NumberArrayStatistics<int16_t> result;
1797 result.setNullValue(
static_cast<int16_t
>(nullValue));
1800 DLL_IMPORT_OR_EXPORT
virtual COMMON_NS::NumberArrayStatistics<uint16_t> getUInt16Statistics(uint64_t patchIndex)
const {
1801 auto nullValue = getNullValueOfPatch(patchIndex);
1802 if (nullValue > (std::numeric_limits<uint16_t>::max)() || nullValue < 0) {
1803 nullValue = (std::numeric_limits<uint16_t>::max)();
1805 COMMON_NS::NumberArrayStatistics<uint16_t> result;
1806 result.setNullValue(
static_cast<uint16_t
>(nullValue));
1809 DLL_IMPORT_OR_EXPORT
virtual COMMON_NS::NumberArrayStatistics<int32_t> getInt32Statistics(uint64_t patchIndex)
const {
1810 auto nullValue = getNullValueOfPatch(patchIndex);
1811 if (nullValue > (std::numeric_limits<int32_t>::max)() || nullValue < (std::numeric_limits<int32_t>::min)()) {
1812 nullValue = (std::numeric_limits<int32_t>::max)();
1814 COMMON_NS::NumberArrayStatistics<int32_t> result;
1815 result.setNullValue(
static_cast<int32_t
>(nullValue));
1818 DLL_IMPORT_OR_EXPORT
virtual COMMON_NS::NumberArrayStatistics<uint32_t> getUInt32Statistics(uint64_t patchIndex)
const {
1819 auto nullValue = getNullValueOfPatch(patchIndex);
1820 if (nullValue > (std::numeric_limits<uint32_t>::max)() || nullValue < 0) {
1821 nullValue = (std::numeric_limits<uint32_t>::max)();
1823 COMMON_NS::NumberArrayStatistics<uint32_t> result;
1824 result.setNullValue(
static_cast<uint32_t
>(nullValue));
1827 DLL_IMPORT_OR_EXPORT
virtual COMMON_NS::NumberArrayStatistics<int64_t> getInt64Statistics(uint64_t patchIndex)
const {
1828 COMMON_NS::NumberArrayStatistics<int64_t> result;
1829 result.setNullValue(getNullValueOfPatch(patchIndex));
1832 DLL_IMPORT_OR_EXPORT
virtual COMMON_NS::NumberArrayStatistics<uint64_t> getUInt64Statistics(uint64_t patchIndex)
const {
1833 COMMON_NS::NumberArrayStatistics<uint64_t> result;
1834 result.setNullValue(getNullValueOfPatch(patchIndex));
1837 DLL_IMPORT_OR_EXPORT
virtual COMMON_NS::NumberArrayStatistics<float> getFloatStatistics(uint64_t)
const {
return COMMON_NS::NumberArrayStatistics<float>(); }
1838 DLL_IMPORT_OR_EXPORT
virtual COMMON_NS::NumberArrayStatistics<double> getDoubleStatistics(uint64_t)
const {
return COMMON_NS::NumberArrayStatistics<double>(); }
1840 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__IntegerArrayStatistics* createIntegerArrayStatisticsFrom(
const COMMON_NS::NumberArrayStatistics<int8_t>& stats,
size_t index);
1841 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__IntegerArrayStatistics* createIntegerArrayStatisticsFrom(
const COMMON_NS::NumberArrayStatistics<uint8_t>& stats,
size_t index);
1842 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__IntegerArrayStatistics* createIntegerArrayStatisticsFrom(
const COMMON_NS::NumberArrayStatistics<int16_t>& stats,
size_t index);
1843 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__IntegerArrayStatistics* createIntegerArrayStatisticsFrom(
const COMMON_NS::NumberArrayStatistics<uint16_t>& stats,
size_t index);
1844 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__IntegerArrayStatistics* createIntegerArrayStatisticsFrom(
const COMMON_NS::NumberArrayStatistics<int32_t>& stats,
size_t index);
1845 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__IntegerArrayStatistics* createIntegerArrayStatisticsFrom(
const COMMON_NS::NumberArrayStatistics<uint32_t>& stats,
size_t index);
1846 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__IntegerArrayStatistics* createIntegerArrayStatisticsFrom(
const COMMON_NS::NumberArrayStatistics<int64_t>& stats,
size_t index);
1847 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__IntegerArrayStatistics* createIntegerArrayStatisticsFrom(
const COMMON_NS::NumberArrayStatistics<uint64_t>& stats,
size_t index);
1848 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__FloatingPointArrayStatistics* createFloatingPointArrayStatisticsFrom(
const COMMON_NS::NumberArrayStatistics<float>& stats,
size_t index);
1849 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__FloatingPointArrayStatistics* createFloatingPointArrayStatisticsFrom(
const COMMON_NS::NumberArrayStatistics<double>& stats,
size_t index);
1851 template<
typename T>
1852 void setStatistics(
const COMMON_NS::NumberArrayStatistics<T>& stats,
size_t patchIndex) {
1855 if (gsoapProxy2_0_1 !=
nullptr) {
1856 if (gsoapProxy2_0_1->soap_type() == SOAP_TYPE_gsoap_resqml2_0_1_resqml20__obj_USCOREContinuousProperty) {
1857 gsoap_resqml2_0_1::_resqml20__ContinuousProperty* prop =
static_cast<gsoap_resqml2_0_1::_resqml20__ContinuousProperty*
>(gsoapProxy2_0_1);
1858 for (
size_t i = 0; i < stats.getMinimumSize(); ++i) {
1859 const auto minStat = stats.getMinimum(i);
1860 if (prop->MinimumValue.size() > i) {
1861 if (minStat == minStat && prop->MinimumValue[i] > minStat) {
1862 prop->MinimumValue[i] = minStat;
1866 prop->MinimumValue.push_back(minStat);
1869 for (
size_t i = 0; i < stats.getMaximumSize(); ++i) {
1870 const auto maxStat = stats.getMaximum(i);
1871 if (prop->MaximumValue.size() > i) {
1872 if (maxStat == maxStat && prop->MaximumValue[i] < maxStat) {
1873 prop->MaximumValue[i] = maxStat;
1877 prop->MaximumValue.push_back(maxStat);
1881 else if (gsoapProxy2_0_1->soap_type() == SOAP_TYPE_gsoap_resqml2_0_1_resqml20__obj_USCOREDiscreteProperty) {
1882 gsoap_resqml2_0_1::_resqml20__DiscreteProperty* prop =
static_cast<gsoap_resqml2_0_1::_resqml20__DiscreteProperty*
>(gsoapProxy2_0_1);
1883 for (
size_t i = 0; i < stats.getMinimumSize(); ++i) {
1884 const auto minStat = stats.getMinimum(i);
1885 if (prop->MinimumValue.size() > i) {
1886 if (minStat == minStat && prop->MinimumValue[i] > minStat) {
1887 prop->MinimumValue[i] = minStat;
1891 prop->MinimumValue.push_back(minStat);
1894 for (
size_t i = 0; i < stats.getMaximumSize(); ++i) {
1895 const auto maxStat = stats.getMaximum(i);
1896 if (prop->MaximumValue.size() > i) {
1897 if (maxStat == maxStat && prop->MaximumValue[i] < maxStat) {
1898 prop->MaximumValue[i] = maxStat;
1902 prop->MaximumValue.push_back(maxStat);
1907 throw std::invalid_argument(
"In RESQML 2.0.1, only continuous and discrete properties can transfer only minimum and maximum values");
1910 else if (gsoapProxy2_3 !=
nullptr) {
1911 const auto valuePerIndexableElement = getValueCountPerIndexableElement();
1912 gsoap_eml2_3::resqml22__AbstractValuesProperty* prop =
static_cast<gsoap_eml2_3::resqml22__AbstractValuesProperty*
>(gsoapProxy2_3);
1913 if (
auto* integerArray =
dynamic_cast<gsoap_eml2_3::eml23__AbstractIntegerArray*
>(prop->ValuesForPatch.at(patchIndex))) {
1914 if constexpr (std::is_integral_v<T>) {
1915 integerArray->Statistics.clear();
1916 for (
size_t i = 0; i < valuePerIndexableElement; ++i) {
1917 integerArray->Statistics.push_back(createIntegerArrayStatisticsFrom(stats, i));
1921 else if (
auto* floatingPointArray =
dynamic_cast<gsoap_eml2_3::eml23__AbstractFloatingPointArray*
>(prop->ValuesForPatch.at(patchIndex))) {
1922 if constexpr (std::is_floating_point_v<T>) {
1923 floatingPointArray->Statistics.clear();
1924 for (
size_t i = 0; i < valuePerIndexableElement; ++i) {
1925 floatingPointArray->Statistics.push_back(createFloatingPointArrayStatisticsFrom(stats, i));
1930 throw std::invalid_argument(
"In RESQML 2.2, only floating point and integer property array of values can haev statistics");
1934 throw std::logic_error(
"Only RESQML 2.2 and 2.0.1 are supported for now.");