diff --git a/README.md b/README.md index 6377a092d..aa187be20 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ Indicates the most recent driver version used to test builds of the current sour | NI-RFmx CDMA2k | 2023 Q1 | Not Supported | Not Supported | | NI-RFmx Demod | 2023 Q1 | Not Supported | Not Supported | | NI-RFmx GSM | 2023 Q1 | Not Supported | Not Supported | -| NI-RFmx LTE | 2024 Q2 | Not Supported | Not Supported | +| NI-RFmx LTE | 2024 Q3 | Not Supported | Not Supported | | NI-RFmx NR | 2024 Q1 | Not Supported | Not Supported | | NI-RFmx SpecAn | 2024 Q3 | Not Supported | Not Supported | | NI-RFmx TD-SCDMA | 2023 Q1 | Not Supported | Not Supported | diff --git a/generated/nirfmxlte/nirfmxlte.proto b/generated/nirfmxlte/nirfmxlte.proto index 92c246463..466ef5061 100644 --- a/generated/nirfmxlte/nirfmxlte.proto +++ b/generated/nirfmxlte/nirfmxlte.proto @@ -1,6 +1,6 @@ //--------------------------------------------------------------------- -// This file is generated from NI-RFMXLTE API metadata version 24.5.0 +// This file is generated from NI-RFMXLTE API metadata version 24.8.0 //--------------------------------------------------------------------- // Proto file for the NI-RFMXLTE Metadata //--------------------------------------------------------------------- @@ -180,6 +180,8 @@ service NiRFmxLTE { rpc ModAccFetchInBandEmissionMargin(ModAccFetchInBandEmissionMarginRequest) returns (ModAccFetchInBandEmissionMarginResponse); rpc ModAccFetchInBandEmissionMarginArray(ModAccFetchInBandEmissionMarginArrayRequest) returns (ModAccFetchInBandEmissionMarginArrayResponse); rpc ModAccFetchInBandEmissionTrace(ModAccFetchInBandEmissionTraceRequest) returns (ModAccFetchInBandEmissionTraceResponse); + rpc ModAccFetchMaximumEVMHighPerSymbolTrace(ModAccFetchMaximumEVMHighPerSymbolTraceRequest) returns (ModAccFetchMaximumEVMHighPerSymbolTraceResponse); + rpc ModAccFetchMaximumEVMLowPerSymbolTrace(ModAccFetchMaximumEVMLowPerSymbolTraceRequest) returns (ModAccFetchMaximumEVMLowPerSymbolTraceResponse); rpc ModAccFetchMaximumEVMPerSlotTrace(ModAccFetchMaximumEVMPerSlotTraceRequest) returns (ModAccFetchMaximumEVMPerSlotTraceResponse); rpc ModAccFetchMaximumEVMPerSubcarrierTrace(ModAccFetchMaximumEVMPerSubcarrierTraceRequest) returns (ModAccFetchMaximumEVMPerSubcarrierTraceResponse); rpc ModAccFetchMaximumEVMPerSymbolTrace(ModAccFetchMaximumEVMPerSymbolTraceRequest) returns (ModAccFetchMaximumEVMPerSymbolTraceResponse); @@ -3560,6 +3562,34 @@ message ModAccFetchInBandEmissionTraceResponse { int32 actual_array_size = 6; } +message ModAccFetchMaximumEVMHighPerSymbolTraceRequest { + nidevice_grpc.Session instrument = 1; + string selector_string = 2; + double timeout = 3; +} + +message ModAccFetchMaximumEVMHighPerSymbolTraceResponse { + int32 status = 1; + double x0 = 2; + double dx = 3; + repeated float maximum_evm_high_per_symbol = 4; + int32 actual_array_size = 5; +} + +message ModAccFetchMaximumEVMLowPerSymbolTraceRequest { + nidevice_grpc.Session instrument = 1; + string selector_string = 2; + double timeout = 3; +} + +message ModAccFetchMaximumEVMLowPerSymbolTraceResponse { + int32 status = 1; + double x0 = 2; + double dx = 3; + repeated float maximum_evm_low_per_symbol = 4; + int32 actual_array_size = 5; +} + message ModAccFetchMaximumEVMPerSlotTraceRequest { nidevice_grpc.Session instrument = 1; string selector_string = 2; diff --git a/generated/nirfmxlte/nirfmxlte_client.cpp b/generated/nirfmxlte/nirfmxlte_client.cpp index 3e45c6b9e..7db1aebb5 100644 --- a/generated/nirfmxlte/nirfmxlte_client.cpp +++ b/generated/nirfmxlte/nirfmxlte_client.cpp @@ -3539,6 +3539,44 @@ mod_acc_fetch_in_band_emission_trace(const StubPtr& stub, const nidevice_grpc::S return response; } +ModAccFetchMaximumEVMHighPerSymbolTraceResponse +mod_acc_fetch_maximum_evm_high_per_symbol_trace(const StubPtr& stub, const nidevice_grpc::Session& instrument, const std::string& selector_string, const double& timeout) +{ + ::grpc::ClientContext context; + + auto request = ModAccFetchMaximumEVMHighPerSymbolTraceRequest{}; + request.mutable_instrument()->CopyFrom(instrument); + request.set_selector_string(selector_string); + request.set_timeout(timeout); + + auto response = ModAccFetchMaximumEVMHighPerSymbolTraceResponse{}; + + raise_if_error( + stub->ModAccFetchMaximumEVMHighPerSymbolTrace(&context, request, &response), + context); + + return response; +} + +ModAccFetchMaximumEVMLowPerSymbolTraceResponse +mod_acc_fetch_maximum_evm_low_per_symbol_trace(const StubPtr& stub, const nidevice_grpc::Session& instrument, const std::string& selector_string, const double& timeout) +{ + ::grpc::ClientContext context; + + auto request = ModAccFetchMaximumEVMLowPerSymbolTraceRequest{}; + request.mutable_instrument()->CopyFrom(instrument); + request.set_selector_string(selector_string); + request.set_timeout(timeout); + + auto response = ModAccFetchMaximumEVMLowPerSymbolTraceResponse{}; + + raise_if_error( + stub->ModAccFetchMaximumEVMLowPerSymbolTrace(&context, request, &response), + context); + + return response; +} + ModAccFetchMaximumEVMPerSlotTraceResponse mod_acc_fetch_maximum_evm_per_slot_trace(const StubPtr& stub, const nidevice_grpc::Session& instrument, const std::string& selector_string, const double& timeout) { diff --git a/generated/nirfmxlte/nirfmxlte_client.h b/generated/nirfmxlte/nirfmxlte_client.h index 47da2ca77..1dc3004b3 100644 --- a/generated/nirfmxlte/nirfmxlte_client.h +++ b/generated/nirfmxlte/nirfmxlte_client.h @@ -185,6 +185,8 @@ ModAccFetchIQImpairmentsArrayResponse mod_acc_fetch_iq_impairments_array(const S ModAccFetchInBandEmissionMarginResponse mod_acc_fetch_in_band_emission_margin(const StubPtr& stub, const nidevice_grpc::Session& instrument, const std::string& selector_string, const double& timeout); ModAccFetchInBandEmissionMarginArrayResponse mod_acc_fetch_in_band_emission_margin_array(const StubPtr& stub, const nidevice_grpc::Session& instrument, const std::string& selector_string, const double& timeout); ModAccFetchInBandEmissionTraceResponse mod_acc_fetch_in_band_emission_trace(const StubPtr& stub, const nidevice_grpc::Session& instrument, const std::string& selector_string, const double& timeout); +ModAccFetchMaximumEVMHighPerSymbolTraceResponse mod_acc_fetch_maximum_evm_high_per_symbol_trace(const StubPtr& stub, const nidevice_grpc::Session& instrument, const std::string& selector_string, const double& timeout); +ModAccFetchMaximumEVMLowPerSymbolTraceResponse mod_acc_fetch_maximum_evm_low_per_symbol_trace(const StubPtr& stub, const nidevice_grpc::Session& instrument, const std::string& selector_string, const double& timeout); ModAccFetchMaximumEVMPerSlotTraceResponse mod_acc_fetch_maximum_evm_per_slot_trace(const StubPtr& stub, const nidevice_grpc::Session& instrument, const std::string& selector_string, const double& timeout); ModAccFetchMaximumEVMPerSubcarrierTraceResponse mod_acc_fetch_maximum_evm_per_subcarrier_trace(const StubPtr& stub, const nidevice_grpc::Session& instrument, const std::string& selector_string, const double& timeout); ModAccFetchMaximumEVMPerSymbolTraceResponse mod_acc_fetch_maximum_evm_per_symbol_trace(const StubPtr& stub, const nidevice_grpc::Session& instrument, const std::string& selector_string, const double& timeout); diff --git a/generated/nirfmxlte/nirfmxlte_compilation_test.cpp b/generated/nirfmxlte/nirfmxlte_compilation_test.cpp index cc6c01637..e5776ff99 100644 --- a/generated/nirfmxlte/nirfmxlte_compilation_test.cpp +++ b/generated/nirfmxlte/nirfmxlte_compilation_test.cpp @@ -822,6 +822,16 @@ int32 ModAccFetchInBandEmissionTrace(niRFmxInstrHandle instrumentHandle, char se return RFmxLTE_ModAccFetchInBandEmissionTrace(instrumentHandle, selectorString, timeout, x0, dx, inBandEmission, inBandEmissionMask, arraySize, actualArraySize); } +int32 ModAccFetchMaximumEVMHighPerSymbolTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMHighPerSymbol[], int32 arraySize, int32* actualArraySize) +{ + return RFmxLTE_ModAccFetchMaximumEVMHighPerSymbolTrace(instrumentHandle, selectorString, timeout, x0, dx, maximumEVMHighPerSymbol, arraySize, actualArraySize); +} + +int32 ModAccFetchMaximumEVMLowPerSymbolTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMLowPerSymbol[], int32 arraySize, int32* actualArraySize) +{ + return RFmxLTE_ModAccFetchMaximumEVMLowPerSymbolTrace(instrumentHandle, selectorString, timeout, x0, dx, maximumEVMLowPerSymbol, arraySize, actualArraySize); +} + int32 ModAccFetchMaximumEVMPerSlotTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMPerSlot[], int32 arraySize, int32* actualArraySize) { return RFmxLTE_ModAccFetchMaximumEVMPerSlotTrace(instrumentHandle, selectorString, timeout, x0, dx, maximumEVMPerSlot, arraySize, actualArraySize); diff --git a/generated/nirfmxlte/nirfmxlte_library.cpp b/generated/nirfmxlte/nirfmxlte_library.cpp index 96acec49b..05a9682dc 100644 --- a/generated/nirfmxlte/nirfmxlte_library.cpp +++ b/generated/nirfmxlte/nirfmxlte_library.cpp @@ -190,6 +190,8 @@ NiRFmxLTELibrary::NiRFmxLTELibrary(std::shared_ptr(shared_library_->get_function_pointer("RFmxLTE_ModAccFetchInBandEmissionMargin")); function_pointers_.ModAccFetchInBandEmissionMarginArray = reinterpret_cast(shared_library_->get_function_pointer("RFmxLTE_ModAccFetchInBandEmissionMarginArray")); function_pointers_.ModAccFetchInBandEmissionTrace = reinterpret_cast(shared_library_->get_function_pointer("RFmxLTE_ModAccFetchInBandEmissionTrace")); + function_pointers_.ModAccFetchMaximumEVMHighPerSymbolTrace = reinterpret_cast(shared_library_->get_function_pointer("RFmxLTE_ModAccFetchMaximumEVMHighPerSymbolTrace")); + function_pointers_.ModAccFetchMaximumEVMLowPerSymbolTrace = reinterpret_cast(shared_library_->get_function_pointer("RFmxLTE_ModAccFetchMaximumEVMLowPerSymbolTrace")); function_pointers_.ModAccFetchMaximumEVMPerSlotTrace = reinterpret_cast(shared_library_->get_function_pointer("RFmxLTE_ModAccFetchMaximumEVMPerSlotTrace")); function_pointers_.ModAccFetchMaximumEVMPerSubcarrierTrace = reinterpret_cast(shared_library_->get_function_pointer("RFmxLTE_ModAccFetchMaximumEVMPerSubcarrierTrace")); function_pointers_.ModAccFetchMaximumEVMPerSymbolTrace = reinterpret_cast(shared_library_->get_function_pointer("RFmxLTE_ModAccFetchMaximumEVMPerSymbolTrace")); @@ -1637,6 +1639,22 @@ int32 NiRFmxLTELibrary::ModAccFetchInBandEmissionTrace(niRFmxInstrHandle instrum return function_pointers_.ModAccFetchInBandEmissionTrace(instrumentHandle, selectorString, timeout, x0, dx, inBandEmission, inBandEmissionMask, arraySize, actualArraySize); } +int32 NiRFmxLTELibrary::ModAccFetchMaximumEVMHighPerSymbolTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMHighPerSymbol[], int32 arraySize, int32* actualArraySize) +{ + if (!function_pointers_.ModAccFetchMaximumEVMHighPerSymbolTrace) { + throw nidevice_grpc::LibraryLoadException("Could not find RFmxLTE_ModAccFetchMaximumEVMHighPerSymbolTrace."); + } + return function_pointers_.ModAccFetchMaximumEVMHighPerSymbolTrace(instrumentHandle, selectorString, timeout, x0, dx, maximumEVMHighPerSymbol, arraySize, actualArraySize); +} + +int32 NiRFmxLTELibrary::ModAccFetchMaximumEVMLowPerSymbolTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMLowPerSymbol[], int32 arraySize, int32* actualArraySize) +{ + if (!function_pointers_.ModAccFetchMaximumEVMLowPerSymbolTrace) { + throw nidevice_grpc::LibraryLoadException("Could not find RFmxLTE_ModAccFetchMaximumEVMLowPerSymbolTrace."); + } + return function_pointers_.ModAccFetchMaximumEVMLowPerSymbolTrace(instrumentHandle, selectorString, timeout, x0, dx, maximumEVMLowPerSymbol, arraySize, actualArraySize); +} + int32 NiRFmxLTELibrary::ModAccFetchMaximumEVMPerSlotTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMPerSlot[], int32 arraySize, int32* actualArraySize) { if (!function_pointers_.ModAccFetchMaximumEVMPerSlotTrace) { diff --git a/generated/nirfmxlte/nirfmxlte_library.h b/generated/nirfmxlte/nirfmxlte_library.h index 0f6dcac82..b3d5d9a4a 100644 --- a/generated/nirfmxlte/nirfmxlte_library.h +++ b/generated/nirfmxlte/nirfmxlte_library.h @@ -184,6 +184,8 @@ class NiRFmxLTELibrary : public nirfmxlte_grpc::NiRFmxLTELibraryInterface { int32 ModAccFetchInBandEmissionMargin(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* inBandEmissionMargin) override; int32 ModAccFetchInBandEmissionMarginArray(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64 inBandEmissionMargin[], int32 arraySize, int32* actualArraySize) override; int32 ModAccFetchInBandEmissionTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 inBandEmission[], float32 inBandEmissionMask[], int32 arraySize, int32* actualArraySize) override; + int32 ModAccFetchMaximumEVMHighPerSymbolTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMHighPerSymbol[], int32 arraySize, int32* actualArraySize) override; + int32 ModAccFetchMaximumEVMLowPerSymbolTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMLowPerSymbol[], int32 arraySize, int32* actualArraySize) override; int32 ModAccFetchMaximumEVMPerSlotTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMPerSlot[], int32 arraySize, int32* actualArraySize) override; int32 ModAccFetchMaximumEVMPerSubcarrierTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMPerSubcarrier[], int32 arraySize, int32* actualArraySize) override; int32 ModAccFetchMaximumEVMPerSymbolTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMPerSymbol[], int32 arraySize, int32* actualArraySize) override; @@ -479,6 +481,8 @@ class NiRFmxLTELibrary : public nirfmxlte_grpc::NiRFmxLTELibraryInterface { using ModAccFetchInBandEmissionMarginPtr = decltype(&RFmxLTE_ModAccFetchInBandEmissionMargin); using ModAccFetchInBandEmissionMarginArrayPtr = decltype(&RFmxLTE_ModAccFetchInBandEmissionMarginArray); using ModAccFetchInBandEmissionTracePtr = decltype(&RFmxLTE_ModAccFetchInBandEmissionTrace); + using ModAccFetchMaximumEVMHighPerSymbolTracePtr = decltype(&RFmxLTE_ModAccFetchMaximumEVMHighPerSymbolTrace); + using ModAccFetchMaximumEVMLowPerSymbolTracePtr = decltype(&RFmxLTE_ModAccFetchMaximumEVMLowPerSymbolTrace); using ModAccFetchMaximumEVMPerSlotTracePtr = decltype(&RFmxLTE_ModAccFetchMaximumEVMPerSlotTrace); using ModAccFetchMaximumEVMPerSubcarrierTracePtr = decltype(&RFmxLTE_ModAccFetchMaximumEVMPerSubcarrierTrace); using ModAccFetchMaximumEVMPerSymbolTracePtr = decltype(&RFmxLTE_ModAccFetchMaximumEVMPerSymbolTrace); @@ -774,6 +778,8 @@ class NiRFmxLTELibrary : public nirfmxlte_grpc::NiRFmxLTELibraryInterface { ModAccFetchInBandEmissionMarginPtr ModAccFetchInBandEmissionMargin; ModAccFetchInBandEmissionMarginArrayPtr ModAccFetchInBandEmissionMarginArray; ModAccFetchInBandEmissionTracePtr ModAccFetchInBandEmissionTrace; + ModAccFetchMaximumEVMHighPerSymbolTracePtr ModAccFetchMaximumEVMHighPerSymbolTrace; + ModAccFetchMaximumEVMLowPerSymbolTracePtr ModAccFetchMaximumEVMLowPerSymbolTrace; ModAccFetchMaximumEVMPerSlotTracePtr ModAccFetchMaximumEVMPerSlotTrace; ModAccFetchMaximumEVMPerSubcarrierTracePtr ModAccFetchMaximumEVMPerSubcarrierTrace; ModAccFetchMaximumEVMPerSymbolTracePtr ModAccFetchMaximumEVMPerSymbolTrace; diff --git a/generated/nirfmxlte/nirfmxlte_library_interface.h b/generated/nirfmxlte/nirfmxlte_library_interface.h index 1aa9bcfc6..5e945648b 100644 --- a/generated/nirfmxlte/nirfmxlte_library_interface.h +++ b/generated/nirfmxlte/nirfmxlte_library_interface.h @@ -178,6 +178,8 @@ class NiRFmxLTELibraryInterface { virtual int32 ModAccFetchInBandEmissionMargin(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* inBandEmissionMargin) = 0; virtual int32 ModAccFetchInBandEmissionMarginArray(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64 inBandEmissionMargin[], int32 arraySize, int32* actualArraySize) = 0; virtual int32 ModAccFetchInBandEmissionTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 inBandEmission[], float32 inBandEmissionMask[], int32 arraySize, int32* actualArraySize) = 0; + virtual int32 ModAccFetchMaximumEVMHighPerSymbolTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMHighPerSymbol[], int32 arraySize, int32* actualArraySize) = 0; + virtual int32 ModAccFetchMaximumEVMLowPerSymbolTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMLowPerSymbol[], int32 arraySize, int32* actualArraySize) = 0; virtual int32 ModAccFetchMaximumEVMPerSlotTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMPerSlot[], int32 arraySize, int32* actualArraySize) = 0; virtual int32 ModAccFetchMaximumEVMPerSubcarrierTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMPerSubcarrier[], int32 arraySize, int32* actualArraySize) = 0; virtual int32 ModAccFetchMaximumEVMPerSymbolTrace(niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMPerSymbol[], int32 arraySize, int32* actualArraySize) = 0; diff --git a/generated/nirfmxlte/nirfmxlte_mock_library.h b/generated/nirfmxlte/nirfmxlte_mock_library.h index d380e6325..c28fa6c3f 100644 --- a/generated/nirfmxlte/nirfmxlte_mock_library.h +++ b/generated/nirfmxlte/nirfmxlte_mock_library.h @@ -180,6 +180,8 @@ class NiRFmxLTEMockLibrary : public nirfmxlte_grpc::NiRFmxLTELibraryInterface { MOCK_METHOD(int32, ModAccFetchInBandEmissionMargin, (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* inBandEmissionMargin), (override)); MOCK_METHOD(int32, ModAccFetchInBandEmissionMarginArray, (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64 inBandEmissionMargin[], int32 arraySize, int32* actualArraySize), (override)); MOCK_METHOD(int32, ModAccFetchInBandEmissionTrace, (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 inBandEmission[], float32 inBandEmissionMask[], int32 arraySize, int32* actualArraySize), (override)); + MOCK_METHOD(int32, ModAccFetchMaximumEVMHighPerSymbolTrace, (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMHighPerSymbol[], int32 arraySize, int32* actualArraySize), (override)); + MOCK_METHOD(int32, ModAccFetchMaximumEVMLowPerSymbolTrace, (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMLowPerSymbol[], int32 arraySize, int32* actualArraySize), (override)); MOCK_METHOD(int32, ModAccFetchMaximumEVMPerSlotTrace, (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMPerSlot[], int32 arraySize, int32* actualArraySize), (override)); MOCK_METHOD(int32, ModAccFetchMaximumEVMPerSubcarrierTrace, (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMPerSubcarrier[], int32 arraySize, int32* actualArraySize), (override)); MOCK_METHOD(int32, ModAccFetchMaximumEVMPerSymbolTrace, (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout, float64* x0, float64* dx, float32 maximumEVMPerSymbol[], int32 arraySize, int32* actualArraySize), (override)); diff --git a/generated/nirfmxlte/nirfmxlte_service.cpp b/generated/nirfmxlte/nirfmxlte_service.cpp index cb31eee76..a97564ad4 100644 --- a/generated/nirfmxlte/nirfmxlte_service.cpp +++ b/generated/nirfmxlte/nirfmxlte_service.cpp @@ -6115,6 +6115,96 @@ namespace nirfmxlte_grpc { } } + //--------------------------------------------------------------------- + //--------------------------------------------------------------------- + ::grpc::Status NiRFmxLTEService::ModAccFetchMaximumEVMHighPerSymbolTrace(::grpc::ServerContext* context, const ModAccFetchMaximumEVMHighPerSymbolTraceRequest* request, ModAccFetchMaximumEVMHighPerSymbolTraceResponse* response) + { + if (context->IsCancelled()) { + return ::grpc::Status::CANCELLED; + } + try { + auto instrument_grpc_session = request->instrument(); + niRFmxInstrHandle instrument = session_repository_->access_session(instrument_grpc_session.name()); + auto selector_string_mbcs = convert_from_grpc(request->selector_string()); + char* selector_string = (char*)selector_string_mbcs.c_str(); + float64 timeout = request->timeout(); + float64 x0 {}; + float64 dx {}; + int32 actual_array_size {}; + while (true) { + auto status = library_->ModAccFetchMaximumEVMHighPerSymbolTrace(instrument, selector_string, timeout, &x0, &dx, nullptr, 0, &actual_array_size); + if (!status_ok(status)) { + return ConvertApiErrorStatusForNiRFmxInstrHandle(context, status, instrument); + } + response->mutable_maximum_evm_high_per_symbol()->Resize(actual_array_size, 0); + float32* maximum_evm_high_per_symbol = response->mutable_maximum_evm_high_per_symbol()->mutable_data(); + auto array_size = actual_array_size; + status = library_->ModAccFetchMaximumEVMHighPerSymbolTrace(instrument, selector_string, timeout, &x0, &dx, maximum_evm_high_per_symbol, array_size, &actual_array_size); + if (status == kErrorReadBufferTooSmall || status == kWarningCAPIStringTruncatedToFitBuffer) { + // buffer is now too small, try again + continue; + } + if (!status_ok(status)) { + return ConvertApiErrorStatusForNiRFmxInstrHandle(context, status, instrument); + } + response->set_status(status); + response->set_x0(x0); + response->set_dx(dx); + response->mutable_maximum_evm_high_per_symbol()->Resize(actual_array_size, 0); + response->set_actual_array_size(actual_array_size); + return ::grpc::Status::OK; + } + } + catch (nidevice_grpc::NonDriverException& ex) { + return ex.GetStatus(); + } + } + + //--------------------------------------------------------------------- + //--------------------------------------------------------------------- + ::grpc::Status NiRFmxLTEService::ModAccFetchMaximumEVMLowPerSymbolTrace(::grpc::ServerContext* context, const ModAccFetchMaximumEVMLowPerSymbolTraceRequest* request, ModAccFetchMaximumEVMLowPerSymbolTraceResponse* response) + { + if (context->IsCancelled()) { + return ::grpc::Status::CANCELLED; + } + try { + auto instrument_grpc_session = request->instrument(); + niRFmxInstrHandle instrument = session_repository_->access_session(instrument_grpc_session.name()); + auto selector_string_mbcs = convert_from_grpc(request->selector_string()); + char* selector_string = (char*)selector_string_mbcs.c_str(); + float64 timeout = request->timeout(); + float64 x0 {}; + float64 dx {}; + int32 actual_array_size {}; + while (true) { + auto status = library_->ModAccFetchMaximumEVMLowPerSymbolTrace(instrument, selector_string, timeout, &x0, &dx, nullptr, 0, &actual_array_size); + if (!status_ok(status)) { + return ConvertApiErrorStatusForNiRFmxInstrHandle(context, status, instrument); + } + response->mutable_maximum_evm_low_per_symbol()->Resize(actual_array_size, 0); + float32* maximum_evm_low_per_symbol = response->mutable_maximum_evm_low_per_symbol()->mutable_data(); + auto array_size = actual_array_size; + status = library_->ModAccFetchMaximumEVMLowPerSymbolTrace(instrument, selector_string, timeout, &x0, &dx, maximum_evm_low_per_symbol, array_size, &actual_array_size); + if (status == kErrorReadBufferTooSmall || status == kWarningCAPIStringTruncatedToFitBuffer) { + // buffer is now too small, try again + continue; + } + if (!status_ok(status)) { + return ConvertApiErrorStatusForNiRFmxInstrHandle(context, status, instrument); + } + response->set_status(status); + response->set_x0(x0); + response->set_dx(dx); + response->mutable_maximum_evm_low_per_symbol()->Resize(actual_array_size, 0); + response->set_actual_array_size(actual_array_size); + return ::grpc::Status::OK; + } + } + catch (nidevice_grpc::NonDriverException& ex) { + return ex.GetStatus(); + } + } + //--------------------------------------------------------------------- //--------------------------------------------------------------------- ::grpc::Status NiRFmxLTEService::ModAccFetchMaximumEVMPerSlotTrace(::grpc::ServerContext* context, const ModAccFetchMaximumEVMPerSlotTraceRequest* request, ModAccFetchMaximumEVMPerSlotTraceResponse* response) diff --git a/generated/nirfmxlte/nirfmxlte_service.h b/generated/nirfmxlte/nirfmxlte_service.h index 90911e5bb..fa393c0ad 100644 --- a/generated/nirfmxlte/nirfmxlte_service.h +++ b/generated/nirfmxlte/nirfmxlte_service.h @@ -207,6 +207,8 @@ class NiRFmxLTEService final : public NiRFmxLTE::Service { ::grpc::Status ModAccFetchInBandEmissionMargin(::grpc::ServerContext* context, const ModAccFetchInBandEmissionMarginRequest* request, ModAccFetchInBandEmissionMarginResponse* response) override; ::grpc::Status ModAccFetchInBandEmissionMarginArray(::grpc::ServerContext* context, const ModAccFetchInBandEmissionMarginArrayRequest* request, ModAccFetchInBandEmissionMarginArrayResponse* response) override; ::grpc::Status ModAccFetchInBandEmissionTrace(::grpc::ServerContext* context, const ModAccFetchInBandEmissionTraceRequest* request, ModAccFetchInBandEmissionTraceResponse* response) override; + ::grpc::Status ModAccFetchMaximumEVMHighPerSymbolTrace(::grpc::ServerContext* context, const ModAccFetchMaximumEVMHighPerSymbolTraceRequest* request, ModAccFetchMaximumEVMHighPerSymbolTraceResponse* response) override; + ::grpc::Status ModAccFetchMaximumEVMLowPerSymbolTrace(::grpc::ServerContext* context, const ModAccFetchMaximumEVMLowPerSymbolTraceRequest* request, ModAccFetchMaximumEVMLowPerSymbolTraceResponse* response) override; ::grpc::Status ModAccFetchMaximumEVMPerSlotTrace(::grpc::ServerContext* context, const ModAccFetchMaximumEVMPerSlotTraceRequest* request, ModAccFetchMaximumEVMPerSlotTraceResponse* response) override; ::grpc::Status ModAccFetchMaximumEVMPerSubcarrierTrace(::grpc::ServerContext* context, const ModAccFetchMaximumEVMPerSubcarrierTraceRequest* request, ModAccFetchMaximumEVMPerSubcarrierTraceResponse* response) override; ::grpc::Status ModAccFetchMaximumEVMPerSymbolTrace(::grpc::ServerContext* context, const ModAccFetchMaximumEVMPerSymbolTraceRequest* request, ModAccFetchMaximumEVMPerSymbolTraceResponse* response) override; diff --git a/generated/nirfmxspecan/nirfmxspecan.proto b/generated/nirfmxspecan/nirfmxspecan.proto index a0fbeb48b..c2bb247a6 100644 --- a/generated/nirfmxspecan/nirfmxspecan.proto +++ b/generated/nirfmxspecan/nirfmxspecan.proto @@ -986,9 +986,7 @@ enum NiRFmxSpecAnAttribute { NIRFMXSPECAN_ATTRIBUTE_DPD_PRE_DPD_CARRIER_BANDWIDTH = 1110116; NIRFMXSPECAN_ATTRIBUTE_DPD_IQ_ORIGIN_OFFSET_CORRECTION_ENABLED = 1110117; NIRFMXSPECAN_ATTRIBUTE_DPD_DVR_NUMBER_OF_SEGMENTS = 1110119; - NIRFMXSPECAN_ATTRIBUTE_DPD_DVR_LINEAR_MEMORY_DEPTH = 1110120; NIRFMXSPECAN_ATTRIBUTE_DPD_DVR_NONLINEAR_MEMORY_DEPTH = 1110121; - NIRFMXSPECAN_ATTRIBUTE_DPD_DVR_DDR_ENABLED = 1110122; NIRFMXSPECAN_ATTRIBUTE_DPD_MEASUREMENT_MODE = 1110123; NIRFMXSPECAN_ATTRIBUTE_IQ_MEASUREMENT_ENABLED = 1110272; NIRFMXSPECAN_ATTRIBUTE_IQ_SAMPLE_RATE = 1110274; @@ -2400,8 +2398,6 @@ enum NiRFmxSpecAnInt32AttributeValues { NIRFMXSPECAN_INT32_DPD_AUTO_CARRIER_DETECTION_ENABLED_TRUE = 1; NIRFMXSPECAN_INT32_DPD_AVERAGING_ENABLED_FALSE = 0; NIRFMXSPECAN_INT32_DPD_AVERAGING_ENABLED_TRUE = 1; - NIRFMXSPECAN_INT32_DPD_DVR_DDR_ENABLED_FALSE = 0; - NIRFMXSPECAN_INT32_DPD_DVR_DDR_ENABLED_TRUE = 1; NIRFMXSPECAN_INT32_DPD_FREQUENCY_OFFSET_CORRECTION_ENABLED_FALSE = 0; NIRFMXSPECAN_INT32_DPD_FREQUENCY_OFFSET_CORRECTION_ENABLED_TRUE = 1; NIRFMXSPECAN_INT32_DPD_IQ_ORIGIN_OFFSET_CORRECTION_ENABLED_FALSE = 0; diff --git a/imports/include/niRFmxLTE.h b/imports/include/niRFmxLTE.h index f8d7b37e2..457c2f961 100644 --- a/imports/include/niRFmxLTE.h +++ b/imports/include/niRFmxLTE.h @@ -2779,6 +2779,17 @@ int32 __stdcall RFmxLTE_ModAccFetchEVMHighPerSymbolTrace( int32* actualArraySize ); +int32 __stdcall RFmxLTE_ModAccFetchMaximumEVMHighPerSymbolTrace( + niRFmxInstrHandle instrumentHandle, + char selectorString[], + float64 timeout, + float64* x0, + float64* dx, + float32 maximumEVMHighPerSymbol[], + int32 arraySize, + int32* actualArraySize +); + int32 __stdcall RFmxLTE_ModAccFetchEVMLowPerSymbolTrace( niRFmxInstrHandle instrumentHandle, char selectorString[], @@ -2790,6 +2801,17 @@ int32 __stdcall RFmxLTE_ModAccFetchEVMLowPerSymbolTrace( int32* actualArraySize ); +int32 __stdcall RFmxLTE_ModAccFetchMaximumEVMLowPerSymbolTrace( + niRFmxInstrHandle instrumentHandle, + char selectorString[], + float64 timeout, + float64* x0, + float64* dx, + float32 maximumEVMLowPerSymbol[], + int32 arraySize, + int32* actualArraySize +); + int32 __stdcall RFmxLTE_ModAccFetchInBandEmissionMarginArray( niRFmxInstrHandle instrumentHandle, char selectorString[], diff --git a/imports/include/niRFmxSpecAn.h b/imports/include/niRFmxSpecAn.h index 2dca85205..df00f273d 100644 --- a/imports/include/niRFmxSpecAn.h +++ b/imports/include/niRFmxSpecAn.h @@ -482,9 +482,7 @@ #define RFMXSPECAN_ATTR_DPD_MEMORY_POLYNOMIAL_LEAD_ORDER_TYPE 0x0010f050 #define RFMXSPECAN_ATTR_DPD_MEMORY_POLYNOMIAL_LAG_ORDER_TYPE 0x0010f051 #define RFMXSPECAN_ATTR_DPD_DVR_NUMBER_OF_SEGMENTS 0x0010f067 -#define RFMXSPECAN_ATTR_DPD_DVR_LINEAR_MEMORY_DEPTH 0x0010f068 #define RFMXSPECAN_ATTR_DPD_DVR_NONLINEAR_MEMORY_DEPTH 0x0010f069 -#define RFMXSPECAN_ATTR_DPD_DVR_DDR_ENABLED 0x0010f06a #define RFMXSPECAN_ATTR_DPD_MEASUREMENT_MODE 0x0010f06b #define RFMXSPECAN_ATTR_DPD_ITERATIVE_DPD_ENABLED 0x0010f01a #define RFMXSPECAN_ATTR_DPD_FREQUENCY_OFFSET_CORRECTION_ENABLED 0x0010f039 @@ -1538,10 +1536,6 @@ #define RFMXSPECAN_VAL_DPD_MEMORY_POLYNOMIAL_LAG_ORDER_TYPE_ODD_ORDERS_ONLY 1 #define RFMXSPECAN_VAL_DPD_MEMORY_POLYNOMIAL_LAG_ORDER_TYPE_EVEN_ORDERS_ONLY 2 -// Values for RFMXSPECAN_ATTR_DPD_DVR_DDR_ENABLED -#define RFMXSPECAN_VAL_DPD_DVR_DDR_ENABLED_FALSE 0 -#define RFMXSPECAN_VAL_DPD_DVR_DDR_ENABLED_TRUE 1 - // Values for RFMXSPECAN_ATTR_DPD_MEASUREMENT_MODE #define RFMXSPECAN_VAL_DPD_MEASUREMENT_MODE_ACQUIRE_AND_EXTRACT 0 #define RFMXSPECAN_VAL_DPD_MEASUREMENT_MODE_EXTRACT_ONLY 1 @@ -10690,18 +10684,6 @@ int32 __stdcall RFmxSpecAn_DPDSetDVRNumberOfSegments( int32 attrVal ); -int32 __stdcall RFmxSpecAn_DPDGetDVRLinearMemoryDepth( - niRFmxInstrHandle instrumentHandle, - char selectorString[], - int32 *attrVal -); - -int32 __stdcall RFmxSpecAn_DPDSetDVRLinearMemoryDepth( - niRFmxInstrHandle instrumentHandle, - char selectorString[], - int32 attrVal -); - int32 __stdcall RFmxSpecAn_DPDGetDVRNonlinearMemoryDepth( niRFmxInstrHandle instrumentHandle, char selectorString[], @@ -10714,18 +10696,6 @@ int32 __stdcall RFmxSpecAn_DPDSetDVRNonlinearMemoryDepth( int32 attrVal ); -int32 __stdcall RFmxSpecAn_DPDGetDVRDDREnabled( - niRFmxInstrHandle instrumentHandle, - char selectorString[], - int32 *attrVal -); - -int32 __stdcall RFmxSpecAn_DPDSetDVRDDREnabled( - niRFmxInstrHandle instrumentHandle, - char selectorString[], - int32 attrVal -); - int32 __stdcall RFmxSpecAn_DPDGetMeasurementMode( niRFmxInstrHandle instrumentHandle, char selectorString[], diff --git a/source/codegen/metadata/nirfmxlte/config.py b/source/codegen/metadata/nirfmxlte/config.py index 4b75e761f..73ccaa730 100644 --- a/source/codegen/metadata/nirfmxlte/config.py +++ b/source/codegen/metadata/nirfmxlte/config.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- config = { - 'api_version': '24.5.0', + 'api_version': '24.8.0', 'c_header': 'niRFmxLTE.h', 'c_function_prefix': 'RFmxLTE_', 'service_class_prefix': 'NiRFmxLTE', diff --git a/source/codegen/metadata/nirfmxlte/functions.py b/source/codegen/metadata/nirfmxlte/functions.py index 8e2fdac54..a88411bab 100644 --- a/source/codegen/metadata/nirfmxlte/functions.py +++ b/source/codegen/metadata/nirfmxlte/functions.py @@ -5268,6 +5268,108 @@ ], 'returns': 'int32' }, + 'ModAccFetchMaximumEVMHighPerSymbolTrace': { + 'parameters': [ + { + 'direction': 'in', + 'grpc_name': 'instrument', + 'name': 'instrumentHandle', + 'type': 'niRFmxInstrHandle' + }, + { + 'direction': 'in', + 'name': 'selectorString', + 'type': 'char[]' + }, + { + 'direction': 'in', + 'name': 'timeout', + 'type': 'float64' + }, + { + 'direction': 'out', + 'name': 'x0', + 'type': 'float64' + }, + { + 'direction': 'out', + 'name': 'dx', + 'type': 'float64' + }, + { + 'direction': 'out', + 'name': 'maximumEVMHighPerSymbol', + 'size': { + 'mechanism': 'ivi-dance-with-a-twist', + 'value': 'arraySize', + 'value_twist': 'actualArraySize' + }, + 'type': 'float32[]' + }, + { + 'direction': 'in', + 'name': 'arraySize', + 'type': 'int32' + }, + { + 'direction': 'out', + 'name': 'actualArraySize', + 'type': 'int32' + } + ], + 'returns': 'int32' + }, + 'ModAccFetchMaximumEVMLowPerSymbolTrace': { + 'parameters': [ + { + 'direction': 'in', + 'grpc_name': 'instrument', + 'name': 'instrumentHandle', + 'type': 'niRFmxInstrHandle' + }, + { + 'direction': 'in', + 'name': 'selectorString', + 'type': 'char[]' + }, + { + 'direction': 'in', + 'name': 'timeout', + 'type': 'float64' + }, + { + 'direction': 'out', + 'name': 'x0', + 'type': 'float64' + }, + { + 'direction': 'out', + 'name': 'dx', + 'type': 'float64' + }, + { + 'direction': 'out', + 'name': 'maximumEVMLowPerSymbol', + 'size': { + 'mechanism': 'ivi-dance-with-a-twist', + 'value': 'arraySize', + 'value_twist': 'actualArraySize' + }, + 'type': 'float32[]' + }, + { + 'direction': 'in', + 'name': 'arraySize', + 'type': 'int32' + }, + { + 'direction': 'out', + 'name': 'actualArraySize', + 'type': 'int32' + } + ], + 'returns': 'int32' + }, 'ModAccFetchMaximumEVMPerSlotTrace': { 'parameters': [ { diff --git a/source/codegen/metadata/nirfmxspecan/attributes.py b/source/codegen/metadata/nirfmxspecan/attributes.py index 49b338a8f..b5086db68 100644 --- a/source/codegen/metadata/nirfmxspecan/attributes.py +++ b/source/codegen/metadata/nirfmxspecan/attributes.py @@ -2865,22 +2865,11 @@ 'name': 'DPD_DVR_NUMBER_OF_SEGMENTS', 'type': 'int32' }, - 1110120: { - 'access': 'read-write', - 'name': 'DPD_DVR_LINEAR_MEMORY_DEPTH', - 'type': 'int32' - }, 1110121: { 'access': 'read-write', 'name': 'DPD_DVR_NONLINEAR_MEMORY_DEPTH', 'type': 'int32' }, - 1110122: { - 'access': 'read-write', - 'enum': 'DpdDvrDdrEnabled', - 'name': 'DPD_DVR_DDR_ENABLED', - 'type': 'int32' - }, 1110123: { 'access': 'read-write', 'enum': 'DpdMeasurementMode', diff --git a/source/codegen/metadata/nirfmxspecan/enums.py b/source/codegen/metadata/nirfmxspecan/enums.py index 3c45f18ca..e5f6c81bf 100644 --- a/source/codegen/metadata/nirfmxspecan/enums.py +++ b/source/codegen/metadata/nirfmxspecan/enums.py @@ -1188,18 +1188,6 @@ } ] }, - 'DpdDvrDdrEnabled': { - 'values': [ - { - 'name': 'FALSE', - 'value': 0 - }, - { - 'name': 'TRUE', - 'value': 1 - } - ] - }, 'DpdFrequencyOffsetCorrectionEnabled': { 'values': [ {