Ivi-4.10 Rfsiggen V1

  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Ivi-4.10 Rfsiggen V1 as PDF for free.

More details

  • Words: 53,697
  • Pages: 421
IVI

Interchangeable Virtual Instruments

IVI-4.10: IviRFSigGen Class Specification

March 2002 Edition Revision 1.0

Important Information The IviRFSigGen Class Specification (IVI-4.10) is authored by the IVI Foundation member companies. For a vendor membership roster list, please visit the IVI Foundation web site at www.ivifoundation.org, or contact the IVI Foundation at 2515 Camino del Rio South, Suite 340, San Diego, CA 92108. The IVI Foundation wants to receive your comments on this specification. You can contact the Foundation through email at [email protected], through the web site at www.ivifoundation.org, or you can write to the IVI Foundation, 2515 Camino del Rio South, Suite 340, San Diego, CA 92108. Warranty The IVI Foundation and its member companies make no warranty of any kind with regard to this material, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The IVI Foundation and its member companies shall not be liable for errors contained herein or for incidental or consequential damages in connection with the furnishing, performance, or use of this material. Trademarks Product and company names listed are trademarks or trade names of their respective companies. No investigation has been made of common-law trademark rights in any work.

IVI-4.10 IviRFSigGen Class Specification

2

IVI Foundation

1.

Overview of the IviRFSigGen Specification.....................................14 1.1 1.2 1.3 1.4

2.

IviRFSigGen Class Capabilities.........................................................16 2.1 2.2 2.3

3.

3.2

Minimum Class Compliance....................................................................................................................19 3.1.1 Disable........................................................................................................................................19 Capability Group Compliance..................................................................................................................19

IviRFSigGenBase Capabilities Group...............................................20 4.1 4.2

4.3

4.4

5.

Introduction...............................................................................................................................................16 IviRFSigGen Group Names......................................................................................................................16 Repeated Capability Names......................................................................................................................18 2.3.1 LFGenerator ...............................................................................................................................18 2.3.2 Analog Modulation Source .......................................................................................................18

General Requirements........................................................................19 3.1

4.

Introduction...............................................................................................................................................14 IviRFSigGen Class Overview...................................................................................................................14 References .................................................................................................................................................14 Definitions of Terms and Acronyms ........................................................................................................15

Overview ...................................................................................................................................................20 IviRFSigGenBase Attributes ....................................................................................................................20 4.2.1 Frequency ...................................................................................................................................21 4.2.2 Power Level................................................................................................................................22 4.2.3 ALC Enabled ..............................................................................................................................23 4.2.4 Output Enabled ..........................................................................................................................24 IviRFSigGenBase Functions ....................................................................................................................25 4.3.1 Configure RF .............................................................................................................................26 4.3.2 Configure ALC Enabled (IVI-C only).......................................................................................27 4.3.3 Configure Output Enabled (IVI-C only)...................................................................................28 4.3.4 Disable All Modulation.............................................................................................................29 4.3.5 Is Settled .....................................................................................................................................30 4.3.6 Wait Until Settled.......................................................................................................................31 IviRFSigGen Behavior Model..................................................................................................................32

IviRFSigGenModulateAM Extension Group.....................................33 5.1 5.2

IVI Foundation

IviRFSigGenModulateAM Extension Group Overview.........................................................................33 IviRFSigGenModulateAM Attributes......................................................................................................33 5.2.1 AM Enabled................................................................................................................................34 5.2.2 AM Source..................................................................................................................................35 5.2.3 AM Scaling.................................................................................................................................36 3

IVI-4.10 IviRFSigGen Class Specification

5.3

5.4 5.5

6.

IviRFSigGenModulateFM Extension Group.....................................45 6.1 6.2

6.3

6.4 6.5

7.

IviRFSigGenModulateFM Extension Group Overview .........................................................................45 IviRFSigGenModulateFM Attributes ......................................................................................................45 6.2.1 FM Enabled ................................................................................................................................46 6.2.2 FM Source..................................................................................................................................47 6.2.3 FM External Coupling...............................................................................................................48 6.2.4 FM Nominal Voltage.................................................................................................................49 6.2.5 FM Deviation.............................................................................................................................50 IviRFSigGenModulateFM Functions ......................................................................................................51 6.3.1 Configure FM Enabled (IVI-C only).........................................................................................52 6.3.2 Configure FM External Coupling (IVI-C only) .......................................................................53 6.3.3 Configure FM.............................................................................................................................54 IviRFSigGenModulateFM Behavior Model............................................................................................55 IviRFSigGenModulateFM Compliance Notes........................................................................................55

IviRFSigGenModulatePM Extension Group.....................................56 7.1 7.2

7.3

7.4 7.5

8.

5.2.4 AM External Coupling...............................................................................................................37 5.2.5 AM Nominal Voltage ................................................................................................................38 5.2.6 AM Depth...................................................................................................................................39 IviRFSigGenModulateAM Functions......................................................................................................40 5.3.1 Configure AM Enabled (IVI-C only) ........................................................................................41 5.3.2 Configure AM External Coupling (IVI-C only) .......................................................................42 5.3.3 Configure AM ............................................................................................................................43 IviRFSigGenModulateAM Behavior Model ...........................................................................................44 IviRFSigGenModulateAM Compliance Notes........................................................................................44

IviRFSigGenModulatePM Extension Group Overview .........................................................................56 IviRFSigGenModulatePM Attributes ......................................................................................................56 7.2.1 PM Enabled ................................................................................................................................57 7.2.2 PM Source..................................................................................................................................58 7.2.3 PM External Coupling...............................................................................................................59 7.2.4 PM Nominal Voltage.................................................................................................................60 7.2.5 PM Deviation.............................................................................................................................61 IviRFSigGenModulatePM Functions ......................................................................................................62 7.3.1 Configure PM Enabled (IVI-C only).........................................................................................63 7.3.2 Configure PM External Coupling (IVI-C only) .......................................................................64 7.3.3 Configure PM.............................................................................................................................65 IviRFSigGenModulatePM Behavior Model............................................................................................66 IviRFSigGenModulatePM Compliance Notes........................................................................................66

IviRFSigGenAnalogModulationSource Extension Group ..............67 8.1 8.2

8.3 8.4 8.5

IviRFSigGenAnalogModulationSource Extension Group Overview....................................................67 IviRFSigGenAnalogModulationSource Attributes.................................................................................67 8.2.1 Analog Modulation Source Count ............................................................................................68 8.2.2 Analog Modulation Source Name (IVI-COM Only)................................................................69 IviRFSigGenAnalogModulationSource Functions.................................................................................70 8.3.1 Get Analog Modulation Source Name (IVI-C only) ................................................................71 IviRFSigGenAnalogModulationSource Behavior Model.......................................................................72 IviRFSigGenAnalogModulationSource Compliance Notes...................................................................72

IVI-4.10 IviRFSigGen Class Specification

4

IVI Foundation

9.

IviRFSigGenModulatePulse Extension Group ................................73 9.1 9.2

9.3

9.4 9.5

10.

IviRFSigGenLFGenerator Extension Group ....................................83 10.1 10.2

10.3

10.4 10.5

11.

IviRFSigGenLFGenerator Extension Group Overview..........................................................................83 IviRFSigGenLFGenerator Attributes.......................................................................................................83 10.2.1 Active LFGenerator ...................................................................................................................84 10.2.2 LFGenerator Count....................................................................................................................85 10.2.3 LFGenerator Name (IVI-COM Only) .......................................................................................86 10.2.4 LFGenerator Frequency.............................................................................................................87 10.2.5 LFGenerator Waveform.............................................................................................................88 IviRFSigGenLFGenerator Functions.......................................................................................................90 10.3.1 Get LFGenerator Name (IVI-C only) ........................................................................................91 10.3.2 Set Active LFGenerator (IVI-C Only) .......................................................................................92 10.3.3 Configure LFGenerator .............................................................................................................93 IviRFSigGenLFGenerator Behavior Model ............................................................................................94 IviRFSigGenLFGenerator Compliance Notes.........................................................................................94

IviRFSigGen LFGeneratorOutput Extension Group .......................95 11.1 11.2

11.3 11.4 11.5

12.

IviRFSigGenModulatePulse Extension Group Overview......................................................................73 IviRFSigGenModulatePulse Attributes...................................................................................................73 9.2.1 Pulse Modulation Enabled ........................................................................................................74 9.2.2 Pulse Modulation Source ..........................................................................................................75 9.2.3 Pulse Modulation External Polarity..........................................................................................76 IviRFSigGenModulatePulse Functions...................................................................................................78 9.3.1 Configure Pulse Modulation Enabled (IVI-C only) .................................................................79 9.3.2 Configure Pulse Modulation Source (IVI-C only)...................................................................80 9.3.3 Configure Pulse Modulation External Polarity (IVI-C only) ..................................................81 IviRFSigGenModulatePulse Behavior Model.........................................................................................82 IviRFSigGenModulatePulse Compliance Notes.....................................................................................82

IviRFSigGenLFGeneratorOutput Extension Group Overview..............................................................95 IviRFSigGenLFGeneratorOutput Attributes...........................................................................................95 11.2.1 LFGenerator Output Amplitude................................................................................................96 11.2.2 LFGenerator Output Enabled....................................................................................................97 IviRFSigGenLFGeneratorOutput Functions...........................................................................................98 11.3.1 Configure LFGenerator Output ................................................................................................99 IviRFSigGenLFGeneratorOutput Behavior Model...............................................................................100 IviRFSigGenLFGeneratorOutput Compliance Notes...........................................................................100

IviRFSigGenPulseGenerator Extension Group .............................101 12.1 12.2

12.3

12.4 IVI Foundation

IviRFSigGenPulseGenerator Extension Group Overview ...................................................................101 IviRFSigGenPulseGenerator Attributes ................................................................................................101 12.2.1 Pulse Internal Trigger Period...................................................................................................102 12.2.2 Pulse Width..............................................................................................................................103 12.2.3 Pulse Gating Enabled...............................................................................................................104 12.2.4 Pulse Trigger Source................................................................................................................105 12.2.5 Pulse External Trigger Slope...................................................................................................106 12.2.6 Pulse External Trigger Delay...................................................................................................107 IviRFSigGenPulseGenerator Functions ................................................................................................108 12.3.1 Configure Pulse External Trigger ...........................................................................................109 12.3.2 Configure Pulse Internal Trigger (IVI-C only) .......................................................................110 12.3.3 Configure Pulse .......................................................................................................................111 IviRFSigGenPulseGenerator Behavior Model......................................................................................112 5

IVI-4.10 IviRFSigGen Class Specification

12.5

13.

IviRFSigGenPulseDoubleGenerator Extension Group.................113 13.1 13.2

13.3 13.4 13.5

14.

14.3 14.4 14.5

15.3 15.4

IviRFSigGenSweep Overview................................................................................................................125 IviRFSigGenSweep Attributes ...............................................................................................................125 15.2.1 Sweep Mode .............................................................................................................................126 15.2.2 Sweep Trigger Source..............................................................................................................128 IviRFSigGenSweep Functions ...............................................................................................................130 15.3.1 Configure Sweep......................................................................................................................131 IviRFSigGenSweep Behavior Model.....................................................................................................132 Frequency Sweep / Power Sweep...........................................................................................................132 Frequency Step / Power Step / List ........................................................................................................133

IviRFSigGenFrequencySweep Extension Group ..........................135 16.1 16.2

16.3

16.4 16.5

17.

IviRFSigGenPulseGeneratorOutput Extension Group Overview........................................................119 IviRFSigGenPulseGeneratorOutput Attributes.....................................................................................119 14.2.1 Pulse Output Polarity ..............................................................................................................120 14.2.2 Pulse Output Enabled ..............................................................................................................121 IviRFSigGenPulseGeneratorOutput Functions.....................................................................................122 14.3.1 Configure Pulse Output...........................................................................................................123 IviRFSigGenPulseGeneratorOutput Behavior Mode ...........................................................................124 IviRFSigGenPulseGeneratorOutput Compliance Notes ......................................................................124

IviRFSigGenSweep Extension Group.............................................125 15.1 15.2

16.

IviRFSigGenPulseDoubleGenerator Extension Group Overview.......................................................113 IviRFSigGenPulseDoubleGenerator Attributes....................................................................................113 13.2.1 Pulse Double Enabled..............................................................................................................114 13.2.2 Pulse Double Delay .................................................................................................................115 IviRFSigGenPulseDoubleGenerator Functions....................................................................................116 13.3.1 Configure Pulse Double..........................................................................................................117 IviRFSigGenPulseDoubleGenerator Behavior Model..........................................................................118 IviRFSigGenPulseDoubleGenerator Compliance Notes......................................................................118

IviRFSigGenPulseGeneratorOutput Extension Group .................119 14.1 14.2

15.

IviRFSigGenPulseGenerator Compliance Notes ..................................................................................112

IviRFSigGenFrequencySweep Extension Group Overview .................................................................135 IviRFSigGenFrequencySweep Attributes ..............................................................................................135 16.2.1 Frequency Sweep Start.............................................................................................................136 16.2.2 Frequency Sweep Stop.............................................................................................................137 16.2.3 Frequency Sweep Time............................................................................................................138 IviRFSigGenFrequencySweep Functions ..............................................................................................139 16.3.1 Configure Frequency Sweep Start Stop..................................................................................140 16.3.2 Configure Frequency Sweep Center Span...............................................................................141 16.3.3 Configure Frequency Sweep Time (IVI-C only) ....................................................................142 IviRFSigGenFrequencySweep Behavior Model....................................................................................143 IviRFSigGenFrequencySweep Compliance Notes................................................................................143

IviRFSigGenPowerSweep Extension Group..................................144 17.1 17.2

IviRFSigGenPowerSweep Extension Group Overview........................................................................144 IviRFSigGenPowerSweep Attributes.....................................................................................................144 17.2.1 Power Sweep Start ...................................................................................................................145

IVI-4.10 IviRFSigGen Class Specification

6

IVI Foundation

17.3

17.4 17.5

18.

IviRFSigGenFrequencyStep Extension Group ..............................152 18.1 18.2

18.3

18.4 18.5

19.

IviRFSigGenFrequencyStep Extension Group Overview.....................................................................152 IviRFSigGenFrequencyStep Attributes..................................................................................................152 18.2.1 Frequency Step Start ................................................................................................................153 18.2.2 Frequency Step Stop.................................................................................................................154 18.2.3 Frequency Step Scaling............................................................................................................155 18.2.4 Frequency Step Size .................................................................................................................156 18.2.5 Frequency Step Single Step Enabled .......................................................................................157 18.2.6 Frequency Step Dwell..............................................................................................................158 IviRFSigGenFrequencyStep Functions..................................................................................................159 18.3.1 Configure Frequency Step Start Stop......................................................................................160 18.3.2 Configure Frequency Step Dwell............................................................................................161 18.3.3 Reset Frequency Step...............................................................................................................162 IviRFSigGenFrequencyStep Behavior Model .......................................................................................163 IviRFSigGenFrequencyStep Compliance Notes....................................................................................163

IviRFSigGenPowerStep Extension Group .....................................164 19.1 19.2

19.3

19.4 19.5

20.

17.2.2 Power Sweep Stop ...................................................................................................................146 17.2.3 Power Sweep Time ..................................................................................................................147 IviRFSigGenPowerSweep Functions.....................................................................................................148 17.3.1 Configure Power Sweep Start Stop.........................................................................................149 17.3.2 Configure Power Sweep Time (IVI-C only) ...........................................................................150 IviRFSigGenPowerSweep Behavior Model ..........................................................................................151 IviRFSigGenPowerSweep Compliance Notes ......................................................................................151

IviRFSigGenPowerStep Extension Group Overview ...........................................................................164 IviRFSigGenPowerStep Attributes ........................................................................................................164 19.2.1 Power Step Start.......................................................................................................................165 19.2.2 Power Step Stop.......................................................................................................................166 19.2.3 Power Step Size........................................................................................................................167 19.2.4 Power Step Single Step Enabled..............................................................................................168 19.2.5 Power Step Dwell ....................................................................................................................169 IviRFSigGenPowerStep Functions ........................................................................................................170 19.3.1 Configure Power Step Start Stop............................................................................................171 19.3.2 Configure Power Step Dwell ..................................................................................................172 19.3.3 Reset Power Step .....................................................................................................................173 IviRFSigGenPowerStep Behavior Model..............................................................................................174 IviRFSigGenPowerStep Compliance Notes..........................................................................................174

IviRFSigGenList Extension Group..................................................175 20.1 20.2

20.3

IVI Foundation

IviRFSigGenList Extension Group Overview.......................................................................................175 IviRFSigGenList Attributes....................................................................................................................175 20.2.1 List Selected Name...................................................................................................................176 20.2.2 List Single Step Enabled ..........................................................................................................177 20.2.3 List Dwell.................................................................................................................................178 IviRFSigGenList Functions....................................................................................................................179 20.3.1 Create Frequency List ..............................................................................................................180 20.3.2 Create Power List.....................................................................................................................181 20.3.3 Create Frequency Power List ..................................................................................................182 20.3.4 Select List (IVI-C only)............................................................................................................183 20.3.5 Clear All Lists ..........................................................................................................................184 20.3.6 Configure List Dwell...............................................................................................................185 7

IVI-4.10 IviRFSigGen Class Specification

20.4 20.5

21.

IviRFSigGenALC Extension Group .................................................188 21.1 21.2

21.3 21.4

22.

22.3 22.4

23.3 23.4

IviRFSigGenSoftwareTrigger Overview ...............................................................................................200 IviRFSigGenSoftwareTrigger Functions...............................................................................................200 23.2.1 Send Software Trigger .............................................................................................................200 IviRFSigGenSoftwareTrigger Behavior Model.....................................................................................200 IviRFSigGenSoftwareTrigger Compliance Notes.................................................................................200

IviRFSigGenModulateIQ Extension Group ....................................202 24.1 24.2

24.3

24.4

25.

IviRFSigGenReferenceOscillator Overview .........................................................................................194 IviRFSigGenReferenceOscillator Attributes.........................................................................................194 22.2.1 Reference Oscillator Source....................................................................................................195 22.2.2 Reference Oscillator External Frequency...............................................................................196 IviRFSigGenReferenceOscillator Functions.........................................................................................197 22.3.1 Configure Reference Oscillator ..............................................................................................198 IviRFSigGenReferenceOscillator Behavior Model...............................................................................199

IviRFSigGenSoftwareTrigger Extension Group ............................200 23.1 23.2

24.

IviRFSigGenALC Overview...................................................................................................................188 IviRFSigGenALC Attributes ..................................................................................................................188 21.2.1 ALC Source..............................................................................................................................189 21.2.2 ALC Bandwidth........................................................................................................................190 IviRFSigGenALC Functions ..................................................................................................................191 21.3.1 Configure ALC.........................................................................................................................192 IviRFSigGenALC Behavior Model........................................................................................................193

IviRFSigGen ReferenceOscillator Extension Group .....................194 22.1 22.2

23.

20.3.7 Reset List..................................................................................................................................186 IviRFSigGenList Behavior Model .........................................................................................................187 IviRFSigGenList Compliance Notes......................................................................................................187

IviRFSigGenModulateIQ Extension Group Overview.........................................................................202 IviRFSigGenModulateIQ Attributes......................................................................................................202 24.2.1 IQ Enabled................................................................................................................................203 24.2.2 IQ Nominal Voltage.................................................................................................................204 24.2.3 IQ Source..................................................................................................................................205 24.2.4 IQ Swap Enabled......................................................................................................................207 IviRFSigGenModulateIQ Functions......................................................................................................208 24.3.1 Configure IQ Enabled (IVI-C only) ........................................................................................209 24.3.2 Configure IQ ............................................................................................................................210 24.3.3 Calibrate IQ ..............................................................................................................................211 IviRFSigGenModulateIQ Behavior Model............................................................................................212

IviRFSigGenIQImpairment Extension Group.................................213 25.1 25.2

IviRFSigGenIQImpairment Extension Group Overview......................................................................213 IviRFSigGenIQImpairment Attributes...................................................................................................213 25.2.1 IQ Impairment Enabled............................................................................................................214 25.2.2 IQ I-Offset ................................................................................................................................215 25.2.3 IQ Q-Offset...............................................................................................................................216 25.2.4 IQ Ratio ....................................................................................................................................217 25.2.5 IQ Skew ....................................................................................................................................218

IVI-4.10 IviRFSigGen Class Specification

8

IVI Foundation

25.3

25.4 25.5

26.

IviRFSigGenArbGenerator Extension Group.................................223 26.1 26.2

26.3

26.4 26.5

27.

IviRFSigGenIQImpairment Functions...................................................................................................219 25.3.1 Configure IQ Impairment Enabled (IVI-C only) ....................................................................220 25.3.2 Configure IQ Impairment ........................................................................................................221 IviRFSigGenIQImpairment Behavior Model.........................................................................................222 IviRFSigGenIQImpairment Compliance Notes.....................................................................................222

IviRFSigGenArbGenerator Extension Group Overview ......................................................................223 IviRFSigGenArbGenerator Attributes ...................................................................................................223 26.2.1 Arb Selected Waveform...........................................................................................................224 26.2.2 Arb Clock Frequency...............................................................................................................225 26.2.3 Arb Filter Frequency................................................................................................................226 26.2.4 Arb Max Number Waveforms .................................................................................................227 26.2.5 Arb Waveform Quantum.........................................................................................................228 26.2.6 Arb Waveform Size Min..........................................................................................................229 26.2.7 Arb Waveform Size Max .........................................................................................................230 26.2.8 Arb Trigger Source...................................................................................................................231 26.2.9 Arb External Trigger Slope......................................................................................................233 IviRFSigGenArbGenerator Functions ...................................................................................................234 26.3.1 Configure Arb ..........................................................................................................................235 26.3.2 Write Arb Waveform ...............................................................................................................236 26.3.3 Select Arb Waveform (IVI-C only) .........................................................................................237 26.3.4 Clear All Arb Waveforms........................................................................................................238 26.3.5 Query Arb Waveform Capabilities..........................................................................................239 26.3.6 Configure Arb Trigger Source (IVI-C only) ...........................................................................240 26.3.7 Configure Arb External Trigger Slope (IVI-C only) ..............................................................241 IviRFSigGenArbGenerator Behavior Model.........................................................................................242 IviRFSigGenArbGenerator Compliance Notes .....................................................................................242

IviRFSigGenDigitalModulationBase Extension Group .................243 27.1 27.2

27.3

27.4 27.5

IVI Foundation

IviRFSigGenDigitalModulationBase Extension Group Overview......................................................243 IviRFSigGenDigitalModulationBase Attributes...................................................................................243 27.2.1 DigitalModulationBase Standard Name (IVI-COM only).....................................................244 27.2.2 DigitalModulationBase Standard Count.................................................................................245 27.2.3 DigitalModulationBase Selected Standard.............................................................................246 27.2.4 DigitalModulationBase Data Source......................................................................................247 27.2.5 DigitalModulationBase PRBS Type .......................................................................................249 27.2.6 DigitalModulationBase Selected Bit Sequence......................................................................251 27.2.7 DigitalModulationBase Clock Source....................................................................................252 27.2.8 DigitalModulationBase External Clock Type ........................................................................254 IviRFSigGenDigitalModulationBase Functions...................................................................................256 27.3.1 Get DigitalModulationBase Standard Name (IVI-C only).....................................................257 27.3.2 Select DigitalModulationBase Standard (IVI-C only) ...........................................................258 27.3.3 Configure DigitalModulationBase Clock Source..................................................................259 27.3.4 Configure DigitalModulationBase Data Source (IVI-C only) ..............................................260 27.3.5 Configure DigitalModulationBase PRBS Type (IVI-C only)................................................261 27.3.6 Write DigitalModulationBase Bit Sequence ..........................................................................262 27.3.7 Select DigitalModulationBase Bit Sequence (IVI-C only) ....................................................263 27.3.8 Clear All DigitalModulationBase Bit Sequences...................................................................264 IviRFSigGenDigitalModulationBase Behavior Model.........................................................................265 IviRFSigGenDigitalModulationBase Compliance Notes.....................................................................265

9

IVI-4.10 IviRFSigGen Class Specification

28.

IviRFSigGenCDMABase Extension Group .....................................266 28.1 28.2

28.3

28.4 28.5

29.

IviRFSigGenCDMABase Extension Group Overview.........................................................................266 IviRFSigGenCDMABase Attributes......................................................................................................266 28.2.1 CDMA Standard Name (IVI-COM only) ................................................................................267 28.2.2 CDMA Standard Count............................................................................................................268 28.2.3 CDMA Selected Standard........................................................................................................269 28.2.4 CDMA Trigger Source.............................................................................................................270 28.2.5 CDMA External Trigger Slope................................................................................................272 28.2.6 CDMA Test Model Name (IVI-COM only)............................................................................273 28.2.7 CDMA Test Model Count .......................................................................................................274 28.2.8 CDMA Selected Test Model....................................................................................................275 28.2.9 CDMA Clock Source...............................................................................................................276 IviRFSigGenCDMABase Functions......................................................................................................277 28.3.1 Get CDMA Standard Name (IVI-C only)................................................................................278 28.3.2 Select CDMA Standard (IVI-C only) ......................................................................................279 28.3.3 Configure CDMA Clock Source (IVI-C only) .......................................................................280 28.3.4 Configure CDMA Trigger Source (IVI-C only) .....................................................................281 28.3.5 Configure CDMA External Trigger Slope (IVI-C only) ........................................................282 28.3.6 Get CDMA Test Model Name (IVI-C only) ...........................................................................283 28.3.7 Select CDMA Test Model (IVI-C only) ..................................................................................284 IviRFSigGenCDMABase Behavior Model............................................................................................285 IviRFSigGenCDMABase Compliance Notes........................................................................................285

IviRFSigGenTDMABase Extension Group .....................................286 29.1 29.2

29.3

29.4 29.5

IviRFSigGenTDMABase Extension Group Overview .........................................................................286 IviRFSigGenTDMABase Attributes ......................................................................................................286 29.2.1 TDMA Standard Name (IVI-COM only) ................................................................................287 29.2.2 TDMA Standard Count ............................................................................................................288 29.2.3 TDMA Selected Standard.........................................................................................................289 29.2.4 TDMA Trigger Source.............................................................................................................290 29.2.5 TDMA External Trigger Slope ................................................................................................292 29.2.6 TDMA Frame Name (IVI-COM only) ....................................................................................293 29.2.7 TDMA Frame Count................................................................................................................294 29.2.8 TDMA Selected Frame ............................................................................................................295 29.2.9 TDMA Clock Source ...............................................................................................................296 29.2.10 TDMA External Clock Type....................................................................................................297 IviRFSigGenTDMABase Functions ......................................................................................................298 29.3.1 Get TDMA Standard Name (IVI-C only) ................................................................................299 29.3.2 Select TDMA Standard (IVI-C only) .......................................................................................300 29.3.3 Configure TDMA Clock Source .............................................................................................301 29.3.4 Configure TDMA Trigger Source (IVI-C only) .....................................................................302 29.3.5 Configure TDMA External Trigger Slope (IVI-C only).........................................................303 29.3.6 Get TDMA Frame Name (IVI-C only) ....................................................................................304 29.3.7 Select TDMA Frame (IVI-C only)...........................................................................................305 IviRFSigGenTDMABase Behavior Model............................................................................................306 IviRFSigGenTDMABase Compliance Notes ........................................................................................306

IVI-4.10 IviRFSigGen Class Specification

10

IVI Foundation

30.

IviRFSigGen Attribute ID Definitions ..............................................307

31.

IviRFSigGen Attribute Value Definitions ........................................311

32.

IviRFSigGen Function Parameter Value Definitions .....................324

33.

IviRFSigGen Error and Completion Code Value Definitions........325

34.

IviRFSigGen Hierarchies ..................................................................326 34.1

34.2 34.3

IviRFSigGen COM Hierarchy................................................................................................................326 34.1.1 IviRFSigGen COM Interfaces .................................................................................................332 34.1.2 Interface Reference Properties.................................................................................................334 34.1.3 IviRFSigGen COM Category..................................................................................................340 IviRFSigGen C Function Hierarchy.......................................................................................................341 IviRFSigGen C Attribute Hierarchy.......................................................................................................344

Appendix A A.1 A.2 A.3

Introduction.............................................................................................................................................349 Disabling Unused Extensions.................................................................................................................349 Query Instrument Status .........................................................................................................................354

Appendix B B.1 B.2 B.3

Specific Driver Development Guidelines.......................349

Interchangeability Checking Rules ................................355

Introduction.............................................................................................................................................355 When to Perform Interchangeability Checking......................................................................................355 Interchangeability Checking Rules.........................................................................................................355

Appendix C

ANSI C Include File...........................................................361

Appendix D

COM IDL File .....................................................................373

D.1 D.2 D.3

IVI Foundation

IviRFSigGenTypeLib.idl.........................................................................................................................373 IviRFSigGen.idl ......................................................................................................................................373 IviRFSigGenEnglish.idl..........................................................................................................................404

11

IVI-4.10 IviRFSigGen Class Specification

IviRFSigGen Class Specification IviRFSigGen Revision History This section is an overview of the revision history of the IviRFSigGen specification. Table 1. IviRFSigGen Class Specification Revisions

Revision Number Date of Revision

Revision Notes

Revision 0.1

Oct 14, 1999

Original draft.

Revision 0.2

Feb 11, 2000

Based on discussion at Nov.1999 meeting: Extension groups: ModulateAM, .FM, .PM changed, ModulateVector -> ModulateIQ, ModulateIQ and DM defined now, DataCoder deleted, boolean state -> boolean stateOn,.....

Revision 0.3

May 17, 2000

Based on discussion at Feb.2000 meeting: IVI-3.4 Revision 0.3 used Extension groups: ModulateAM, .FM, .PM complete rewrite boolean stateOn -> boolean enabled.....

Revision 0.4

Nov 10, 2000

Based on discussions at May and Aug.2000 meetings: Several groups split in 2 or more groups. DM (and new ArbGenerator) group removed for separate discussion. In all modulation groups: sensitivity set -> nominalVoltage query, multiple sources. Marker group removed.

Revision 0.41

Nov 27, 2000

Based on discussions at Nov.2000 meeting.

Revision 0.42

Jan 30, 2001

Internal revision.

Revision 0.5

March 26,. 2001

Based on discussions at Feb. 2001 meeting: DM and ArbGenerator group still removed for separate discussion. In all modulation groups: query nominalVoltage removed. Power unit attribute removed, dBm only now. Analog PowerSweep extension group added

Revision 0.52

Mai 29, 2001

COM Interfaces added

Revision 0.60

July 6, 2001

Based on discussions at Feb. 2001 meeting: Arb Generator, Arb Markers, Arb Sequences, CDMA Base Functionality, TDMA Base Functionality,

IVI-4.10 IviRFSigGen Class Specification

12

IVI Foundation

Table 1. IviRFSigGen Class Specification Revisions

extension groups added. New chapter arrangement. Revision 0.61

July 26, 2001

Corrections mainly on COM and C interfaces Chapter 36. ‘Hierarchies’ added

Revision 0.62

Aug 13, 2001

Based on telefon conference Aug. 11, 2001: Arb Markers and Arb Sequences deleted; new DM Base Modulation as TDMA split off; COM hierarchy edited; ....

Revision 0.63

Sept 10, 2001

IVI Meeting Boston: Overview description added;...

Revision 0.64

October 2001

Corrections in Section 2 – Naming of groups Section 3 modified to meet general standard; Software Trigger Extension Group added; Reset Frequeny Step / Reset Power Step / Reset List functions added; Section 30, Attribute ID Definitions modified; Section 31, Attribute Value Definition modified; Section 34, Hierarchies: COM & C added Appendix C Include File added Missing Sections added

Revision 0.70

November 2001

Updated specification with the updated style guide Sweep Behaviour added

Revision 1.0rc1

November 2001

Updated specification as release candidate 1. There are also several spelling, wording, and syntax corrections.

Revision 1.0rc2

December 2001

Updated specification based on feedback received on V1.0rc1 CATID added

Revision 1.0rc3

March 2002

Updated specification based on feedback received on V1.0rc2. Fixed typos, spelling and wording corrections. API corrections (Name, Count etc.) Change to MaxTimeMilliseconds Change Scale attributes to Scaling (VB problem) Corrections in the compliance notes. Interchangeability Checking Rules added. Updated IDL; Correction in C Include File

IVI Foundation

13

IVI-4.10 IviRFSigGen Class Specification

1.

Overview of the IviRFSigGen Specification

1.1

Introduction This specification defines the IVI class for RF signal generators. The IviRFSigGen class is designed to support the typical RF signal generator as well as common extended functionality found in more complex instruments. This section summarizes the IviRFSigGen Specification itself and contains general information that the reader may need in order to understand, interpret, and implement aspects of this specification. These aspects include the following:

1.2

?

IviRFSigGen Class Overview

?

References

?

Definitions of Terms and Acronyms

IviRFSigGen Class Overview This specification defines the IVI class for RF signal generators (RF SigGens). The IviRFSigGen class is designed to support the typical RF signal generator as well as common extended functionality found in more complex instruments. The IviRFSigGen class conceptualizes a RF signal generator as an instrument that can generate a sinussoidal carrier waveform with a wide variety of modulation types. The IviRFSigGen class is divided into a base capability group and several extension groups. The base capability group is used to configure the carrier waveform. This includes setting the output frequency and amplitude, enabling or disabling the ALC and the RF output. The IviRFSigGen base capability group is described in Section 4, IviRFSigGenBase Capability Group. The extension groups for analog and pulse modulation are IviRFSigGenModulateAM, IviRFSigGenModulateFM, IviRFSigGenModulatePM, IviRFSigGenAnalogModulationSource, IviRFSigGenModulatePulse, IviRFSigGenLFGenerator, IviRFSigGenLFGeneratorOutput, IviRFSigGenPulseGenerator, IviRFSigGenPulseDoubleGenerator and IviRFSigGenPulseGeneratorOutput. The extension groups for sweeping are IviRFSigGenSweep, IviRFSigGenFrequencySweep, IviRFSigGenPowerSweep, IviRFSigGenFrequencyStep, IviRFSigGenPowerStep and IviRFSigGenList. The extension groups for digital modulation are IviRFSigGenModulateIQ, IviRFSigGenIQImpairments, IviRFSigGenArbGeneration, IviRFSigGenDigitalModulationBase, IviRFSigGenCDMABase and IviRFSigGenTDMABase. The remaining extension groups are IviRFSigGenALC, IviRFSigGenReferenceOscillator and IviRFSigGenSoftwareTrigger.

1.3

References Several other documents and specifications are related to this specification. These other related documents are the following: ?

IVI-3.1: Architecture Overview Specification

?

IVI-3.2: Inherent Capabilities Specification

?

IVI-3.3: Standard Cross Class Capabilities

?

IVI-5.0: Glossary

?

CCITT-V.52: Characteristics of distortion and error-rate measuring apparatus for data

IVI-4.10 IviRFSigGen Class Specification

14

IVI Foundation

transmission

1.4

Definitions of Terms and Acronyms This section defines terms and acronyms that are specific to the IviRFSigGen class. Terms of more general interest are defined in IVI-5.0: Glossary. ALC

Automatic Level Control, Used for controlling the RF SigGens output signal on a constant amplitude.

TDMA

Time Division Multiple Access

CDMA

Code Division Multiple Access

LF

Low Frequency

AM

Amplitude Modulation

FM

Frequency Modulation

PM

Phase Modulation

PRBS

Pseudo Random Bit Sequence

ARB

Arbitrary (Waveform)

IVI Foundation

15

IVI-4.10 IviRFSigGen Class Specification

2.

IviRFSigGen Class Capabilities

2.1

Introduction The IviRFSigGen specification divides signal generator capabilities into a base capabilities group and multiple extension capabilities groups. Each capability group is discussed in a separate section. This section defines names for each capability group and gives an overview of the information presented in each section.

2.2

IviRFSigGen Group Names The capability group names for the IviRFSigGen class are defined in the following table. The Group Name is used to represent a particular capability group and is returned as one of the possible group names from the IviRFSigGenGroupCapabilities attribute, see IVI-3.3: Standard Cross Class Capabilities Specification. Table 2-1. IviRFSigGen Group Names

Group Name

Description

IviRFSigGenBaseCapabilities

Base Capabilities: For generators that at minimum support setting the output frequency and amplitude, enabling or disabling the ALC and the RF output.

IviRFSigGenModulateAM

Extension Group: For generators with the ability to apply amplitude modulation to an output signal.

IviRFSigGenModulateFM

Extension Group: For generators with the ability to apply frequency modulation to an output signal.

IviRFSigGenModulatePM

Extension Group: For generators with the ability to apply phase modulation to an output signal.

IviRFSigGenAnalogModulationSource

Extension Group: For generators with at least one modulation source.

IviRFSigGenModulatePulse

Extension Group: For generators with the ability to apply pulse modulation to an output signal.

IviRFSigGenLFGenerator

Extension Group: For generators with an internal LF generator.

IviRFSigGenLFGeneratorOutput

Extension Group: For generators with an internal LF generator and a configurable output.

IviRFSigGenPulseGenerator

Extension Group: For generators with an internal pulse generator.

IviRFSigGenPulseDoubleGenerator

Extension Group: For generators with an internal pulse generator and the ability to generate a double pulse.

IviRFSigGenPulseGeneratorOutput

Extension Group: For generators with an internal pulse generator and a configurable output.

IviRFSigGenSweep

Extension Group: For generators with the ability to sweep the output frequency and/or power by analog means, discrete steps, or a list of values.

IviRFSigGenFrequencySweep

Extension Group: For generators with the ability to sweep the output frequency.

IVI-4.10 IviRFSigGen Class Specification

16

IVI Foundation

Table 2-1. IviRFSigGen Group Names IviRFSigGenPowerSweep

Extension Group: For generators with the ability to sweep the output power.

IviRFSigGenFrequencyStep

Extension Group: For generators with the ability to sweep the output frequency in discrete steps.

IviRFSigGenPowerStep

Extension Group: For generators with the ability to sweep the output power in discrete steps.

IviRFSigGenList

Extension Group: For generators with the ability to sweep the output frequency and/or power by alist of values.

IviRFSigGenALC

Extension Group: For generators with the ability to use an automatic level control.

IviRFSigGenReferenceOscillator

Extension Group: For generators with the ability to use an external reference frequency.

IviRFSigGenSoftwareTrigger

Extension Group: For generators with the ability to trigger signal generation.

IviRFSigGenModulateIQ

Extension Group: For generators with the ability to apply vector (IQ) modulation to an output signal.

IviRFSigGenIQImpairment

Extension Group: For generators with the ability to apply impairment to vector (IQ) modulation.

IviRFSigGenArbGenerator

Extension Group: For generators with an arbitrary waveform generator as source for vector (IQ) modulation.

IviRFSigGenDigitalModulationBase

Extension Group: For generators with the ability to apply basic Digital Modulation

IviRFSigGenCDMABase

Extension Group: For generators with the ability to apply digital CDMA (Code Division Multiple Access) modulation.

IviRFSigGenTDMABase

Extension Group: For generators with the ability to apply digital TDMA (Time Division Multiple Access) modulation.

IVI Foundation

17

IVI-4.10 IviRFSigGen Class Specification

2.3

Repeated Capability Names The IviRFSigGen Class Specification defines two repeated capabilities. Refer to the sections of IVI-3.1, Driver Architecture Specification that deal with repeated capabilities. The relevant sections are Section 2.7, Repeated Capabilities, Section 4.1.9, Repeated Capabilities, Section 4.2.5, Repeated Capabilities, and Section 5.9, Repeated Capability Identifiers and Selectors. ?

LFGenerator

?

Analog Modulation Source

2.3.1 LFGenerator In the configuration store, the name for the LFGenerator repeated capability shall be "LFGenerator". The LFGenerator capability is used by the IviRFSigGenLFGenerator and IviRFSigGenLFGeneratorOutput extension groups and shall be available only if those groups are implemented. When using the LFGenerator capability, it is necessary to set the Active LFGenerator attribute to an active repeated capability identifier before calling LFGenerator functions. All attributes and functions in the IviRFSigGenLFGenerator and IviRFSigGenLFGeneratorOutput extension groups operate on the repeated capability instance value set by the Active LFGenerator attribute.

2.3.2 Analog Modulation Source In the configuration store, the name for the analog modulation source repeated capability shall be “AnalogModulationSource”. The Analog Modulation Source capability is used by the IviRFSigGenAnalogModulationSource, IviRFSigGenModulateAM, IviRFSigGenModulateFM, and IviRFSigGenModulatePM extension groups and shall be available only if the IviRFSigGenAnalogModulationSource group is implemented.

IVI-4.10 IviRFSigGen Class Specification

18

IVI Foundation

3.

General Requirements This section describes the general requirements a specific driver shall meet in order to be compliant with this specification. In addition, it provides general requirements that specific drivers shall meet in order to comply with a capability group, attribute, or function.

3.1

Minimum Class Compliance To be compliant with the IviRFSigGen Class Specification, an IVI specific driver shall conform to all of the requirements for an IVI class-compliant specific driver specified in IVI-3.1: Driver Architecure Specification. In addition it shall implement the inherent capabilities that IVI-3.2: Inherent Capabilities Specification defines, and the IviRFSigGenBase capability group.

3.1.1 Disable Refer to IVI-3.2: Inherent Capabilities Specification for the prototype of this function. The Disable function shall cause the Signal Generator to apply the minimum amount of power possible at the output terminals. Setting the power level to a very small value or physically disconnecting the signal generator from the output terminals meets this requirement. Other techniques are also allowed.

3.2

Capability Group Compliance IVI-3.1: Architecture Overview Specification defines the general rules for a specific driver to be compliant with a capability group.

IVI Foundation

19

IVI-4.10 IviRFSigGen Class Specification

4.

IviRFSigGenBase Capabilities Group

4.1

Overview The IviRFSigGenBase capabilities group supports the basic signal generator capabilities.

4.2

IviRFSigGenBase Attributes The IviRFSigGenBase capabilities group defines the following attributes: ?

Frequency

?

Power Level

?

ALC Enabled

?

Output Enabled

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI-4.10 IviRFSigGen Class Specification

20

IVI Foundation

4.2.1 Frequency Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure RF

COM Property Name RF.Frequency

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FREQUENCY

Description Specifies the frequency of the generated RF output signal. The units are Hertz.

IVI Foundation

21

IVI-4.10 IviRFSigGen Class Specification

4.2.2 Power Level Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure RF

COM Property Name RF.Level

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_POWER_LEVEL

Description Specifies the power level of the RF output signal. The units are dBm.

IVI-4.10 IviRFSigGen Class Specification

22

IVI Foundation

4.2.3 ALC Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure ALC Enabled

COM Property Name ALC.Enabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_ALC_ENABLED

Description Enables or disables Automatic Level Control (ALC). Additional ALC attributes are in the ALC extension group. Defined Values Name True

False

Description Enables the Automatic Level Control (ALC). C

VI_TRUE

COM

VARIANT_TRUE

Disables the Automatic Level Control (ALC). C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes If a specific driver implements the value True for this attribute, it shall also implement the IviRFSigGenALC extension capability group

IVI Foundation

23

IVI-4.10 IviRFSigGen Class Specification

4.2.4 Output Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure Output Enabled

COM Property Name RF.OutputEnabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_OUTPUT_ENABLED

Description Enables or disables the RF output signal. Defined Values Name True

False

Description The signal the RF signal generator produces appears at the output connector. C

VI_TRUE

COM

VARIANT_TRUE

The signal the RF signal generator produces does not appear at the output connector. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes 1. Instrument drivers shall support the value True.

IVI-4.10 IviRFSigGen Class Specification

24

IVI Foundation

4.3

IviRFSigGenBase Functions In addition to the IVI required functions, the IviRFSigGen Base capability group includes the following functions: ?

Configure RF

?

Configure ALC Enabled (IVI-C only)

?

Configure Output Enabled (IVI-C only)

?

Disable All Modulation

?

Is Settled

?

Wait Until Settled

This section describes the behavior and requirements of each function.

IVI Foundation

25

IVI-4.10 IviRFSigGen Class Specification

4.3.1 Configure RF Description Configures the frequency and the power level of the RF output signal. Method Prototype HRESULT RF.Configure ([in] DOUBLE Frequency, [in] DOUBLE PowerLevel);

C Prototype ViStatus IviRFSigGen_ConfigureRF (ViSession Vi, ViReal64 Frequency, ViReal64 PowerLevel);

Parameters Inputs

Description

Vi

Instrument handle.

Frequency

Specifies the frequency of the generated RF signal. The driver uses this value to set the Frequency attribute. See the attribute description for more details.

PowerLevel

Specifies the power level of the generated RF signal. The driver uses this value to set the Power Level attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

26

IVI Foundation

4.3.2 Configure ALC Enabled (IVI-C only) Description Enables or disables the Automatic Level Control (ALC). COM Method Prototype N/A

(use the ALC.Enabled property) C Prototype ViStatus IviRFSigGen_ConfigureALCEnabled (ViSession Vi, ViBoolean ALCEnabled);

Parameters Inputs

Description

Vi

Instrument handle.

ALCEnabled

Specifies whether the ALC is used. The driver uses this value to set the ALC Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

27

IVI-4.10 IviRFSigGen Class Specification

4.3.3 Configure Output Enabled (IVI-C only) Description Enables or disables the RF output signal. COM Method Prototype N/A

(use the RF.OutputEnabled property) C Prototype ViStatus IviRFSigGen_ConfigureOutputEnabled (ViSession Vi, ViBoolean OutputEnabled);

Parameters Inputs

Description

Vi

Instrument handle.

OutputEnabled

Specifies whether the RF output is enabled. The driver uses this value to set the Output Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

28

IVI Foundation

4.3.4 Disable All Modulation Description Disables all currently enabled modulations (e.g. analog, pulse, IQ, and digital modulation). COM Method Prototype HRESULT RF.DisableAllModulation();

C Prototype ViStatus IviRFSigGen_DisableAllModulation (ViSession Vi);

Parameters Inputs Vi

Description Instrument handle.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

29

IVI-4.10 IviRFSigGen Class Specification

4.3.5 Is Settled Description Queries if the RF output signal is currently settled. COM Method Prototype HRESULT RF.IsSettled ([out, retval] VARIANT_BOOL *Done);

C Prototype ViStatus IviRFSigGen_IsSettled (ViSession Vi, ViBoolean * Done);

Parameters Inputs

Description Instrument handle

Vi

Outputs Done

Description Returns True if the output signal is in settled, False otherwise.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

30

IVI Foundation

4.3.6 Wait Until Settled Description This function waits until the state of the RF output signal has settled. COM Method Prototype HRESULT RF.WaitUntilSettled ([in] LONG MaxTimeMilliseconds);

C Prototype ViStatus IviRFSigGen_WaitUntilSettled (ViSession Vi, ViInt32 MaxTimeMilliseconds);

Parameters Inputs

Description

Vi

Instrument handle.

MaxTimeMillise conds

Defines the maximum time the function waits for the output to be settled. If the maximum time is exceeded, this function returns the Max Time Exceeded error.The units are milliseconds.

Defined Values for MaxTime Parameter Name

Description Language

Max Time Immediate

Max Time Infinite

Identifier

Sets timeout to immediate. The function returns immediately. C

IVIRFSIGGEN_VAL_MAX_TIME_IMMEDIATE

COM

IviRFSigGenMaxTimeImmediate

Sets timeout to infinite. The function waits indefinitely for the settling to complete. C

IVIRFSIGGEN_VAL_MAX_TIME_INFINITE

COM

IviRFSigGenMaxTimeInfinite

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return. The table below specifies additional class-defined status codes for this function.

Completion Codes Max Time Exceeded

Description Error: Maximum time exceeded before the operation completed.

Compliance Notes An IviRFSigGen specific driver need not implement the Max Time Immediate or the Max Time Infinite defined values for the MaxTimeMilliseconds parameter to be compliant with the IviRFSigGenBase Capability group.

IVI Foundation

31

IVI-4.10 IviRFSigGen Class Specification

4.4

IviRFSigGen Behavior Model After the user calls the Initialize or Reset functions, the RF signal generator produces an output signal based on its current configuration. All changes to the RF signal generator’s IviRFSigGenBase functions and attributes take place immediately. If the user executes the Wait Until Settled function, the driver will block any further operation until the function completes (i.e. the signal at the output of the RF signal generator has settled).

IVI-4.10 IviRFSigGen Class Specification

32

IVI Foundation

5.

IviRFSigGenModulateAM Extension Group

5.1

IviRFSigGenModulateAM Extension Group Overview The IviRFSigGenModulateAM Extension Group supports signal generators that can apply amplitude modulation to the RF output signal. The user can enable or disable amplitude modulation, specify the source and coupling of the modulating signal and the modulation depth with linear or logarithmic attenuation.

5.2

IviRFSigGenModulateAM Attributes The IviRFSigGenModulateAM extension group defines the following attributes: ?

AM Enabled

?

AM Source

?

AM Scaling

?

AM External Coupling

?

AM Nominal Voltage

?

AM Depth

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

33

IVI-4.10 IviRFSigGen Class Specification

5.2.1 AM Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure AM Enabled

COM Property Name AnalogModulation.AM.Enabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_AM_ENABLED

Description Specifies whether the signal generator enables or disables amplitude modulation of the RF output signal. Defined Values Name True

False

Description The RF signal generator applies amplitude modulation to the output signal. C

VI_TRUE

COM

VARIANT_TRUE

The RF signal generator does not apply amplitude modulation to the output signal. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes 1. Instrument drivers shall support the values True and False.

IVI-4.10 IviRFSigGen Class Specification

34

IVI Foundation

5.2.2 AM Source Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Configure AM

COM Property Name AnalogModulation.AM.Source

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_AM_SOURCE

Description Specifies the source of the signal that is used as the modulating signal. If more than one source is specified, the voltages of all specified sources (internal and external) are summed. Multiple source names are separated by commas. Defined Values To get the valid source names, use the Get Modulation Source Name function (IVI-C) or the Analog Modulation Source Name property (IVI-COM) from the IviRFSigGenAnalogModulationSource extension group.

IVI Foundation

35

IVI-4.10 IviRFSigGen Class Specification

5.2.3 AM Scaling Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure AM

COM Property Name AnalogModulation.AM.Scaling

COM Enumeration Name IviRFSigGenAMScalingEnum

C Constant Name IVIRFSIGGEN_ATTR_AM_SCALING

Description Specifies linear or logarithmic characteristic for amplitude modulation. The units of the AM Depth attribute is changed with this setting. Defined Values Name

Description Language

Linear

Logarithmic

Identifier

Enables linear attenuation for amplitude modulation. C

IVIRFSIGGEN_VAL_AM_SCALING_LINEAR

COM

IviRFSigGenAMScalingLinear

Enables logarithmic attenuation for amplitude modulation. C

IVIRFSIGGEN_VAL_AM_SCALING_LOGARITHMIC

COM

IviRFSigGenAMScalingLogarithmic

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_AM_SCALING_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_AM_SCALING_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_AM_SCALING_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to AM Scale Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of AM Scaling Specific Ext Base, IVIRFSIGGEN_VAL_AM_SCALING_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_AM_SCALING_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

36

IVI Foundation

5.2.4 AM External Coupling Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure AM External Coupling

COM Property Name AnalogModulation.AM.ExternalCoupling

COM Enumeration Name IviRFSigGenAMExternalCouplingEnum

C Constant Name IVIRFSIGGEN_ATTR_AM_EXTERNAL_COUPLING

Description Specifies the coupling of the external source of the modulating signal. Defined Values Name

Description Language

AC

DC

Identifier

The external source is coupled for AC only. C

IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_AC

COM

IviRFSigGenAMExternalCouplingAC

The external source is coupled for both DC and AC C

IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_DC

COM

IviRFSigGenAMExternalCouplingDC

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE.

2. If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE. 3. When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to AM External Coupling Specific Ext Base. See Section Attribute Value Definitions, for the definitions of AM External Coupling Specific Ext Base, IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_CLASS_EXT_BASE.

IVI Foundation

37

IVI-4.10 IviRFSigGen Class Specification

5.2.5 AM Nominal Voltage Data Type

Access

Applies to

Coercion

ViReal64

RO

N/A

None

High Level Functions None

COM Property Name AnalogModulation.AM.NominalVoltage

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_AM_NOMINAL_VOLTAGE

Description Returns the voltage at which the instrument achieves the amount of modulation specified by the AM Depth attribute. The units are Volts.

IVI-4.10 IviRFSigGen Class Specification

38

IVI Foundation

5.2.6 AM Depth Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure AM

COM Property Name AnalogModulation.AM.Depth

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_AM_DEPTH

Description Specifies the extent of modulation the signal generator applies to the RF-signal (carrier waveform) with the modulating signal as a result of summing all sources, internal and external. The amount of the specified modulation depth is achieved with a modulating voltage of AM Nominal Voltage. If the AM Scaling attribute is set to Linear, then the units are percent (%). If the AM Scaling attribute is set to logarithmic, then the units are dBm.

IVI Foundation

39

IVI-4.10 IviRFSigGen Class Specification

5.3

IviRFSigGenModulateAM Functions The IviRFSigGenModulateAM extension defines the following functions: ?

Configure AM Enabled (IVI-C only)

?

Configure AM External Coupling (IVI-C only)

?

Configure AM

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

40

IVI Foundation

5.3.1 Configure AM Enabled (IVI-C only) Description Configures the signal generator to apply amplitude modulation to the RF output signal. COM Method Prototype N/A

(use the AnalogModulation.AM.Enabled property) C Prototype ViStatus IviRFSigGen_ConfigureAMEnabled (ViSession Vi, ViBoolean Enabled);

Parameters Inputs

Description

Vi

Instrument handle

Enabled

Enables or disables amplitude modulation. The driver uses this value to set the AM Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

41

IVI-4.10 IviRFSigGen Class Specification

5.3.2 Configure AM External Coupling (IVI-C only) Description Configures the coupling of the external source the signal generator uses for amplitude modulation of the output signal. COM Method Prototype N/A

(use the AnalogModulation.AM.ExternalCoupling property) C Prototype ViStatus IviRFSigGen_ConfigureAMExternalCoupling (ViSession Vi, ViInt32 Coupling);

Parameters Inputs

Description

Vi

Instrument handle

Coupling

Specifies the coupling of the external source. The driver uses this value to set the AM External Coupling attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

42

IVI Foundation

5.3.3 Configure AM Description Configures the attributes that control the signal generator's amplitude modulation. These attributes are the AM modulation source, scaling and depth. COM Method Prototype HRESULT AnalogModulation.AM.Configure ([in] BSTR Source, [in] IviRFSigGenAMScalingEnum Scaling, [in] DOUBLE Depth);

C Prototype ViStatus IviRFSigGen_ConfigureAM (ViSession Vi, ViConstString Source, ViInt32 Scaling, ViReal64 Depth);

Parameters Inputs

Description

Vi

Instrument handle

Source

Specifies the source of the signal that the signal generator uses to modulate the output signal. The driver uses this value to set the AM Source attribute. See the attribute description for more details.

Scaling

Specifies the scaling of the modulation. The driver uses this value to set the AM Scaling attribute. See the attribute description for more details.

Depth

Specifies the extent of modulation. The driver uses this value to set the AM Depth attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

43

IVI-4.10 IviRFSigGen Class Specification

5.4

IviRFSigGenModulateAM Behavior Model The IviRFSigGenModulateAM Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenModulateAM settings.

5.5

IviRFSigGenModulateAM Compliance Notes 1.

If a specific driver implements the IviRFSigGenModulateAM Extension Group, it shall also implement the IviRFSigGenAnalogModulationSource Extension Group.

2.

If a specific driver does not support an external modulation source, it shall not support the AM External Coupling attribute or the Configure AM External Coupling function.

IVI-4.10 IviRFSigGen Class Specification

44

IVI Foundation

6.

IviRFSigGenModulateFM Extension Group

6.1

IviRFSigGenModulateFM Extension Group Overview The IviRFSigGenModulateFM Extension Group supports signal generators that can apply frequency modulation to the RF output signal. The user can enable or disable frequency modulation, specify the source and coupling of the modulating signal and the peak frequency deviation.

6.2

IviRFSigGenModulateFM Attributes The IviRFSigGenModulateFM extension group defines the following attributes: ?

FM Enabled

?

FM Source

?

FM External Coupling

?

FM Nominal Voltage

?

FM Deviation

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

45

IVI-4.10 IviRFSigGen Class Specification

6.2.1 FM Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure FM Enabled

COM Property Name AnalogModulation.FM.Enabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FM_ENABLED

Description Specifies whether the signal generator enables or disables frequency modulation of the RF output signal. Defined Values Name True

False

Description The RF signal generator applies frequency modulation to the output signal. C

VI_TRUE

COM

VARIANT_TRUE

The RF signal generator does not apply frequency modulation to the output signal. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes 1. Instrument drivers shall support the values True and False.

IVI-4.10 IviRFSigGen Class Specification

46

IVI Foundation

6.2.2 FM Source Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Configure FM

COM Property Name AnalogModulation.FM.Source

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FM_SOURCE

Description Specifies the source of the signal that is used as the modulating signal. If more than one source is specified, the voltages of all sources (internal and external) are summed. Multiple source names are separated by commas. Defined Values To get the values (names) use the Get Modulation Source Name function (IVI-C) or the Analog Modulation Source Name property (IVI-COM) from the IviRFSigGenAnalogModulationSource extension group.

IVI Foundation

47

IVI-4.10 IviRFSigGen Class Specification

6.2.3 FM External Coupling Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure FM External Coupling

COM Property Name AnalogModulation.FM.ExternalCoupling

COM Enumeration Name IviRFSigGenFMExternalCouplingEnum

C Constant Name IVIRFSIGGEN_ATTR_FM_EXTERNAL_COUPLING

Description Specifies the coupling of the external source of the modulating signal. Defined Values Name

Description Language

AC

Identifier

The external source is coupled for AC only. C

IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_AC

COM

IviRFSigGenFMExternalCouplingAC

The external source is coupled for both DC and AC

DC

C

IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_DC

COM

IviRFSigGenFMExternalCouplingDC

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to FM External Coupling Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of FM External Coupling Specific Ext Base, IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

48

IVI Foundation

6.2.4 FM Nominal Voltage Data Type

Access

Applies to

Coercion

ViReal64

RO

N/A

None

High Level Functions None

COM Property Name AnalogModulation.FM.NominalVoltage

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FM_NOMINAL_VOLTAGE

Description Returns the voltage at which the instrument achieves the amount of modulation specified by the FM Deviation attribute. The units are Volts.

IVI Foundation

49

IVI-4.10 IviRFSigGen Class Specification

6.2.5 FM Deviation Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure FM

COM Property Name AnalogModulation.FM.Deviation

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FM_DEVIATION

Description Specifies the extent of modulation (peak frequency deviation) the signal generator applies to the RF-signal (carrier waveform) with the modulating signal as a result of summing all sources, internal and external. The amount of the specified FM modulation deviation is achieved with a modulating voltage of FM Nominal Voltage.The units are Hertz.

IVI-4.10 IviRFSigGen Class Specification

50

IVI Foundation

6.3

IviRFSigGenModulateFM Functions The IviRFSigGenModulateFM extension group defines the following functions: ?

Configure FM Enabled (IVI-C only)

?

Configure FM External Coupling (IVI-C only)

?

Configure FM

This section describes the behavior and requirements of each function.

IVI Foundation

51

IVI-4.10 IviRFSigGen Class Specification

6.3.1 Configure FM Enabled (IVI-C only) Description Configures the signal generator to apply frequency modulation to the RF output signal. COM Method Prototype N/A

(use the AnalogModulation.FM.Enabled property) C Prototype ViStatus IviRFSigGen_ConfigureFMEnabled (ViSession Vi, ViBoolean Enabled);

Parameters Inputs

Description

Vi

Instrument handle

Enabled

Enables or disables frequency modulation. The driver uses this value to set the FM Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

52

IVI Foundation

6.3.2 Configure FM External Coupling (IVI-C only) Description Configures the coupling of the external source the generator uses for frequency modulation of the output signal. COM Method Prototype N/A

(use the AnalogModulation.FM.ExternalCoupling property) C Prototype ViStatus IviRFSigGen_ConfigureFMExternalCoupling (ViSession Vi, ViInt32 Coupling);

Parameters Inputs

Description

Vi

Instrument handle

Coupling

Specifies the coupling of the external source. The driver uses this value to set the FM External Coupling attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

53

IVI-4.10 IviRFSigGen Class Specification

6.3.3 Configure FM Description Configures the attributes that control the signal generator's frequency modulation. The attributes are the modulation deviation and the modulating source(s). COM Method Prototype HRESULT AnalogModulation.FM.Configure ([in] BSTR Source, [in] DOUBLE Deviation);

C Prototype ViStatus IviRFSigGen_ConfigureFM (ViSession Vi, ViConstString Source, ViReal64 Deviation);

Parameters Inputs

Description

Vi

Instrument handle

Source

Specifies the modulating source. The driver uses this value to set the FM Source attribute. See the attribute description for more details.

Deviation

Specifies the extent of modulation. The driver uses this value to set the FM Deviation attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

54

IVI Foundation

6.4

IviRFSigGenModulateFM Behavior Model The IviRFSigGenModulateFM Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenModulateFM settings.

6.5

IviRFSigGenModulateFM Compliance Notes 1.

If a specific driver implements the IviRFSigGenModulateFM Extension Group, it shall also implement the IviRFSigGenAnalogModulationSource Extension Group.

2.

If a specific driver does not support an external modulation source, it shall not support the FM External Coupling attribute or the Configure FM External Coupling function.

IVI Foundation

55

IVI-4.10 IviRFSigGen Class Specification

7.

IviRFSigGenModulatePM Extension Group

7.1

IviRFSigGenModulatePM Extension Group Overview The IviRFSigGenModulatePM Extension Group supports signal generators that can apply phase modulation to the RF output signal. The user can enable or disable phase modulation, specify the source and coupling of the modulating signal and the peak phase deviation.

7.2

IviRFSigGenModulatePM Attributes The IviRFSigGenModulatePM extension group defines the following attributes: ?

PM Enabled

?

PM Source

?

PM External Coupling

?

PM Nominal Voltage

?

PM Deviation

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI-4.10 IviRFSigGen Class Specification

56

IVI Foundation

7.2.1 PM Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure PM Enabled

COM Property Name AnalogModulation.PM.Enabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_PM_ENABLED

Description Specifies whether the signal generator enables or disables phase modulation of the RF output signal. Defined Values Name True

False

Description The RF signal generator applies phase modulation to the output signal. C

VI_TRUE

COM

VARIANT_TRUE

The RF signal generator does not apply phase modulation to the output signal. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes 1. Instrument drivers shall support the values True and False.

IVI Foundation

57

IVI-4.10 IviRFSigGen Class Specification

7.2.2 PM Source Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Configure PM

COM Property Name AnalogModulation.PM.Source

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_PM_SOURCE

Description Specifies the source of the signal that is used as the modulating signal. If more than one source is specified, the voltages of all sources (internal and external) are summed. Multiple source names are separated by commas. Defined Values To get the values (names) use the Get Modulation Source Name function (IVI-C) or the Analog Modulation Source Name property (IVI-COM) from the IviRFSigGenAnalogModulationSource extension group.

IVI-4.10 IviRFSigGen Class Specification

58

IVI Foundation

7.2.3 PM External Coupling Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure PM External Coupling

COM Property Name AnalogModulation.PM.ExternalCoupling

COM Enumeration Name IviRFSigGenPMExternalCouplingEnum

C Constant Name IVIRFSIGGEN_ATTR_PM_EXTERNAL_COUPLING

Description Specifies the coupling of the external source of the modulating signal. Defined Values Name

Description Language

AC

Identifier

The external source is coupled for AC only. C

IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_AC

COM

IviRFSigGenPMExternalCouplingAC

The external source is coupled for both DC and AC

DC

C

IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_DC

COM

IviRFSigGenPMExternalCouplingDC

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to PM External Coupling Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of AM External Coupling Specific Ext Base, IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_CLASS_EXT_BASE.

IVI Foundation

59

IVI-4.10 IviRFSigGen Class Specification

7.2.4 PM Nominal Voltage Data Type

Access

Applies to

Coercion

ViReal64

RO

N/A

None

High Level Functions None

COM Property Name AnalogModulation.PM.NominalVoltage

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_PM_NOMINAL_VOLTAGE

Description Returns the voltage at which the instrument achieves the amount of modulation specified by the PM Deviation attribute. The units are Volts.

IVI-4.10 IviRFSigGen Class Specification

60

IVI Foundation

7.2.5 PM Deviation Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure PM

COM Property Name AnalogModulation.PM.Deviation

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_PM_DEVIATION

Description Specifies the extent of modulation (peak phase deviation) the signal generator applies to the RF-signal (carrier waveform) with the modulating signal as a result of summing all sources, internal and external. The amount of the specified PM modulation deviation is achieved with a modulating voltage of PM Nominal Voltage. The units are radians.

IVI Foundation

61

IVI-4.10 IviRFSigGen Class Specification

7.3

IviRFSigGenModulatePM Functions The IviRFSigGenModulatePM extension group defines the following functions: ?

Configure PM Enabled (IVI-C only)

?

Configure PM External Coupling (IVI-C only)

?

Configure PM

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

62

IVI Foundation

7.3.1 Configure PM Enabled (IVI-C only) Description Configures the signal generator to apply phase modulation to the RF output signal. COM Method Prototype N/A

(use the AnalogModulation.PM.Enabled property) C Prototype ViStatus IviRFSigGen_ConfigurePMEnabled (ViSession Vi, ViBoolean Enabled);

Parameters Inputs

Description

Vi

Instrument handle

Enabled

Enables or disables phase modulation. The driver uses this value to set the PM Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

63

IVI-4.10 IviRFSigGen Class Specification

7.3.2 Configure PM External Coupling (IVI-C only) Description Configures the coupling of the external source for phase modulation. COM Method Prototype N/A

(use the AnalogModulation.PM.ExternalCoupling property) C Prototype ViStatus IviRFSigGen_ConfigurePMExternalCoupling (ViSession Vi, ViInt32 Coupling);

Parameters Inputs

Description

Vi

Instrument handle

Coupling

Specifies the coupling of the external source. The driver uses this value to set the PM External Coupling attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

64

IVI Foundation

7.3.3 Configure PM Description Configures the attributes that control the signal generator's phase modulation. The attributes are the modulation deviation and the modulating source(s). Method Prototype HRESULT AnalogModulation.PM.Configure ([in] BSTR Source, [in] DOUBLE Deviation);

C Prototype ViStatus IviRFSigGen_ConfigurePM (ViSession Vi, ViConstString Source, ViReal64 Deviation);

Parameters Inputs

Description

Vi

Instrument handle

Source

Specifies the source of the signal the signal generator uses to modulate the output signal. The driver uses this value to set the PM Source attribute. See the attribute description for more details.

Deviation

Specifies the extent of modulation. The driver uses this value to set the PM Deviation attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

65

IVI-4.10 IviRFSigGen Class Specification

7.4

IviRFSigGenModulatePM Behavior Model The IviRFSigGenModulatePM Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenModulatePM settings.

7.5

IviRFSigGenModulatePM Compliance Notes 1.

If a specific driver implements the IviRFSigGenModulatePM Extension Group, it shall also implement the IviRFSigGenAnalogModulationSource Extension Group.

2.

If a specific driver does not support an external modulation source, it shall not support the PM External Coupling attribute or the Configure PM External Coupling function.

IVI-4.10 IviRFSigGen Class Specification

66

IVI Foundation

8.

IviRFSigGenAnalogModulationSource Extension Group

8.1

IviRFSigGenAnalogModulationSource Extension Group Overview The source of the modulating signal is a repeated capability. One or more internal sources (LF Generators) and/or one and more external sources can be combined. The voltage of all signals is summed before modulating the RF Signal. This applies to the following extension groups: ?

IviRFSigGenModulateAM

?

IviRFSigGenModulateFM

?

IviRFSigGenModulatePM

Typically, all the LFGenerators defined in the IviRFSigGenLFGenerator extension group have a corresponding Analog Modulation Source.

8.2

IviRFSigGenAnalogModulationSource Attributes The IviRFSigGenAnalogModulationSource extension group defines the following attributes: ?

Analog Modulation Source Count

?

Analog Modulation Source Name (IVI-COM only)

This section describes the behavior and requirements of this attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

67

IVI-4.10 IviRFSigGen Class Specification

8.2.1 Analog Modulation Source Count Data Type

Access

ViInt32

RO

Applies to N/A

Coercion

High Level Functions

None

COM Property Name AnalogModulation.Source.Count

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_ANALOG_MODULATION_SOURCE_COUNT

Description Specifies how many analog modulation sources are available.

IVI-4.10 IviRFSigGen Class Specification

68

IVI Foundation

8.2.2 Analog Modulation Source Name (IVI-COM Only) Data Type ViString

Access RO

Applies to N/A

Coercion None

High Level Functions None

COM Property Name HRESULT AnalogModulation.Source.Name ([in] LONG Index, [out,retval] BSTR* Name);

COM Enumeration Name N/A

C Constant Name N/A (Use the Get Analog Modulation Source Name function.)

Description This property returns the Analog Modulation Source identifier that corresponds to the one-based index that the user specifies. If the value that the user pass for the Index parameter is less than one or greater than the value of the Analog Modulation Source Count attribute, the property returns and empty string in the Name parameter and returns the Invalid Value error. Parameters Inputs Index

Output/Return Value Name

IVI Foundation

Description

Base Type

A one-based index that defines which name to return.

Description

Base Type

A driver-allocated buffer into which the driver stores the analog modulation source name.

69

ViInt32

ViChar[]

IVI-4.10 IviRFSigGen Class Specification

8.3

IviRFSigGenAnalogModulationSource Functions The IviRFSigGenAnalogModulationSource extension group defines the following functions: ?

Get Analog Modulation Source Name (IVI-C only)

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

70

IVI Foundation

8.3.1 Get Analog Modulation Source Name (IVI-C only) Description This function returns the specific driver defined analog modulation source name that corresponds to the onebased index that the user specifies.

COM Method Prototype N/A (Use AnalogModulation.Source.Name property)

C Prototype ViStatus IviRFSigGen_GetAnalogModulationSourceName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]);

Parameters Inputs Vi Index NameBufferSize

Outputs Name

Description Instrument handle A one-based index that defines which name to return. The number of bytes in the viChar array that the user specifies for the Name parameter. Description A user-allocated buffer into which the driver stores the Analog Modulation Source name. The caller may pass VI_NULL for this parameter if the NameBufferSize parameter is 0.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return. Compliance Notes For an instrument with only one modulation source, that is the Analog Modulation Source Count attribute is one, the driver may return an empty string in the Name parameter.

IVI Foundation

71

IVI-4.10 IviRFSigGen Class Specification

8.4

IviRFSigGenAnalogModulationSource Behavior Model The IviRFSigGenAnalogModulationSource Extension Group follows the behavior model of the IviRFSigGenBase capability group.

8.5

IviRFSigGenAnalogModulationSource Compliance Notes If the driver supports this extension group it shall support the IviRFSigGenBase capabilities and at least one of the following extension groups: ?

IviRFSigGenModulateAM

?

IviRFSigGenModulateFM

?

IviRFSigGenModulatePM

IVI-4.10 IviRFSigGen Class Specification

72

IVI Foundation

9.

IviRFSigGenModulatePulse Extension Group

9.1

IviRFSigGenModulatePulse Extension Group Overview The IviRFSigGenModulatePulse Extension Group supports signal generators that can apply pulse modulation to the RF output signal. The user can enable or disable pulse modulation, and specify the source and the polarity of the modulating signal.

9.2

IviRFSigGenModulatePulse Attributes The IviRFSigGenModulatePulse extension group defines the following attributes: ?

Pulse Modulation Enabled

?

Pulse Modulation Source

?

Pulse Modulation External Polarity

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

73

IVI-4.10 IviRFSigGen Class Specification

9.2.1 Pulse Modulation Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure Pulse Modulation Enabled

COM Property Name PulseModulation.Enabled

COM Enumeration Name N/A

C Constant Name IVIRFSIGGEN_ATTR_PULSE_MODULATION_ENABLED

Description Enables or disables pulse modulation of the RF output signal. Defined Values Name True

False

Description Enables pulse modulation of the RF output signal. C

VI_TRUE

COM

VARIANT_TRUE

Disables pulse modulation of the RF output signal. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes 1. Instrument drivers shall support the values True and False.

IVI-4.10 IviRFSigGen Class Specification

74

IVI Foundation

9.2.2 Pulse Modulation Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure Pulse Modulation Source

COM Property Name PulseModulation.Source

COM Enumeration Name IviRFSigGenPulseModulationSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_PULSE_MODULATION_SOURCE

Description Specifies the source of the signal that is used as the modulating signal. Defined Values Name

Description Language

Internal

External

Identifier

The internal pulse generator (IviRFSigGenPulseGenerator Extension Group) is used for modulation. C

IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_INTERNAL

COM

IviRFSigGenPulseModulationSourceInternal

An external generator is used for modulation. C

IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_EXTERNAL

COM

IviRFSigGenPulseModulationSourceExternal

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Pulse Modulation Source Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of Pulse ModulationSource Specific Ext Base, IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_CLASS_EXT_BASE.

IVI Foundation

75

IVI-4.10 IviRFSigGen Class Specification

9.2.3 Pulse Modulation External Polarity Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure Pulse Modulation External Polarity

COM Property Name PulseModulation.ExternalPolarity

COM Enumeration Name IviRFSigGenPulseModulationExternalPolarityEnum

C Constant Name IVIRFSIGGEN_ATTR_PULSE_MODULATION_EXTERNAL_POLARITY

Description Specifies the polarity of the external source signal. Defined Values Name

Description Language

Normal

Inverse

Identifier

The signal generator modulates the carrier signal with normal pulse polarity. Increasing the positive pulse voltage level results in higher RF level. C

IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_POLARITY _NORMAL

COM

IviRFSigGenPulseModulationExternalPolarityNormal

The signal generator modulates the carrier signal with inverted pulse polarity. Increasing the positive pulse voltage level results in lower RF level. C

IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_POLARITY _INVERSE

COM

IviRFSigGenPulseModulationExternalPolarityInverse

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_POLARITY_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_POLARITY_SPECIFIC_EXT_BASE.

2. If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_POLARITY_SPECIFIC_EXT_BASE. 3. When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Pulse Modulation External Polarity Specific Ext Base.

IVI-4.10 IviRFSigGen Class Specification

76

IVI Foundation

See Section Attribute Value Definitions, for the definitions of Pulse Modulation Specific Ext Base, IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_POLARITY_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_POLARITY_CLASS_EXT_BASE.

IVI Foundation

77

IVI-4.10 IviRFSigGen Class Specification

9.3

IviRFSigGenModulatePulse Functions The IviRFSigGenPulseModulation extension group defines the following functions: ?

Configure Pulse Modulation Enabled (IVI-C only)

?

Configure Pulse Modulation Source (IVI-C only)

?

Configure Pulse Modulation External Polarity (IVI-C only)

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

78

IVI Foundation

9.3.1 Configure Pulse Modulation Enabled (IVI-C only) Description Configures the signal generator to apply pulse modulation to the RF output signal. COM Method Prototype N/A

(use the PulseModulation.Enabled property) C Prototype ViStatus IviRFSigGen_ConfigurePulseModulationEnabled (ViSession Vi, ViBoolean Enabled);

Parameters Inputs

Description

Vi

Instrument handle

Enabled

True enables pulse modulation. The driver uses this value to set the Pulse Modulation Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

79

IVI-4.10 IviRFSigGen Class Specification

9.3.2 Configure Pulse Modulation Source (IVI-C only) Description Configures the source the signal generator uses for pulse modulation of the RF output signal. COM Method Prototype N/A

(use the PulseModulation.Source property) C Prototype ViStatus IviRFSigGen_ConfigurePulseModulationSource (ViSession Vi, ViConstString Source);

Parameters Inputs

Description

Vi

Instrument handle

Source

Specifies the source of the signal, the signal generator uses to modulate the output signal. The driver uses this value to set the Pulse Modulation Source attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

80

IVI Foundation

9.3.3 Configure Pulse Modulation External Polarity (IVI-C only) Description Specifies the polarity of the external source signal. COM Method Prototype N/A

(use the PulseModulation.ExternalPolarity property) C Prototype ViStatus IviRFSigGen_ConfigurePulseModulationExternalPolarity (ViSession Vi, ViInt32 Polarity);

Parameters Inputs

Description

Vi

Instrument handle

Polarity

Specifies the polarity of the signal used as the external modulation source. The driver uses this value to set the Pulse Modulation External Polarity attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

81

IVI-4.10 IviRFSigGen Class Specification

9.4

IviRFSigGenModulatePulse Behavior Model The IviRFSigGenModulatePulse Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenModulatePulse settings.

9.5

IviRFSigGenModulatePulse Compliance Notes 1.

If a specific driver supports the value Internal for the Pulse Modulation Source attribute, it shall also implement the IviRFSigGenPulseGenerator Extension Group.

2.

If a specific driver does not support an external pulse modulation source, it need not support the Configure Pulse Modulation External Polarity function and the Pulse Modulation External Polarity attribute.

IVI-4.10 IviRFSigGen Class Specification

82

IVI Foundation

10.

IviRFSigGenLFGenerator Extension Group

10.1

IviRFSigGenLFGenerator Extension Group Overview The IviRFSigGenLFGenerator Extension Group supports the LF generator (within the RF signal generator), that is normally used as a source for the modulators. To use the LF generator as a modulation source, the modulation source in the ModulateAM extensions group, ModulateFM extension group or ModulatePM extension group should be configured. The user can set the frequency and the waveform of the LF signal.

10.2

IviRFSigGenLFGenerator Attributes The IviRFSigGenLFGenerator extension group defines the following attributes: ?

Active LFGenerator

?

LFGenerator Count

?

LFGenerator Name (IVI-COM only)

?

LFGenerator Frequency

?

LFGenerator Waveform

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

83

IVI-4.10 IviRFSigGen Class Specification

10.2.1 Active LFGenerator Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Set Active LFGenerator

COM Property Name LFGenerator.ActiveLFGenerator

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_ACTIVE_LF_GENERATOR

Description Specifies the LF generator which is currently active. The values for this arttribute correspond to the LFGenerator repeated capability.

IVI-4.10 IviRFSigGen Class Specification

84

IVI Foundation

10.2.2 LFGenerator Count Data Type

Access

ViInt32

RO

Applies to N/A

Coercion None

High Level Functions N/A

COM Property Name LFGenerator.Count

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_LF_GENERATOR_COUNT

Description Specifies the number of LF generator sources available for a particular instrument.

IVI Foundation

85

IVI-4.10 IviRFSigGen Class Specification

10.2.3 LFGenerator Name (IVI-COM Only) Data Type ViString

Access RO

Applies to N/A

Coercion None

High Level Functions None

COM Property Name HRESULT LFGenerator.Name ([in] LONG Index, [out,retval] BSTR* Name);

COM Enumeration Name N/A

C Constant Name N/A (Use the Get LFGenerator Name function.)

Description This property returns the LFGenerator identifier that corresponds to the one-based index that the user specifies. If the value that the user pass for the Index parameter is less than one or greater than the value of the LFGenerator Count attribute, the property returns and empty string in the Name parameter and returns the Invalid Value error. Parameters Inputs Index

Description A one-based index that defines which name to return.

Output/Return Value Name

Description A driver-allocated buffer into which the driver stores the LFGenerator name.

IVI-4.10 IviRFSigGen Class Specification

86

Base Type ViInt32

Base Type ViChar[]

IVI Foundation

10.2.4 LFGenerator Frequency Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure LF Generator

COM Property Name LFGenerator.Frequency

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_LF_GENERATOR_FREQUENCY

Description Specifies the frequency of the active LF generator. The units are Hertz.

IVI Foundation

87

IVI-4.10 IviRFSigGen Class Specification

10.2.5 LFGenerator Waveform Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure LF Generator

COM Property Name LFGenerator.Waveform

COM Enumeration Name IviRFSigGenLFGeneratorWaveformEnum

C Constant Name IVIRFSIGGEN_ATTR_LF_GENERATOR_WAVEFORM

Description Specifies the waveform of the active LF generator. Defined Values Name

Description Language

Sine

Square

Triangle

Ramp Up

Ramp Down

Identifier

Configures the LF generator to produce a sinusoidal waveform C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_SINE

COM

IviRFSigGenLFGeneratorWaveformSine

Configures the LF generator to produce a square waveform C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_SQUARE

COM

IviRFSigGenLFGeneratorWaveformSquare

Configures the LF generator to produce a triangle waveform C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_TRIANGLE

COM

IviRFSigGenLFGeneratorWaveformTriangle

Configures the LF generator to produce a rising ramp waveform C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_RAMP_UP

COM

IviRFSigGenLFGeneratorWaveformRampUp

Configures the LF generator to produce a falling ramp waveform C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_RAMP_DOWN

COM

IviRFSigGenLFGeneratorWaveformRampDown

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_SPECIFIC_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

88

IVI Foundation

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to LFGenerator Waveform Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of LFGenerator Specific Ext Base, IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_CLASS_EXT_BASE.

IVI Foundation

89

IVI-4.10 IviRFSigGen Class Specification

10.3

IviRFSigGenLFGenerator Functions The IviRFSigGenLFGenerator extension group defines the following function: ?

Get LFGenerator Name (IVI-C only)

?

Set Active LFGenerator (IVI-C only)

?

Configure LFGenerator

This section describes the behavior and requirements of this function.

IVI-4.10 IviRFSigGen Class Specification

90

IVI Foundation

10.3.1 Get LFGenerator Name (IVI-C only) Description This function returns the specific driver defined LF generator source name that corresponds to the one-based index that the user specifies. COM Method Prototype N/A (Use LFGenerator.Name property)

C Prototype ViStatus IviRFSigGen_GetLFGeneratorName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]);

Parameters Inputs Vi Index NameBufferSize

Outputs Name

Description Instrument handle A one-based index that defines which name to return. The number of bytes in the ViChar array that the user specifies for the Name parameter. Description A user-allocated buffer into which the driver stores the LFGenerator name. The caller may pass VI_NULL for this parameter if the NameBufferSize parameter is 0.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return. Compliance Notes For an instrument with only one LF generator source, that is the LFGenerator Count attribute is one, the driver may return an empty string in the Name parameter.

IVI Foundation

91

IVI-4.10 IviRFSigGen Class Specification

10.3.2 Set Active LFGenerator (IVI-C Only) Description This function selects one of the available LF generator sources, and makes it the active LFGenerator. COM Method Prototype N/A

C Function Prototype ViStatus IviRFSigGen_SetActiveLFGenerator (ViSession Vi, ViConstString ActiveLFGenerator);

Parameters Inputs

Description

Vi

Instrument handle.

ActiveLFGenerator

LF generator source to be selected. The driver uses this value to set the Active LFGenerator attribute. See the attribute description for more details.

Return Values The IVI-3.2:Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

92

IVI Foundation

10.3.3 Configure LFGenerator Description Configures the LF generator output frequency and waveform. COM Method Prototype HRESULT LFGenerator.Configure ([in] DOUBLE Frequency, [in] IviRFSigGenLFGeneratorWaveformEnum Waveform);

C Prototype ViStatus IviRFSigGen_ConfigureLFGenerator (ViSession Vi, ViReal64 Frequency, ViInt32 Waveform);

Parameters Inputs

Description

Vi

Instrument handle

Frequency

Specifies the frequency of the LF generator. The driver uses this value to set the LFGenerator Frequency attribute. See the attribute description for more details.

Waveform

Specifies the waveform of the LF generator. The driver uses this value to set the LFGenerator Waveform attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

93

IVI-4.10 IviRFSigGen Class Specification

10.4

IviRFSigGenLFGenerator Behavior Model The IviRFSigGenLFGenerator Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenLFGenerator settings.

10.5

IviRFSigGenLFGenerator Compliance Notes 1.

If a specific driver implements the IviRFSigGenLFGenerator Extension Group, it shall also implement the IviRFSigGenAnalogModulationSource Extension Group.

IVI-4.10 IviRFSigGen Class Specification

94

IVI Foundation

11.

IviRFSigGen LFGeneratorOutput Extension Group

11.1

IviRFSigGenLFGeneratorOutput Extension Group Overview The IviRFSigGenLFGenerator Output Extension Group supports the output of the LF generator, if it is used as a source for external devices. The user can set the amplitude and enable or disable the output. This extension group requires the LFGenerator extension group.

11.2

IviRFSigGenLFGeneratorOutput Attributes ?

LFGenerator Output Amplitude

?

LFGenerator Output Enabled

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

95

IVI-4.10 IviRFSigGen Class Specification

11.2.1 LFGenerator Output Amplitude Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure LFGenerator Output

COM Property Name LFGenerator.Output.Amplitude

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_LF_GENERATOR_OUTPUT_AMPLITUDE

Description Specifies the output voltage the of the LF generator. The units are Volts, peak-to-peak.

IVI-4.10 IviRFSigGen Class Specification

96

IVI Foundation

11.2.2 LFGenerator Output Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure LF Output

COM Property Name LFGenerator.Output.Enabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_LF_GENERATOR_OUTPUT_ENABLED

Description Enables or disables the LF generator external output. Defined Values Name True

False

Description The LF generator applies a signal to the output. C

VI_TRUE

COM

VARIANT_TRUE

The LF generator does not apply a signal to the output. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes 1. Instrument drivers shall support the value True.

IVI Foundation

97

IVI-4.10 IviRFSigGen Class Specification

11.3

IviRFSigGenLFGeneratorOutput Functions The IviRFSigGenLFGeneratorOutput extension group defines the following function: ?

Configure LFGenerator Output

This section describes the behavior and requirements of this function.

IVI-4.10 IviRFSigGen Class Specification

98

IVI Foundation

11.3.1 Configure LFGenerator Output Description Configures the attributes of the LF generator output (within the RF signal generator). COM Method Prototype HRESULT LFGenerator.Output.Configure ([in] DOUBLE Amplitude, [in] VARIANT_BOOL Enabled );

C Prototype ViStatus IviRFSigGen_ConfigureLFGeneratorOutput (ViSession Vi, ViReal64 Amplitude, ViBoolean Enabled);

Parameters Inputs

Description

Vi

Instrument handle

Amplitude

Specifies the output voltage of the LF generator output signal. The driver uses this value to set the LFGenerator Output Amplitude attribute. See the attribute description for more details.

Enabled

Specifies whether the LF generator applies a signal to the output. The driver uses this value to set the LFGenerator Output Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

99

IVI-4.10 IviRFSigGen Class Specification

11.4

IviRFSigGenLFGeneratorOutput Behavior Model The IviRFSigGenLFGeneratorOutput Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenLFGeneratorOutput settings.

11.5

IviRFSigGenLFGeneratorOutput Compliance Notes 1.

If a specific driver implements the IviRFSigGenLFGeneratorOutput Extension Group, it shall also implement the IviRFSigGenLFGenerator Extension Group.

IVI-4.10 IviRFSigGen Class Specification

100

IVI Foundation

12.

IviRFSigGenPulseGenerator Extension Group

12.1

IviRFSigGenPulseGenerator Extension Group Overview The IviRFSigGenPulseGenerator Extension Group supports the pulse generator within the signal generator that is normally used as a source for the pulse modulator. The user can set the pulse period, width and delay. The pulse can be triggered, so source and external trigger polarity can be set. Double pulse can be set with the functions and attributes of the IviRFSigGenPulseDoubleGenerator extension group. The output of the pulse generator can be set with the functions and attributes of the IviRFSigGenPulseOutput extension group.

12.2

IviRFSigGenPulseGenerator Attributes The IviRFSigGenPulseGenerator extension group defines the following attributes: ?

Pulse Internal Trigger Period

?

Pulse Width

?

Pulse Gating Enabled

?

Pulse Trigger Source

?

Pulse External Trigger Slope

?

Pulse External Trigger Delay

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

101

IVI-4.10 IviRFSigGen Class Specification

12.2.1 Pulse Internal Trigger Period Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Pulse Internal Trigger

COM Property Name PulseGenerator.InternalTriggerPeriod

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_PULSE_INTERNAL_TRIGGER_PERIOD

Description Specifies the period of the pulse generator output signal when Pulse Trigger Source is set to Internal. The units are seconds.

IVI-4.10 IviRFSigGen Class Specification

102

IVI Foundation

12.2.2 Pulse Width Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Pulse

COM Property Name PulseGenerator.Width

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_PULSE_WIDTH

Description Specifies the width of the output pulse. The units are seconds.

IVI Foundation

103

IVI-4.10 IviRFSigGen Class Specification

12.2.3 Pulse Gating Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure Pulse

COM Property Name PulseGenerator.GatingEnabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_PULSE_GATING_ENABLED

Description Enables or disables trigger gating. Defined Values Name True

False

Description Enables the pulse trigger gating. C

VI_TRUE

COM

VARIANT_TRUE

Disables the pulse trigger gating. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes 1. Instrument drivers shall support the values True and False.

IVI-4.10 IviRFSigGen Class Specification

104

IVI Foundation

12.2.4 Pulse Trigger Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure Pulse

COM Property Name PulseGenerator.TriggerSource

COM Enumeration Name IviRFSigGenPulseTriggerSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_PULSE_TRIGGER_SOURCE

Description Specifies the source of the trigger signal the pulse generator uses to generate one pulse. Defined Values Name

Description Language

Internal

External

Identifier

No external trigger is used. The pulse period is specified with Pulse Internal Trigger Period. C

IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_INTERNAL

COM

IviRFSigGenPulseTriggerSourceInternal

The pulse is started with a trigger after the delay time specified with Pulse External Trigger Delay. C

IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_EXTERNAL

COM

IviRFSigGenPulseTriggerSourceExternal

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Pulse Trigger Source Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of Pulse Trigger Source Specific Ext Base, IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_CLASS_EXT_BASE.

IVI Foundation

105

IVI-4.10 IviRFSigGen Class Specification

12.2.5 Pulse External Trigger Slope Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure Pulse External Trigger

COM Property Name PulseGenerator.ExternalTriggerSlope

COM Enumeration Name IviRFSigGenPulseExternalTriggerSlopeEnum

C Constant Name IVIRFSIGGEN_ATTR_PULSE_EXTERNAL_TRIGGER_SLOPE

Description Specifies whether the event occurs on the rising or falling edge of the trigger input signal. Defined Values Name

Description Language

Positive

Negative

Identifier

Enables rising edge triggering. C

IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLOPE_POSI TIVE

COM

IviRFSigGenPulseExternalTriggerSlopePositive

Enables falling edge triggering. C

IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLOPE_NEGA TIVE

COM

IviRFSigGenPulseExternalTriggerSlopeNegative

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Pulse External Trigger Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of Pulse External Trigger Specific Ext Base, IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLOPE_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

106

IVI Foundation

12.2.6 Pulse External Trigger Delay Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure External Trigger

COM Property Name PulseGenerator.ExternalTriggerDelay

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_PULSE_EXTERNAL_TRIGGER_DELAY

Description Specifies the delay for starting the output pulse with respect to the trigger input. The units are seconds.

IVI Foundation

107

IVI-4.10 IviRFSigGen Class Specification

12.3

IviRFSigGenPulseGenerator Functions The IviRFSigGenPulseGenerator extension group defines the following functions: ?

Configure Pulse External Trigger

?

Configure Pulse Internal Trigger (IVI-C only)

?

Configure Pulse

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

108

IVI Foundation

12.3.1 Configure Pulse External Trigger Description Configures the triggering of the pulse generator within the RF signal generator. Specifies the external trigger slope and the delay time for starting the pulse after the trigger pulse. COM Method Prototype HRESULT PulseGenerator.ConfigureExternalTrigger ( [in] IviRFSigGenPulseExternalTriggerSlopeEnum Slope, [in] DOUBLE Delay);

C Prototype ViStatus IviRFSigGen_ConfigurePulseExternalTrigger (ViSession Vi, ViInt32 Slope, ViReal64 Delay);

Parameters Inputs

Description

Vi

Instrument handle

Slope

Specifies the polarity of the trigger input to start one pulse. The driver uses this value to set the Pulse External Trigger Slope attribute. See the attribute description for more details.

Delay

Specifies the delay for starting the output pulse with respect to the trigger input. The driver uses this value to set the Pulse External Trigger Delay attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

109

IVI-4.10 IviRFSigGen Class Specification

12.3.2 Configure Pulse Internal Trigger (IVI-C only) Description Configures the pulse generator within the RF signal generator. Specifies the period time (repetition rate) in case of internal trigger (free run) mode. COM Method Prototype N/A

(use the PulseGenerator.InternalTriggerPeriod property) C Prototype ViStatus IviRFSigGen_ConfigurePulseInternalTrigger (ViSession Vi, ViReal64 Period);

Parameters Inputs

Description

Vi

Instrument handle

Period

Specifies the period (repetition rate) for the pulse. The driver uses this value to set the Pulse Internal Trigger Period attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

110

IVI Foundation

12.3.3 Configure Pulse Description Configures the trigger source, pulse width and gating enabled for the pulse generator. COM Method Prototype HRESULT PulseGenerator.Configure ( [in] IviRFSigGenPulseTriggerSourceEnum PulseTriggerSource, [in] DOUBLE PulseWidth, [in] VARIANT_BOOL GatingEnabled);

C Prototype ViStatus IviRFSigGen_ConfigurePulse (ViSession Vi, ViInt32 PulseTriggerSource, ViReal64 PulseWidth, ViBoolean GatingEnabled);

Parameters Inputs

Description

Vi

Instrument handle

PulseTriggerSou rce

Specifies the source of the signal the pulse generator uses to generate one pulse. The driver uses this value to set the Pulse Trigger Source attribute. See the attribute description for more details.

PulseWidth

Specifies the width of the output pulse. The driver uses this value to set the Pulse Width attribute. See the attribute description for more details.

GatingEnabled

Enables or disables gating. The driver uses this value to set the Pulse Gating Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

111

IVI-4.10 IviRFSigGen Class Specification

12.4

IviRFSigGenPulseGenerator Behavior Model The IviRFSigGenPulseGenerator Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenPulseGenerator settings.

12.5

IviRFSigGenPulseGenerator Compliance Notes 1.

If an instrument driver implements the IviRFSigGenPulseGenerator Extension Group, it shall also implement the IviRFSigGenModulatePulse Extension Group.

2.

If an instrument driver does not implement the value Pulse Trigger Source External for the Pulse Trigger Source attribute, it shall not implement the Pulse External Trigger Delay attribute, the Pulse External Trigger Slope attribute and the Configure Pulse External Trigger function.

3.

If an instrument driver does not implement the value Pulse Trigger Source Internal for the Pulse Trigger Source attribute, it shall not implement the Pulse Internal Trigger Period attribute and the Configure Internal Trigger function.

IVI-4.10 IviRFSigGen Class Specification

112

IVI Foundation

13.

IviRFSigGenPulseDoubleGenerator Extension Group

13.1

IviRFSigGenPulseDoubleGenerator Extension Group Overview The IviRFSigGenPulseDoubleGenerator Extension Group extends the IviRFSigGenPulseGenerator Extension Group to support double pulse generation.

13.2

IviRFSigGenPulseDoubleGenerator Attributes The IviRFSigGenPulseDoubleGenerator extension group defines the following attributes: ?

Pulse Double Enabled

?

Pulse Double Delay

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

113

IVI-4.10 IviRFSigGen Class Specification

13.2.1 Pulse Double Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure Pulse Double

COM Property Name PulseGenerator.Double.Enabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_PULSE_DOUBLE_ENABLED

Description Enables or disables double pulse mode. Defined Values Name True

False

Description The double pulse mode is enabled. C

VI_TRUE

COM

VARIANT_TRUE

The double pulse mode is disabled. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes Instrument drivers shall support the values True and False.

IVI-4.10 IviRFSigGen Class Specification

114

IVI Foundation

13.2.2 Pulse Double Delay Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Pulse Double

COM Property Name PulseGenerator.Double.Delay

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_PULSE_DOUBLE_DELAY

Description Specifies the delay of the second pulse from the falling edge of the first pulse. The second pulse has the same width as the first. The units are seconds.

IVI Foundation

115

IVI-4.10 IviRFSigGen Class Specification

13.3

IviRFSigGenPulseDoubleGenerator Functions The IviRFSigGenPulseGenerator extension group defines the following function: ?

Configure Pulse Double

This section describes the behavior and requirements of this function.

IVI-4.10 IviRFSigGen Class Specification

116

IVI Foundation

13.3.1 Configure Pulse Double Description Configures the pulse generator within the RF signal generator. Specifies double pulse state and delay. COM Method Prototype HRESULT PulseGenerator.Double.Configure ([in] VARIANT_BOOL Enabled, [in] DOUBLE Delay);

C Prototype ViStatus IviRFSigGen_ConfigurePulseDouble (ViSession Vi, ViBoolean Enabled, ViReal64 Delay);

Parameters Inputs

Description

Vi

Instrument handle

Enabled

Enables or disables double pulse mode. The driver uses this value to set the Pulse Double Enabled attribute. See the attribute description for more details.

Delay

Specifies the delay of the second pulse. The driver uses this value to set the Pulse Double Delay attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

117

IVI-4.10 IviRFSigGen Class Specification

13.4

IviRFSigGenPulseDoubleGenerator Behavior Model The IviRFSigGenPulseDoubleGenerator Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenPulseDoubleGenerator settings.

13.5

IviRFSigGenPulseDoubleGenerator Compliance Notes 1.

If a specific driver implements the IviRFSigGenPulseDoubleGenerator Extension Group, it shall also implement the IviRFSigGenPulseGenerator Extension Group.

IVI-4.10 IviRFSigGen Class Specification

118

IVI Foundation

14.

IviRFSigGenPulseGeneratorOutput Extension Group

14.1

IviRFSigGenPulseGeneratorOutput Extension Group Overview The IviRFSigGenPulseGeneratorOutput Extension Group requires the IviRFSigGenPulseGenerator extension group. The output of the pulse generator can be enabled or disabled and its polarity set.

14.2

IviRFSigGenPulseGeneratorOutput Attributes The IviRFSigGenPulseGeneratorOutput extension group defines the following attributes: ?

Pulse Output Polarity

?

Pulse Output Enabled

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

119

IVI-4.10 IviRFSigGen Class Specification

14.2.1 Pulse Output Polarity Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure Pulse Output

COM Property Name PulseGenerator.Output.Polarity

COM Enumeration Name IviRFSigGenPulseOutputPolarityEnum

C Constant Name IVIRFSIGGEN_ATTR_PULSE_OUTPUT_POLARITY

Description Specifies the polarity of the output signal. Defined Values Name

Description Language

Normal

Inverse

Identifier

Specifies normal polarity. C

IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_NORMAL

COM

IviRFSigGenPulseOutputPolarityNormal

Specifies inverted polarity. C

IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_INVERSE

COM

IviRFSigGenPulseOutputPolarityInverse

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Pulse Output Polarity Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of Pulse Output Polarity Specific Ext Base, IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

120

IVI Foundation

14.2.2 Pulse Output Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure Pulse Output

COM Property Name PulseGenerator.Output.Enabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_PULSE_OUTPUT_ENABLED

Description Enables or disables the pulse generator external output. Defined Values Name True

False

Description The pulse generator’s external output is enabled. C

VI_TRUE

COM

VARIANT_TRUE

The pulse generator’s external output is disabled. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes Instrument drivers shall support the values True and False.

IVI Foundation

121

IVI-4.10 IviRFSigGen Class Specification

14.3

IviRFSigGenPulseGeneratorOutput Functions The IviRFSigGenPulseGenerator extension group defines the following functions: ?

Configure Pulse Output

This section describes the behavior and requirements of this function.

IVI-4.10 IviRFSigGen Class Specification

122

IVI Foundation

14.3.1 Configure Pulse Output Description Configures the output and polarity of the pulse generator within the RF signal generator. COM Method Prototype HRESULT PulseGenerator.Output.Configure( [in] IviRFSigGenPulseOutputPolarityEnum Polarity, [in] VARIANT_BOOL Enabled);

C Prototype ViStatus IviRFSigGen_ConfigurePulseOutput (ViSession Vi, ViInt32 Polarity, ViBoolean Enabled);

Parameters Inputs

Description

Vi

Instrument handle

Polarity

Specifies the polarity of the output signal. The driver uses this value to set the Pulse Output Polarity attribute. See the attribute description for more details.

Enabled

Enables or disables the external output of the pulse generator. The driver uses this value to set the Pulse Output Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

123

IVI-4.10 IviRFSigGen Class Specification

14.4

IviRFSigGenPulseGeneratorOutput Behavior Mode The IviRFSigGenPulseGeneratorOutput Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenPulseGeneratorOutput settings.

14.5

IviRFSigGenPulseGeneratorOutput Compliance Notes 1.

If a specific driver implements the IviRFSigGenPulseGeneratorOutput Extension Group, it shall also implement the IviRFSigGenPulseGenerator Extension Group.

IVI-4.10 IviRFSigGen Class Specification

124

IVI Foundation

15.

IviRFSigGenSweep Extension Group

15.1

IviRFSigGenSweep Overview The IviRFSigGenSweep extension group supports signal generators with the ability to sweep (or step) the frequency or the power of the RF output signal.

15.2

IviRFSigGenSweep Attributes The IviRFSigGenSweep extension group defines the following attributes: ?

Sweep Mode

?

Sweep Trigger Source

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

125

IVI-4.10 IviRFSigGen Class Specification

15.2.1 Sweep Mode Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure Sweep

COM Property Name Sweep.Mode

COM Enumeration Name IviRFSigGenSweepModeEnum

C Constant Name IVIRFSIGGEN_ATTR_SWEEP_MODE

Description Specifies the sweep mode applied to the output signal. Defined Values Name

Description Language

None

Frequency Sweep

Power Sweep

Frequency Step

Power Step

List

Identifier

The RF output of the signal generator is a non-swept signal (Continuous Wave). Frequency and power level settings from the base capability group are used. C

IVIRFSIGGEN_VAL_SWEEP_MODE_NONE

COM

IviRFSigGenSweepModeNone

The signal generator sweeps the RF output signal’s frequency in an analog form (non-stepped). Refer to IviRFSigGenFrequencySweep extension group. C

IVIRFSIGGEN_VAL_SWEEP_MODE_FREQUENCY_SWEEP

COM

IviRFSigGenSweepModeFrequencySweep

The signal generator sweeps the RF output signal’s power in an analog form (nonstepped). Refer to IviRFSigGenPowerSweep extension group. C

IVIRFSIGGEN_VAL_SWEEP_MODE_POWER_SWEEP

COM

IviRFSigGenSweepModePowerSweep

The signal generator sweeps the RF output signal’s frequency in steps. Refer to IviRFSigGenFrequencyStep extension group. C

IVIRFSIGGEN_VAL_SWEEP_MODE_FREQUENCY_STEP

COM

IviRFSigGenSweepModeFrequencyStep

The signal generator sweeps the RF output signal’s power level in steps. Refer to IviRFSigGenPowerStep extension group. C

IVIRFSIGGEN_VAL_SWEEP_MODE_POWER_STEP

COM

IviRFSigGenSweepModePowerStep

The signal generator uses two lists with frequency and power level values to sweep the RF output signal. Refer to IviRFSigGenList extension group.

IVI-4.10 IviRFSigGen Class Specification

126

IVI Foundation

C

IVIRFSIGGEN_VAL_SWEEP_MODE_LIST

COM

IviRFSigGenSweepModeList

Compliance Notes 1. A specific driver shall implement the defined value None and at least one of the other defined values. 2.

If a specific driver implements the defined value Frequency Sweep it shall implement the IviRFSigGenFrequencySweep Extension group.

3.

If a specific driver implements the defined value Power Sweep it shall implement the IviRFSigGenPowerSweep Extension group.

4.

If a specific driver implements the defined value Frequency Step it shall implement the IviRFSigGenFrequencyStep Extension group.

5.

If a specific driver implements the defined value Power Step it shall implement the IviRFSigGenPowerStep extension group.

6.

If a specific driver implements the defined value List it shall implement the IviRFSigGenList Extension group.

7. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_SWEEP_MODE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_SWEEP_MODE_SPECIFIC_EXT_BASE.

8.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_SWEEP_MODE_SPECIFIC_EXT_BASE.

9.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Sweep Mode Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of AM Sweep Mode Specific Ext Base, IVIRFSIGGEN_VAL_SWEEP_MODE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_SWEEP_MODE_CLASS_EXT_BASE.

IVI Foundation

127

IVI-4.10 IviRFSigGen Class Specification

15.2.2 Sweep Trigger Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure Sweep

COM Property Name Sweep.TriggerSource

COM Enumeration Name IviRFSigGenSweepTriggerSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_SWEEP_TRIGGER_SOURCE

Description Specifies the trigger used to start a sweep operation. Defined Values Name

Description Language

Immediate

External

Software Trigger

Identifier

The sweep system does not wait for a trigger of any kind, so it is running continuously. C

IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_IMMEDIATE

COM

IviRFSigGenSweepTriggerSourceImmediate

The sweep is started with an external signal. C

IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_EXTERNAL

COM

IviRFSigGenSweepTriggerSourceExternal

The sweep is started with a software programmable trigger. C

IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_SOFTWARE

COM

IviRFSigGenSweepTriggerSourceSoftware

Compliance Notes 1. If a specific driver implements the value Software Trigger, it shall also implement the

IviRFSigGenSoftwareTrigger Extension Group. 2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_SPECIFIC_EXT_BASE.

3. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_SPECIFIC_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

128

IVI Foundation

4.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Sweep Trigger Source Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of Sweep Trigger Source Specific Ext Base, IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_CLASS_EXT_BASE.

IVI Foundation

129

IVI-4.10 IviRFSigGen Class Specification

15.3

IviRFSigGenSweep Functions The IviRFSigGenSweep extension group defines the following functions: ?

Configure Sweep

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

130

IVI Foundation

15.3.1 Configure Sweep Description Configures the signal generator whether the RF output signal is a continuous wave or the frequency, the power level or both are swept or stepped. COM Method Prototype HRESULT Sweep.Configure ([in] IviRFSigGenSweepModeEnum Mode, [in] IviRFSigGenSweepTriggerSourceEnum TriggerSource);

C Prototype ViStatus IviRFSigGen_ConfigureSweep (ViSession Vi, ViInt32 Mode, ViInt32 TriggerSource);

Parameters Inputs

Description

Vi

Instrument handle.

Mode

Specifies the sweep mode of the RF signal generator. The driver uses this value to set the Sweep Mode attribute. See the attribute description for more details.

TriggerSource

Specifies the way to start the sweep or running it continuously. The driver uses this value to set the Sweep Trigger Source attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

131

IVI-4.10 IviRFSigGen Class Specification

15.4

IviRFSigGenSweep Behavior Model The following behavior models show the relationship between the IviRFSigGenSweep extension group and RF Signal Generator behavior.

15.4.1 Frequency Sweep / Power Sweep Sweep Mode: Frequency Sweep or Power Sweep

Sweep Trigger No

Immediate?

Yes

Wait for Trigger State

Trigger Event

Sweep

Setting the Sweep Trigger attribute to Immediate will continuously generate sweeps (either frequency or power sweeps). The duration of one sweep from start to stop is defined with Frequency Sweep Time or Power Sweep Time. Setting the Sweep Trigger attribute to External or Software Trigger will delay the start of the next sweep until the specified trigger event occurs. Trigger Immediate:

Trigger External / Software:

Sweep Time

Sweep Time

Trigger Events

IVI-4.10 IviRFSigGen Class Specification

132

IVI Foundation

15.4.2 Frequency Step / Power Step / List Sweep Mode: Frequency Steep or Power Step or List

No

Sweep Trigger Immediate? Yes

Single Step Enabled? No

Stop / End of List?

Yes

Yes

Trigger Event

Wait for Trigger State

Step

Setting the Sweep Trigger attribute to Immediate will continuously generate steps (frequency or power) either from start to stop with fixed increments (steps) or from a list of arbitrary values. The duration of one step is defined with Dwell Time. Setting the Sweep Trigger attribute to External or Software Trigger will delay the start of the next step until the specified trigger event occurs. Trigger Immediate:

Trigger External / Software: Dwell Time

Dwell Time

Stop

Stop

Start

Start

Trigger Events

Single Step and Trigger External / Software:

Trigger Events

IVI Foundation

133

IVI-4.10 IviRFSigGen Class Specification

In addition the following rules apply: 1.

When a call to Configure RF of the base capability group is made, the Sweep Mode attribute is set to None, hence stopping any sweeps that may have been in progress.

2.

When the Sweep Mode attribute is set to Frequency Sweep, Frequency Step or List Mode with frequency or frequency and power list selected, setting Frequency of the base capability group will set the Sweep Mode attribute to None. Setting the value of Power Level will control the power level of the swept signal.

3.

When the Sweep Mode attribute is set to Power Sweep, Power Step or List Mode with power or frequency and power level list selected, setting Power Level of the base capability group will set the Sweep Mode attribute to None. Setting the value of Frequency will control the frequency of the swept signal.

4.

When the Sweep Mode attribute is set to List and a frequency and power level list is selected, setting Frequency or Power Level of the base capability group will set the Sweep Mode attribute to None.

5.

When the Sweep Mode attribute is changed from any sweep mode to None, the signal generator will generate the signal accordingly to the previously set values of Frequency and Power Level of the base capability group.

IVI-4.10 IviRFSigGen Class Specification

134

IVI Foundation

16.

IviRFSigGenFrequencySweep Extension Group

16.1

IviRFSigGenFrequencySweep Extension Group Overview The IviRFSigGenFrequencySweep Extension Group supports signal generators that can apply a frequency sweep to the output signal. The user may configure the sweep with start and stop, or center and span frequencies. The sweep time is also configurable. In order to support this extension group, a driver shall first support the IviRFSigGenSweep Extension Group. This extension group is active when the Sweep Mode attribute is set to Frequency Sweep.

16.2

IviRFSigGenFrequencySweep Attributes The IviRFSigGenFrequencySweep extension group defines the following attributes: ?

Frequency Sweep Start

?

Frequency Sweep Stop

?

Frequency Sweep Time

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

135

IVI-4.10 IviRFSigGen Class Specification

16.2.1 Frequency Sweep Start Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Frequency Sweep Start Stop, Configure Frequency Sweep Center Span

COM Property Name Sweep.FrequencySweep.Start

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_START

Description Specifies the start frequency of the sweep. If the stop frequency is less than the start frequency, the frequency decreases during the sweep. The units are Hertz.

IVI-4.10 IviRFSigGen Class Specification

136

IVI Foundation

16.2.2 Frequency Sweep Stop Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Frequency Sweep Start Stop Configure Frequency Sweep Center Span

COM Property Name Sweep.FrequencySweep.Stop

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_STOP

Description Specifies the stop frequency of the sweep. If the stop frequency is less than the start frequency, the frequency decreases during the sweep. The units are Hertz.

IVI Foundation

137

IVI-4.10 IviRFSigGen Class Specification

16.2.3 Frequency Sweep Time Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Frequency Sweep Time

COM Property Name Sweep.FrequencySweep.Time

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_TIME

Description Specifies the duration of one sweep from start to stop frequency. The units are seconds.

IVI-4.10 IviRFSigGen Class Specification

138

IVI Foundation

16.3

IviRFSigGenFrequencySweep Functions The IviRFSigGenFrequencySweep extension group defines the following functions: ?

Configure Frequency Sweep Start Stop

?

Configure Frequency Sweep Center Span

?

Configure Frequency Sweep Time (IVI-C only)

This section describes the behavior and requirements of each function.

IVI Foundation

139

IVI-4.10 IviRFSigGen Class Specification

16.3.1 Configure Frequency Sweep Start Stop Description Configures the attributes that control the sweep frequencies of the generator's output signal. These attributes are start and stop frequency. If the stop frequency is less than the start frequency, the frequency decreases during the sweep. COM Method Prototype HRESULT Sweep.FrequencySweep.ConfigureStartStop ([in] DOUBLE Start, [in] DOUBLE Stop);

C Prototype ViStatus IviRFSigGen_ConfigureFrequencySweepStartStop (ViSession Vi, ViReal64 Start, ViReal64 Stop);

Parameters Inputs

Description

Vi

Instrument handle

Start

Specifies the start frequency of the sweep. The driver uses this value to set the Frequency Sweep Start attribute. See the attribute description for more details.

Stop

Specifies the stop frequency of the sweep. The driver uses this value to set the Frequency Sweep Stop attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

140

IVI Foundation

16.3.2 Configure Frequency Sweep Center Span Description Configures the attributes that control the sweep frequencies of the generator's output signal. These attributes are center and span frequency. This function modifies the attributes as follows: Frequency Sweep Start = Center – Span / 2 Frequency Sweep Stop = Center + Span / 2 COM Method Prototype HRESULT Sweep.FrequencySweep.ConfigureCenterSpan ([in] DOUBLE Center, [in] DOUBLE Span);

C Prototype ViStatus IviRFSigGen_ConfigureFrequencySweepCenterSpan (ViSession Vi, ViReal64 Center, ViReal64 Span);

Parameters Inputs

Description

Vi

Instrument handle

Center

Specifies the center frequency of the sweep. The driver uses this value to set the Frequency Sweep Start and Frequency Sweep Stop attribute. See the attribute description and function description for more details.

Span

Specifies the frequency span of the sweep. The driver uses this value to set therequency Sweep Start and Frequency Sweep Stop attribute. See the attribute description and function description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

141

IVI-4.10 IviRFSigGen Class Specification

16.3.3 Configure Frequency Sweep Time (IVI-C only) Description Configures the duration of one frequency sweep. COM Method Prototype N/A

(use the Sweep.FrequencySweep.Time property) C Prototype ViStatus IviRFSigGen_ConfigureFrequencySweepTime (ViSession Vi, ViReal64 Time);

Parameters Inputs

Description

Vi

Instrument handle

Time

Specifies the duration of the frequency sweep. The driver uses this value to set the Frequency Sweep Time attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

142

IVI Foundation

16.4

IviRFSigGenFrequencySweep Behavior Model The IviRFSigGenFrequencySweep Extension Group follows the behavior model of the IviRFSigGenSweep capability group.

16.5

IviRFSigGenFrequencySweep Compliance Notes 1.

If a specific driver implements the IviRFSigGenFrequencySweep Extension Group, it shall also implement the IviRFSigGenSweep Extension Group and support the defined value Frequency Sweep for the Sweep Mode attribute.

IVI Foundation

143

IVI-4.10 IviRFSigGen Class Specification

17.

IviRFSigGenPowerSweep Extension Group

17.1

IviRFSigGenPowerSweep Extension Group Overview The IviRFSigGenPowerSweep Extension Group supports signal generators that can apply a power sweep to the output signal. The user may configure the sweep with start and stop power. The sweep time is also configurable. In order to support this extension group, a driver shall first support the IviRFSigGenSweep Extension Group. This extension group is active when the Sweep Mode attribute is set to Power Sweep.

17.2

IviRFSigGenPowerSweep Attributes The IviRFSigGenPowerSweep extension group defines the following attributes: ?

Power Sweep Start

?

Power Sweep Stop

?

Power Sweep Time

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI-4.10 IviRFSigGen Class Specification

144

IVI Foundation

17.2.1 Power Sweep Start Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Power Sweep Start Stop

COM Property Name Sweep.PowerSweep.Start

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_POWER_SWEEP_START

Description Specifies the start power of the sweep. If the stop power is less than the start power, the power decreases in value during the sweep. The units are dBm.

IVI Foundation

145

IVI-4.10 IviRFSigGen Class Specification

17.2.2 Power Sweep Stop Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Power Sweep Start Stop

COM Property Name Sweep.PowerSweep.Stop

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_POWER_SWEEP_STOP

Description Specifies the stop power of the sweep. If the stop power is less than the start power, the power decreases in value during the sweep. The units are dBm.

IVI-4.10 IviRFSigGen Class Specification

146

IVI Foundation

17.2.3 Power Sweep Time Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Power Sweep Time

COM Property Name Sweep.PowerSweep.Time

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_POWER_SWEEP_TIME

Description Specifies the duration of one sweep from start to stop power. The units are seconds.

IVI Foundation

147

IVI-4.10 IviRFSigGen Class Specification

17.3

IviRFSigGenPowerSweep Functions The IviRFSigGenPowerSweep extension group defines the following functions: ?

Configure Power Sweep Start Stop

?

Configure Power Sweep Time (IVI-C only)

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

148

IVI Foundation

17.3.1 Configure Power Sweep Start Stop Description Configures the attributes that control the power sweep of the generator's output signal. These attributes are start and stop power. If the stop power is less than the start power, the power decreases in value during the sweep. COM Method Prototype HRESULT Sweep.PowerSweep.ConfigureStartStop ([in] DOUBLE Start, [in] DOUBLE Stop);

C Prototype ViStatus IviRFSigGen_ConfigurePowerSweepStartStop (ViSession Vi, ViReal64 Start, ViReal64 Stop);

Parameters Inputs

Description

Vi

Instrument handle

Start

Specifies the start power of the sweep. The driver uses this value to set the Power Sweep Start attribute. See the attribute description for more details.

Stop

Specifies the stop power of the sweep. The driver uses this value to set the Power Sweep Stop attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

149

IVI-4.10 IviRFSigGen Class Specification

17.3.2 Configure Power Sweep Time (IVI-C only) Description Configures the duration of one power sweep. COM Method Prototype N/A

(use the Sweep.PowerSweep.Time property) C Prototype ViStatus IviRFSigGen_ConfigurePowerSweepTime (ViSession Vi, ViReal64 Time);

Parameters Inputs

Description

Vi

Instrument handle

Time

Specifies the duration of the power sweep. The driver uses this value to set the Power Sweep Time attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

150

IVI Foundation

17.4

IviRFSigGenPowerSweep Behavior Model The IviRFSigGenPowerSweep Extension Group follows the behavior model of the IviRFSigGenSweep capability group.

17.5

IviRFSigGenPowerSweep Compliance Notes 1.

If a specific driver implements the IviRFSigGenPowerSweep Extension Group, it shall also implement the IviRFSigGenSweep Extension Group and support the defined value Power Sweep for the Sweep Mode attribute.

IVI Foundation

151

IVI-4.10 IviRFSigGen Class Specification

18.

IviRFSigGenFrequencyStep Extension Group

18.1

IviRFSigGenFrequencyStep Extension Group Overview The IviRFSigGenFrequencyStep Extension Group supports signal generators that can vary (sweep) the frequency of the RF output signal in steps. The user can specify the start, stop and step frequency and set linear or logarithmic spacing. Setting single step and dwell time are also included. This extension group requires the Sweep Extension Group. Frequency stepping is enabled by setting the Sweep Mode to Frequency Step in the IviRFSigGenSweep Extension Group.

18.2

IviRFSigGenFrequencyStep Attributes The IviRFSigGenFrequencyStep extension group defines the following attributes: ?

Frequency Step Start

?

Frequency Step Stop

?

Frequency Step Scaling

?

Frequency Step Size

?

Frequency Step Single Step Enabled

?

Frequency Step Dwell

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI-4.10 IviRFSigGen Class Specification

152

IVI Foundation

18.2.1 Frequency Step Start Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Frequency Step Start Stop

COM Property Name Sweep.FrequencyStep.Start

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FREQUENCY_STEP_START

Description Specifies the start frequency of the stepped sweep. If the stop frequency is less than the start frequency, the frequency decreases during the sweep. The units are Hertz.

IVI Foundation

153

IVI-4.10 IviRFSigGen Class Specification

18.2.2 Frequency Step Stop Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Frequency Step Start Stop

COM Property Name Sweep.FrequencyStep.Stop

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FREQUENCY_STEP_STOP

Description Specifies the stop frequency of the stepped sweep. If the stop frequency is less than the start frequency, the frequency decreases during the sweep. The units are Hertz.

IVI-4.10 IviRFSigGen Class Specification

154

IVI Foundation

18.2.3 Frequency Step Scaling Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure Frequency Step Start Stop

COM Property Name Sweep.FrequencyStep.Scaling

COM Enumeration Name IviRFSigGenFrequencyStepScalingEnum

C Constant Name IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SCALING

Description Specifies the spacing of the steps. Defined Values Name

Description Language

Linear

Logarithmic

Identifier

Enables linear scaling. C

IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_LINEAR

COM

IviRFSigGenFrequencyStepScalingLinear

Enables logarithmic scaling. C

IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_LOGARITHMI C

COM

IviRFSigGenFrequencyStepScalingLogarithmic

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Frequency Step Scaling Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of Frequency Step Scaling Specific Ext Base, IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_CLASS_EXT_BASE.

IVI Foundation

155

IVI-4.10 IviRFSigGen Class Specification

18.2.4 Frequency Step Size Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Frequency Step Start Stop

COM Property Name Sweep.FrequencyStep.Size

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SIZE

Description Specifies the step size. The units are Hertz if Frequency Step Scaling attribute is set to Linear and is unitless (factor) if Frequency Step Scaling attribute is set to Logarithmic.

IVI-4.10 IviRFSigGen Class Specification

156

IVI Foundation

18.2.5 Frequency Step Single Step Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure Frequency Step Dwell

COM Property Name Sweep.FrequencyStep.SingleStepEnabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SINGLE_STEP_ENABLED

Description Enables or disables single step mode. Defined Values Name True

False

IVI Foundation

Description Frequency Step Single Step is enabled. The frequency sweep will advance when the next trigger event occurs. C

VI_TRUE

COM

VARIANT_TRUE

Frequency Step Single Step is disabled. The frequency sweep will advance immediatly after the dwell time ends. C

VI_FALSE

COM

VARIANT_FALSE

157

IVI-4.10 IviRFSigGen Class Specification

18.2.6 Frequency Step Dwell Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Frequency Step Dwell

COM Property Name Sweep.FrequencyStep.Dwell

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_FREQUENCY_STEP_DWELL

Description Specifies the duration of one step. The units are seconds. Dwell time starts immediately after trigger or next step; no settling time is added. This attribute is ignored if the Frequency Step Single Step Enabled attribute is set to True.

IVI-4.10 IviRFSigGen Class Specification

158

IVI Foundation

18.3

IviRFSigGenFrequencyStep Functions The IviRFSigGenFrequencyStep extension group defines the following functions: ?

Configure Frequency Step Start Stop

?

Confiugure Frequency Step Dwell

?

Reset Frequency Step

This section describes the behavior and requirements of each function.

IVI Foundation

159

IVI-4.10 IviRFSigGen Class Specification

18.3.1 Configure Frequency Step Start Stop Description Configures the attributes that control the step frequencies of the generator's RF output signal. These attributes are start and stop frequency, step size and lin/log scaling. If the stop frequency is less than the start frequency, the frequency decreases during the sweep. COM Method Prototype HRESULT Sweep.FrequencyStep.ConfigureStartStop ([in] DOUBLE Start, [in] DOUBLE Stop), [in] IviRFSigGenFrequencyStepScalingEnum Scaling, [in] DOUBLE StepSize);

C Prototype ViStatus IviRFSigGen_ConfigureFrequencyStepStartStop (ViSession Vi, ViReal64 Start, ViReal64 Stop, ViInt32 Scaling, ViReal64 StepSize);

Parameters Inputs

Description

Vi

Instrument handle

Start

Specifies the start frequency of the step sweep. The driver uses this value to set the Frequency Step Start attribute. See the attribute description for more details.

Stop

Specifies the stop frequency of the step sweep. The driver uses this value to set the Frequency Step Stop attribute. See the attribute description for more details.

Scaling

Specifies the scaling of the step sweep. The driver uses this value to set the Frequency Step Scaling attribute. See the attribute description for more details.

StepSize

Specifies the size of one step. The driver uses this value to set the Frequency Step Size attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

160

IVI Foundation

18.3.2 Configure Frequency Step Dwell Description Configures the attributes that control frequency stepping. COM Method Prototype HRESULT Sweep.FrequencyStep.ConfigureDwell ([in] VARIANT_BOOL SingleStepEnabled [in] DOUBLE Dwell);

C Prototype ViStatus IviRFSigGen_ConfigureFrequencyStepDwell (ViSession Vi, ViBoolean SingleStepEnabled, ViReal64 Dwell);

Parameters Inputs

Description

Vi

Instrument handle

SingleStepEnabled

Specifies whether the trigger initiates the next step. The driver uses this value to set the Frequency Step Single Step Enabled attribute. See the attribute description for more details.

Dwell

Specifies the duration of one frequency step. The driver uses this value to set the Frequency Step Dwell attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

161

IVI-4.10 IviRFSigGen Class Specification

18.3.3 Reset Frequency Step Description Resets the current frequency step to the frequency step start value. COM Method Prototype HRESULT Sweep.FrequencyStep.Reset ();

C Prototype ViStatus IviRFSigGen_ResetFrequencyStep (ViSession Vi);

Parameters Inputs Vi

Description Instrument handle

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

162

IVI Foundation

18.4

IviRFSigGenFrequencyStep Behavior Model The IviRFSigGenFrequencyStep Extension Group follows the behavior model of the IviRFSigGenSweep capability group.

18.5

IviRFSigGenFrequencyStep Compliance Notes 1.

If a specific driver implements the IviRFSigGenFrequencyStep Extension Group, it shall also implement the IviRFSigGenSweep Extension Group and support the defined value Frequency Step for the Sweep Mode attribute.

IVI Foundation

163

IVI-4.10 IviRFSigGen Class Specification

19.

IviRFSigGenPowerStep Extension Group

19.1

IviRFSigGenPowerStep Extension Group Overview The IviRFSigGenPowerStep Extension Group supports signal generators that can vary (sweep) the power of the RF output signal in steps. The user can enable or disable stepping, specify the start, stop and step power. Setting single step and dwell time are also included. This extension group requires the Sweep Extension Group. Power stepping is enabled by setting the Sweep Mode to Power Step in the IviRFSigGenSweep Extension Group.

19.2

IviRFSigGenPowerStep Attributes The IviRFSigGenPowerStep extension group defines the following attributes: ?

Power Step Start

?

Power Step Stop

?

Power Step Size

?

Power Step Single Step Enabled

?

Power Step Dwell

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI-4.10 IviRFSigGen Class Specification

164

IVI Foundation

19.2.1 Power Step Start Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Power Step Start Stop

COM Property Name Sweep.PowerStep.Start

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_POWER_STEP_START

Description Specifies the start power of the stepped sweep. If the stop power is less than the start power, the power decreases in value during the sweep. The units are dBm.

IVI Foundation

165

IVI-4.10 IviRFSigGen Class Specification

19.2.2 Power Step Stop Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure PowerStep Start Stop

COM Property Name Sweep.PowerStep.Stop

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_POWER_STEP_STOP

Description Specifies the stop power of the stepped sweep. If the stop power is less than the start power, the power decreases in value during the sweep. The units are dBm.

IVI-4.10 IviRFSigGen Class Specification

166

IVI Foundation

19.2.3 Power Step Size Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Power Step Start Stop

COM Property Name Sweep.PowerStep.Size

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_POWER_STEP_SIZE

Description Specifies the step size. The units are dBm.

IVI Foundation

167

IVI-4.10 IviRFSigGen Class Specification

19.2.4 Power Step Single Step Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure Power Step Dwell

COM Property Name Sweep.PowerStep.SingleStepEnabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_POWER_STEP_SINGLE_STEP_ENABLED

Description Enables or disables single step mode. Defined Values Name True

False

Description Power Step Single Step is enabled. The power sweep will advance when the next trigger event occurs. C

VI_TRUE

COM

VARIANT_TRUE

Power Step Single Step is disabled. The power sweep will advance immediately after the dwell time ends. C

VI_FALSE

COM

VARIANT_FALSE

IVI-4.10 IviRFSigGen Class Specification

168

IVI Foundation

19.2.5 Power Step Dwell Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Power Step Dwell

COM Property Name Sweep.PowerStep.Dwell

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_POWER_STEP_DWELL

Description Specifies the duration of one step. The units are seconds. This attribute is ignored if Power Step Single Step Enabled is set to True.

IVI Foundation

169

IVI-4.10 IviRFSigGen Class Specification

19.3

IviRFSigGenPowerStep Functions The IviRFSigGenPowerStep extension group defines the following functions: ?

Configure Power Step Start Stop

?

Confiugure Power Step Dwell

?

Reset Power Step

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

170

IVI Foundation

19.3.1 Configure Power Step Start Stop Description Configures the attributes that control the power steps of the generator's RF output signal. These attributes are start and stop power and step size. If the stop power is less than the start power, the power decreases in value during the sweep. COM Method Prototype HRESULT Sweep.PowerStep.ConfigureStartStop ([in] DOUBLE Start, [in] DOUBLE Stop, [in] DOUBLE StepSize);

C Prototype ViStatus IviRFSigGen_ConfigurePowerStepStartStop ViReal64 ViReal64 ViReal64

(ViSession Vi, Start, Stop, StepSize);

Parameters Inputs

Description

Vi

Instrument handle

Start

Specifies the start power of the stepping. The driver uses this value to set the PowerStep Start attribute. See the attribute description for more details.

Stop

Specifies the stop power of the stepping. The driver uses this value to set the Power Step Stop attribute. See the attribute description for more details.

StepSize

Specifies the size of one step. The driver uses this value to set the Power Step Size attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

171

IVI-4.10 IviRFSigGen Class Specification

19.3.2 Configure Power Step Dwell Description Configures the attributes that control power stepping. COM Method Prototype HRESULT Sweep.PowerStep.ConfigureDwell ([in] VARIANT_BOOL SingleStepEnabled, [in] DOUBLE Dwell);

C Prototype ViStatus IviRFSigGen_ConfigurePowerStepDwell (ViSession Vi, ViBoolean SingleStepEnabled, ViReal64 Dwell);

Parameters Inputs

Description

Vi

Instrument handle

SingleStepEnabled

Specifies whether the trigger initiates the next step. The driver uses this value to set the Power Step Single Step Enabled attribute. See the attribute description for more details.

Dwell

Specifies the duration of one power step. The driver uses this value to set the Power Step Dwell attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

172

IVI Foundation

19.3.3 Reset Power Step Description Resets the current power step to the power step start value. COM Method Prototype HRESULT Sweep.PowerStep.Reset ();

C Prototype ViStatus IviRFSigGen_ResetPowerStep (ViSession Vi);

Parameters Inputs Vi

Description Instrument handle

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

173

IVI-4.10 IviRFSigGen Class Specification

19.4

IviRFSigGenPowerStep Behavior Model The IviRFSigGenPowerStep Extension Group follows the behavior model of the IviRFSigGenSweep capability group.

19.5

IviRFSigGenPowerStep Compliance Notes 1.

If a specific driver implements the IviRFSigGenPowerStep Extension Group, it shall also implement the IviRFSigGenSweep Extension Group and support the defined value Power Step for the Sweep Mode attribute.

IVI-4.10 IviRFSigGen Class Specification

174

IVI Foundation

20.

IviRFSigGenList Extension Group

20.1

IviRFSigGenList Extension Group Overview The IviRFSigGenList Extension Group supports signal generators that can set the frequency and power of the RF output signal to values given as a list of values. The user can enable or disable stepping the frequency and power list, specify the name of the list and set its values. The active list can be selected using the list name. Setting single step and dwell time are also included. This extension group requires the Sweep Extension Group. List stepping is enabled by setting the Sweep Mode to List in the IviRFSigGenSweep Extension Group.

20.2

IviRFSigGenList Attributes The IviRFSigGenList extension group defines the following attributes: ?

List Selected Name

?

List Single Step Enabled

?

List Dwell

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

175

IVI-4.10 IviRFSigGen Class Specification

20.2.1 List Selected Name Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Select List

COM Property Name Sweep.List.SelectedName

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_LIST_SELECTED_NAME

Description Specifies the name of the selected list to become active. The name shall be one of the lists created .

IVI-4.10 IviRFSigGen Class Specification

176

IVI Foundation

20.2.2 List Single Step Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure List Dwell

COM Property Name Sweep.List.SingleStepEnabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_LIST_SINGLE_STEP_ENABLED

Description Enables or disables single step mode. Defined Values Name True

False

IVI Foundation

Description List Single Step is enabled. The list will advance when the next trigger event occurs. C

VI_TRUE

COM

VARIANT_TRUE

List Single Step is disabled. The list will advance immediatly after the dwell time ends. C

VI_FALSE

COM

VARIANT_FALSE

177

IVI-4.10 IviRFSigGen Class Specification

20.2.3 List Dwell Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure List Dwell

COM Property Name Sweep.List.Dwell

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_LIST_DWELL

Description Specifies the duration of one step. The units are seconds. This attribute is ignored if the List Single Step Enabled attribute is set to True.

IVI-4.10 IviRFSigGen Class Specification

178

IVI Foundation

20.3

IviRFSigGenList Functions The IviRFSigGenList extension group defines the following functions: ?

Create Frequency List

?

Create Power List

?

Create Frequency Power List

?

Select List (IVI-C only)

?

Clear All Lists

?

Configure List Dwell

?

Reset List

This section describes the behavior and requirements of each function.

IVI Foundation

179

IVI-4.10 IviRFSigGen Class Specification

20.3.1 Create Frequency List Description Creates a named list of frequency values. COM Method Prototype HRESULT Sweep.List.CreateFrequency ([in] BSTR Name, [in] SAFEARRAY(DOUBLE) *Frequency);

C Prototype ViStatus IviRFSigGen_CreateFrequencyList (ViSession Vi, ViConstString Name, ViInt32 Length, ViReal64 Frequency[]);

Parameters Inputs

Description

Vi

Instrument handle

Name

Specifies the name of the list to be created.

Length

Specifies the number of values in the list array

Frequency[]

Specifies the array of frequency values to become elements of the list. The array must have at least as many elements as the value in the Length parameter. The units are Hertz.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

180

IVI Foundation

20.3.2 Create Power List Description Creates a named list of power values. COM Method Prototype HRESULT Sweep.List.CreatePower ([in] BSTR Name, [in] SAFEARRAY(DOUBLE) *Power);

C Prototype ViStatus IviRFSigGen_CreatePowerList (ViSession Vi, ViConstString Name, ViInt32 Length, ViReal64 Power[]);

Parameters Inputs

Description

Vi

Instrument handle

Name

Specifies the name of the list to be created.

Length

Specifies the number of values in the list array.

Power[]

Specifies the array of power values to become elements of the list. The array must have at least as many elements as the value in the Length parameter. The units are dBm.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

181

IVI-4.10 IviRFSigGen Class Specification

20.3.3 Create Frequency Power List Description Creates a named list of both frequency and power values. COM Method Prototype HRESULT Sweep.List.CreateFrequencyPower ([in] BSTR Name, [in] SAFEARRAY(DOUBLE) *Frequency, [in] SAFEARRAY(DOUBLE) *Power);

C Prototype ViStatus IviRFSigGen_CreateFrequencyPowerList (ViSession Vi, ViConstString Name, ViInt32 Length, ViReal64 Frequency[], ViReal64 Power[]);

Parameters Inputs

Description

Vi

Instrument handle

Name

Specifies the name of the list to be created.

Length

Specifies the number of values in the list array

Frequency[]

Specifies the array of frequency values to become elements of the list. The array must have at least as many elements as the value in the Length parameter. The units are Hertz.

Power[]

Specifies the array of power values to become elements of the list. The array must have at least as many elements as the value in the Length parameter. The units are dBm.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

182

IVI Foundation

20.3.4 Select List (IVI-C only) Description Selects one list by name to become active (out of the pool of list). COM Method Prototype N/A

(use the Sweep.List.Select property) C Prototype ViStatus IviRFSigGen_SelectList (ViSession Vi, ViConstString Name);

Parameters Inputs

Description

Vi

Instrument handle

Name

Specifies the name of the list to make this list active. The driver uses this value to set the List Selected Name attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

Completion Codes IVIRFSIGGEN_ERROR_LIST_UNKNOWN

IVI Foundation

Description The operation cannot be completed because the list is not defined.

183

IVI-4.10 IviRFSigGen Class Specification

20.3.5 Clear All Lists Description Deletes all lists from the pool of defined lists. COM Method Prototype HRESULT Sweep.List.ClearAll ();

C Prototype ViStatus IviRFSigGen_ClearAllLists (ViSession Vi);

Parameters Inputs Vi

Description Instrument handle

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

184

IVI Foundation

20.3.6 Configure List Dwell Description Configures the attributes that control list stepping. COM Method Prototype HRESULT Sweep.List.ConfigureDwell ([in] VARIANT_BOOL SingleStepEnabled, [in] DOUBLE Dwell);

C Prototype ViStatus IviRFSigGen_ConfigureListDwell (ViSession Vi, ViBoolean SingleStepEnabled, ViReal64 Dwell);

Parameters Inputs

Description

Vi

Instrument handle

SingleStepEnabled

Specifies whether the trigger initiates transitions to the next list step. The driver uses this value to set the List Single Step Enabled attribute. See the attribute description for more details.

Dwell

Specifies the duration of one list step. The driver uses this value to set the List Dwell attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

185

IVI-4.10 IviRFSigGen Class Specification

20.3.7 Reset List Description Resets the current list to the first entry value. COM Method Prototype HRESULT Sweep.List.Reset ();

C Prototype ViStatus IviRFSigGen_ResetList (ViSession Vi);

Parameters Inputs Vi

Description Instrument handle

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

186

IVI Foundation

20.4

IviRFSigGenList Behavior Model The IviRFSigGenList Extension Group follows the behavior model of the IviRFSigGenSweep capability group.

20.5

IviRFSigGenList Compliance Notes 1.

If a specific driver implements the IviRFSigGenList Extension Group, it shall also implement the IviRFSigGenSweep Extension Group and support the defined value List for the Sweep Mode attribute.

IVI Foundation

187

IVI-4.10 IviRFSigGen Class Specification

21.

IviRFSigGenALC Extension Group

21.1

IviRFSigGenALC Overview For generators with configurable Automatic Level Control.

21.2

IviRFSigGenALC Attributes The IviRFSigGenALC extension group defines the following attributes: ?

ALC Source

?

ALC Bandwidth

The ALC Enabled attribute is defined in the IviRFSigGen Base Capabilities Group. This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI-4.10 IviRFSigGen Class Specification

188

IVI Foundation

21.2.1 ALC Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure ALC

COM Property Name ALC.Source

COM Enumeration Name IviRFSigGenALCSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_ALC_SOURCE

Description Specifies the source of the controlling voltage for the Automatic Level Control. The RF level at the sensor point is held constant. Defined Values Name

Description Language

Internal

External

Identifier

The ALC is controlled by an internal measurement source. C

IVIRFSIGGEN_VAL_ALC_SOURCE_INTERNAL

COM

IviRFSigGenALCSourceInternal

The ALC is controlled by an external voltage. C

IVIRFSIGGEN_VAL_ALC_SOURCE_EXTERNAL

COM

IviRFSigGenALCSourceExternal

Compliance Notes 1.

An instrument driver shall support the defined value Internal.

2. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_ALC_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_ALC_SOURCE_SPECIFIC_EXT_BASE.

3.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_ALC_SOURCE_SPECIFIC_EXT_BASE.

4.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to ALC Source Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of ALC Source Specific Ext Base, IVIRFSIGGEN_VAL_ALC_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_ALC_SOURCE_CLASS_EXT_BASE.

IVI Foundation

189

IVI-4.10 IviRFSigGen Class Specification

21.2.2 ALC Bandwidth Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

Up

High Level Functions Configure ALC

COM Property Name ALC.Bandwidth

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_ALC_BANDWIDTH

Description Specifies the bandwidth of the level control. Narrow bandwidth impoves noise and allows AM with modulation frequencies beyond bandwidth frequency. The value is coerced to reflect the ability of the current RF signal generator. The units are Hertz.

IVI-4.10 IviRFSigGen Class Specification

190

IVI Foundation

21.3

IviRFSigGenALC Functions The IviRFSigGenALC extension group defines the following functions: ?

Configure ALC

This section describes the behavior and requirements of this function.

IVI Foundation

191

IVI-4.10 IviRFSigGen Class Specification

21.3.1 Configure ALC Description Configures the ALC (Automatic Level Control) of the signal generator’s RF output. COM Method Prototype HRESULT ALC.Configure ([in] IviRFSigGenALCSourceEnum Source, [in] DOUBLE Bandwidth);

C Prototype ViStatus IviRFSigGen_ConfigureALC (ViSession Vi, ViInt32 Source, ViReal64 Bandwidth);

Parameters Inputs

Description

Vi

Instrument handle.

Source

The driver uses this value to set the ALC Source attribute. See the attribute description for more details.

Bandwidth

The driver uses this value to set the ALC Bandwidth attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

192

IVI Foundation

21.4

IviRFSigGenALC Behavior Model The IviRFSigGenALC Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenALC settings.

IVI Foundation

193

IVI-4.10 IviRFSigGen Class Specification

22.

IviRFSigGen ReferenceOscillator Extension Group

22.1

IviRFSigGenReferenceOscillator Overview The IviRFSigGenReferenceOscillator extension group supports signal generators with a configurable frequency reference.

22.2

IviRFSigGenReferenceOscillator Attributes The IviRFSigGenReferenceOscillator extension group defines the following attributes: ?

Reference Oscillator Source

?

Reference Oscillator External Frequency

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI-4.10 IviRFSigGen Class Specification

194

IVI Foundation

22.2.1 Reference Oscillator Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure Reference Oscillator

COM Property Name ReferenceOscillator.Source

COM Enumeration Name IviRFSigGenReferenceOscillatorSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_REFERENCE_OSCILLATOR_SOURCE

Description Specifies the reference frequency source used to generate the exact RF output frequency. Defined Values Name

Description Language

Internal

External

Identifier

The internal reference oscillator is used. C

IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_INTER NAL

COM

IviRFSigGenReferenceOScillatorSourceInternal

An external reference oscillator is used. C

IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_EXTER NAL

COM

IviRFSigGenReferenceOscillatorSourceExternal

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Reference Oscillator Source Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of Reference Oscillator Source Specific Ext Base, IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_CLASS_EXT_BASE.

IVI Foundation

195

IVI-4.10 IviRFSigGen Class Specification

22.2.2 Reference Oscillator External Frequency Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Reference Oscillator

COM Property Name ReferenceOscillator.ExternalFrequency

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_REFERENCE_OSCILLATOR_EXTERNAL_FREQUENCY

Description Specifies the frequency of the external signal, which is used as reference for internal RF frequency generation. This value is used only if Reference Oscillator Source is set to External. The units are Hertz.

IVI-4.10 IviRFSigGen Class Specification

196

IVI Foundation

22.3

IviRFSigGenReferenceOscillator Functions The IviRFSigGenReferenceOscillator extension group defines the following functions: ?

Configure Reference Oscillator

This section describes the behavior and requirements of this function.

IVI Foundation

197

IVI-4.10 IviRFSigGen Class Specification

22.3.1 Configure Reference Oscillator Description Configures the signal generator’s reference oscillator. COM Method Prototype HRESULT ReferenceOscillator.Configure ([in] IviRFSigGenReferenceOscillatorSourceEnum Source, [in] DOUBLE Frequency);

C Prototype ViStatus IviRFSigGen_ConfigureReferenceOscillator (ViSession Vi, ViInt32 Source, ViReal64 Frequency);

Parameters Inputs

Description

Vi

Instrument handle.

Source

Specifies source of reference frequency signal. The driver uses this value to set the Reference Oscillator Source attribute. See the attribute description for more details.

Frequency

Specifies the frequency of the external reference oscillator. This parameter is only used if the Source is set to External. The driver uses this value to set the Reference Oscillator Frequency attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

198

IVI Foundation

22.4

IviRFSigGenReferenceOscillator Behavior Model The IviRFSigGenReferenceOscillator Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenReferenceOscillator settings.

IVI Foundation

199

IVI-4.10 IviRFSigGen Class Specification

23.

IviRFSigGenSoftwareTrigger Extension Group

23.1

IviRFSigGenSoftwareTrigger Overview The IviRFSigGenSoftwareTrigger Extension Group supports RF signal generators that can generate output based on a software trigger signal. The user can send a software trigger to cause signal output to occur, to start a sweep (frequency or power), or to initiate the next step (frequency and/or power). This extension affects instrument behavior when the Trigger Source attribute is set to Software Trigger.

23.2

IviRFSigGenSoftwareTrigger Functions The IviRFSigGenSoftwareTrigger extension defines the following functions: ?

Send Software Trigger

This section describes the behavior and requirements of this function.

23.2.1 Send Software Trigger Refer to IVI-3.3: Standard Cross Class Capabilities, Section 2 Software Triggering Capability for the prototype and complete description of this function.

23.3

IviRFSigGenSoftwareTrigger Behavior Model The IviRFSigGenSoftwareTrigger Extension Group follows the behavior model of the IviRFSigGenSweep capability group. The only modification to the behavior model from the IviRFSigGenSweep capability group is the ability to send software triggers.

23.4

IviRFSigGenSoftwareTrigger Compliance Notes 1.

If a specific driver implements the IviRFSigGenSoftwareTrigger Extension Group, it shall implement at least one of the following extension groups: ? IviRFSigGenSweep Extension Group ? IviRFSigGenArbGenerator Extension Group ? IviRFSigGenCDMABase Extension Group ? IviRFSigGenTDMABase Extension Group

2.

If a specific driver implements the IviRFSigGenSoftwareTrigger Extension Group together with the IviRFSigGenSweep Extension Group, it shall implement the value Software Trigger for the Sweep Trigger Source attribute.

3.

If a specific driver implements the IviRFSigGenSoftwareTrigger Extension Group together with the IviRFSigGenArbGenerator Extension Group, it shall implement the value Software Trigger for the Arb Trigger Source attribute.

4.

If a specific driver implements the IviRFSigGenSoftwareTrigger Extension Group together with the IviRFSigGenCDMABase Extension Group, it shall implement the value Software Trigger for the CDMA Trigger Source attribute.

IVI-4.10 IviRFSigGen Class Specification

200

IVI Foundation

5.

If a specific driver implements the IviRFSigGenSoftwareTrigger Extension Group together with the IviRFSigGenTDMABase Extension Group, it shall implement the value Software Trigger for the TDMA Trigger Source attribute.

IVI Foundation

201

IVI-4.10 IviRFSigGen Class Specification

24.

IviRFSigGenModulateIQ Extension Group

24.1

IviRFSigGenModulateIQ Extension Group Overview The IviRFSigGenModulateIQ Extension Group supports signal generators that can apply IQ (vector) modulation to the RF output signal. The user can enable or disable IQ modulation and specify the source of the modulating signal. A calibration is executed with an event function.

24.2

IviRFSigGenModulateIQ Attributes The IviRFSigGenModulateIQ extension group defines the following attributes: ?

IQ Enabled

?

IQ Source

?

IQ Nominal Voltage

?

IQ Swap Enabled

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI-4.10 IviRFSigGen Class Specification

202

IVI Foundation

24.2.1 IQ Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure IQ Enabled

COM Property Name IQ.Enabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_IQ_ENABLED

Description Enables or disables IQ (vector) modulation of the output RF signal. Defined Values Name True

False

Description The RF signal generator applies IQ modulation to the output signal. C

VI_TRUE

COM

VARIANT_TRUE

The RF signal generator does not apply IQ modulation to the output signal. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes 1. Instrument drivers shall support the values True and False.

IVI Foundation

203

IVI-4.10 IviRFSigGen Class Specification

24.2.2 IQ Nominal Voltage Data Type

Access

Applies to

Coercion

ViReal64

RO

N/A

None

High Level Functions None

COM Property Name IQ.NominalVoltage

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_IQ_NOMINAL_VOLTAGE

Description Returns the voltage at which the instrument achieves full modulation. The value is calculated by SQRT(I2+Q2). The units are Volts.

IVI-4.10 IviRFSigGen Class Specification

204

IVI Foundation

24.2.3 IQ Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure IQ

COM Property Name IQ.Source

COM Enumeration Name IviRFSigGenIQSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_IQ_SOURCE

Description Specifies the source of the signal that the signal generator uses for IQ modulation. Defined Values Name

Description Language

DigitalModulatio nBase

CDMABase

TDMABase

ArbGenerator

External

IVI Foundation

Identifier

The signal generator uses the internally generated digital modulation signal to apply IQ modulation to the output RF signal. – See chapter IviRFSigGenDigitalModulationBase Extension Group for configuration. C

IVIRFSIGGEN_VAL_IQ_SOURCE_DIGITAL_MODULATION_BASE

COM

IviRFSigGenIQSourceDigitalModulationBase

The signal generator uses the internally generated CDMA signal to apply IQ modulation to the output RF signal. – See chapter IviRFSigGenCDMABase Extension Group for configuration. C

IVIRFSIGGEN_VAL_IQ_SOURCE_CDMA_BASE

COM

IviRFSigGenIQSourceCDMABase

The signal generator uses the internally generated TDMA signal to apply IQ modulation to the output RF signal. – See chapter IviRFSigGenTDMABase Extension Group for configuration. C

IVIRFSIGGEN_VAL_IQ_SOURCE_TDMA_BASE

COM

IviRFSigGenIQSourceTDMABase

The signal generator uses the internally generated Arb signal to apply IQ modulation to the output RF signal. – See chapter IviRFSigGenArbGenerator Extension Group for configuration. C

IVIRFSIGGEN_VAL_IQ_SOURCE_ARB_GENERATOR

COM

IviRFSigGenIQSourceArbGenerator

The signal generator uses data from an external source for IQ modulation. C

IVIRFSIGGEN_VAL_IQ_SOURCE_EXTERNAL

COM

IviRFSigGenIQSourceExternal

205

IVI-4.10 IviRFSigGen Class Specification

Compliance Notes 1.

If a specific driver implements the defined value DigitalModulationBase it shall implement the IviRFSigGenDigitalModulationBase Extension group.

2.

If a specific driver implements the defined value CDMABase it shall implement the IviRFSigGenCDMABase Extension group.

3.

If a specific driver implements the defined value TDMABase it shall implement the IviRFSigGenTDMABase Extension group.

4.

If a specific driver implements the defined value ArbGenerator it shall implement the IviRFSigGenArbGenerator extension group.

5. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_IQ_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_IQ_SOURCE_SPECIFIC_EXT_BASE.

6.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_IQ_SOURCE_SPECIFIC_EXT_BASE.

7.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to IQ Source Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of IQ Source Specific Ext Base, IVIRFSIGGEN_VAL_IQ_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_IQ_SOURCE_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

206

IVI Foundation

24.2.4 IQ Swap Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure IQ

COM Property Name IQ.SwapEnabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_IQ_SWAP_ENABLED

Description Enables or disables the inverse phase rotation of the IQ signal by swapping the I and Q inputs. Defined Values Name True

False

Description The RF signal generator applies non-inverse phase rotation of the IQ signal. C

VI_TRUE

COM

VARIANT_TRUE

The RF signal generator applies inverse phase rotation of the IQ signal. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes 1. Instrument drivers shall support the value False.

IVI Foundation

207

IVI-4.10 IviRFSigGen Class Specification

24.3

IviRFSigGenModulateIQ Functions The IviRFSigGenModulateIQ extension group defines the following functions: ?

Configure IQ Enabled (IVI-C only)

?

Configure IQ

?

Calibrate IQ

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

208

IVI Foundation

24.3.1 Configure IQ Enabled (IVI-C only) Description Configures the signal generator to apply IQ (vector) modulation to the RF output signal. COM Method Prototype N/A

(use the IQ.Enabled property) C Prototype ViStatus IviRFSigGen_ConfigureIQEnabled (ViSession Vi, ViBoolean Enabled);

Parameters Inputs

Description

Vi

Instrument handle

Enabled

True enables IQ (vector) modulation. The driver uses this value to set the Modulate IQ Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

209

IVI-4.10 IviRFSigGen Class Specification

24.3.2 Configure IQ Description Configures the attributes that control the signal generator's IQ modulation. These attributes are the modulation source, impairement state and swap state. COM Method Prototype HRESULT IQ.Configure ([in] IviRFSigGenIQSourceEnum Source, [in] VARIANT_BOOL SwapEnabled);

C Prototype ViStatus IviRFSigGen_ConfigureIQ (ViSession Vi, ViInt32 Source, ViBoolean SwapEnabled);

Parameters Inputs

Description

Vi

Instrument handle

Source

Specifies the modulation source. The driver uses this value to set the Modulate IQ Source attribute. See the attribute description for more details.

SwapEnabled

Specifies the swap state. True swaps I and Q inputs, the result is an invers phase rotation. The driver uses this value to set the Modulate IQ Swap Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

210

IVI Foundation

24.3.3 Calibrate IQ Description This function calibrates the IQ modulator COM Method Prototype HRESULT IQ.Calibrate();

C Prototype ViStatus IviRFSigGen_CalibrateIQ (ViSession Vi) ;

Parameters Inputs Vi

Description Instrument handle.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

211

IVI-4.10 IviRFSigGen Class Specification

24.4

IviRFSigGenModulateIQ Behavior Model The IviRFSigGenModulateIQ Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenModulateIQ settings.

IVI-4.10 IviRFSigGen Class Specification

212

IVI Foundation

25.

IviRFSigGenIQImpairment Extension Group

25.1

IviRFSigGenIQImpairment Extension Group Overview With IviRFSigGenIQImpairment Extension Group the user can simulate or correct impairment on IQ (vector) modulation. This group is an extension of the IviRFSigGenModulateIQ Extension Group.

25.2

IviRFSigGenIQImpairment Attributes The IviRFSigGenIQImpairment extension group defines the following attributes: ?

IQ Impairment Enabled

?

IQ I-Offset

?

IQ Q-Offset

?

IQ Ratio

?

IQ Skew

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

213

IVI-4.10 IviRFSigGen Class Specification

25.2.1 IQ Impairment Enabled Data Type

Access

Applies to

Coercion

ViBoolean

R/W

N/A

None

High Level Functions Configure IQ Impairment Enabled

COM Property Name IQ.Impairment.Enabled

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_IQ_IMPAIRMENT_ENABLED

Description Enables or disables IQ impairment. Defined Values Name True

False

Description The RF signal generator applies all IQ impairment attributes to the IQ modulation. C

VI_TRUE

COM

VARIANT_TRUE

The RF signal generator does not apply any IQ impairment attributes to the IQ modulation. C

VI_FALSE

COM

VARIANT_FALSE

Compliance Notes 1. Instrument drivers shall support the values True and False.

IVI-4.10 IviRFSigGen Class Specification

214

IVI Foundation

25.2.2 IQ I-Offset Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure IQ Impairment

COM Property Name IQ.Impairment.IOffset

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_IQ_I_OFFSET

Description Specifies an origin offset voltage to the I signal. The range of values allowed is –100% to +100%. The value is expressed as percentage (%). Q

I

I Offset

IVI Foundation

215

IVI-4.10 IviRFSigGen Class Specification

25.2.3 IQ Q-Offset Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure IQ Impairment

COM Property Name IQ.Impairment.QOffset

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_IQ_Q_OFFSET

Description Specifies an origin offset voltage to the Q signal. The range of values allowed is –100% to +100%. The value is expressed as percentage (%). Q

I

Q Offset

IVI-4.10 IviRFSigGen Class Specification

216

IVI Foundation

25.2.4 IQ Ratio Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure IQ Impairment

COM Property Name IQ.Impairment.Ratio

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_IQ_RATIO

Description Specifies the gain imbalance between the I and Q channels. For no imbalance this value is set to 0 %. The value is expressed as percentage (%). Imbalance

Q + - + I

IVI Foundation

217

IVI-4.10 IviRFSigGen Class Specification

25.2.5 IQ Skew Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure IQ Impairment

COM Property Name IQ.Impairment.Skew

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_IQ_SKEW

Description Specifies the adjustment of the phase angle between the I and Q vectors. If this skew is zero, the phase angle is 90 degrees. The units are degrees. Skew

Q

I

IVI-4.10 IviRFSigGen Class Specification

218

IVI Foundation

25.3

IviRFSigGenIQImpairment Functions The IviRFSigGenIQImpairment extension group defines the following functions: ?

Configure IQ Impairment Enabled (IVI-C only)

?

Configure IQ Impairment

This section describes the behavior and requirements of each function.

IVI Foundation

219

IVI-4.10 IviRFSigGen Class Specification

25.3.1 Configure IQ Impairment Enabled (IVI-C only) Description Configures the IQ modulation to allow controlled impairment for test or external corrections. COM Method Prototype N/A

(use the IQ.Impairment.Enabled property) C Prototype ViStatus IviRFSigGen_ConfigureIQImpairmentEnabled (ViSession Vi, ViBoolean Enabled);

Parameters Inputs

Description

Vi

Instrument handle

Enabled

True enables IQ (vector) modulation impairment. The driver uses this value to set the IQ Impairment Enabled attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

220

IVI Foundation

25.3.2 Configure IQ Impairment Description Configures the attributes that simulate or correct impairment for the signal generator's IQ modulation. These attributes are only used, if IQ Impairment Enabled attribute is set to True (see Configure IQ Impairment Enabled function). COM Method Prototype HRESULT IQ.Impairment.Configure ([in] [in] [in] [in]

DOUBLE DOUBLE DOUBLE DOUBLE

IOffset, QOffset, Ratio, Skew);

C Prototype ViStatus IviRFSigGen_ConfigureIQImpairment (ViSession Vi, ViReal64 IOffset, ViReal64 QOffset, ViReal64 Ratio, ViReal64 Skew);

Parameters Inputs

Description

Vi

Instrument handle

IOffset

Specifies an offset to the I-path of IQ signals. The driver uses this value to set the IQ I Offset attribute. See the attribute description for more details.

QOffset

Specifies an offset to the Q-path of IQ signals. The driver uses this value to set the IQ Q Offset attribute. See the attribute description for more details.

Ratio

Specifies a gain imbalance to the IQ signals. The driver uses this value to set the IQ Ratio attribute. See the attribute description for more details.

Skew

Specifies an angle offset to the IQ signals. The driver uses this value to set the IQ Skew attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

221

IVI-4.10 IviRFSigGen Class Specification

25.4

IviRFSigGenIQImpairment Behavior Model The IviRFSigGenIQImpairment Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenIQImpairment settings.

25.5

IviRFSigGenIQImpairment Compliance Notes 1.

If a specific driver implements the IviRFSigGenIQImpairment Extension Group, it shall also implement the IviRFSigGenModulateIQ Extension Group.

IVI-4.10 IviRFSigGen Class Specification

222

IVI Foundation

26.

IviRFSigGenArbGenerator Extension Group

26.1

IviRFSigGenArbGenerator Extension Group Overview The IviRFSigGenArbGenerator Extension Group controls the internal arbitrary waveform generator. The two outputs of the Arb generator are used with the IQ (vector) modulation to simulate digital modulation. So this group is an extension of the IviRFSigGenModulateIQ Extension Group.

26.2

IviRFSigGenArbGenerator Attributes The IviRFSigGenArbGenerator extension group defines the following attributes: ?

Arb Selected Waveform

?

Arb Clock Frequency

?

Arb Filter Frequency

?

Arb Max Number Waveforms

?

Arb Waveform Quantum

?

Arb Waveform Size Min

?

Arb Waveform Size Max

?

Arb Trigger Source

?

Arb External Trigger Slope

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

223

IVI-4.10 IviRFSigGen Class Specification

26.2.1 Arb Selected Waveform Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Select Arb Waveform

COM Property Name DigitalModulation.Arb.SelectedWaveform

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_ARB_SELECTED_WAVEFORM

Description Specifies the selected waveform from the pool of available waveforms.

IVI-4.10 IviRFSigGen Class Specification

224

IVI Foundation

26.2.2 Arb Clock Frequency Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

None

High Level Functions Configure Arb

COM Property Name DigitalModulation.Arb.ClockFrequency

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_ARB_CLOCK_FREQUENCY

Description Specifies the sample frequency. The waveform is generated with this clock frequency. The units are Hertz.

IVI Foundation

225

IVI-4.10 IviRFSigGen Class Specification

26.2.3 Arb Filter Frequency Data Type

Access

Applies to

Coercion

ViReal64

R/W

N/A

UP

High Level Functions Configure Arb

COM Property Name DigitalModulation.Arb.FilterFrequency

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_ARB_FILTER_FREQUENCY

Description Specifies the cut-off frequency of the low pass filter. The waveform is filtered before output with this filter for antialiasing. The filter frequency normally is lower than the clock frequency. The units are Hertz.

IVI-4.10 IviRFSigGen Class Specification

226

IVI Foundation

26.2.4 Arb Max Number Waveforms Data Type

Access

Applies to

Coercion

ViInt32

RO

N/A

None

High Level Functions Query Arb Waveform Capabilities

COM Property Name DigitalModulation.Arb.MaxNumberWaveforms

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_ARB_MAX_NUMBER_WAVEFORMS

Description Specifies the max number of waveforms the instrument can hold in the memory. The number may depend on the length of the waveform already in the pool of waveforms stored in the instrument.

IVI Foundation

227

IVI-4.10 IviRFSigGen Class Specification

26.2.5 Arb Waveform Quantum Data Type

Access

Applies to

Coercion

ViInt32

RO

N/A

None

High Level Functions Query Arb Waveform Capabilities

COM Property Name DigitalModulation.Arb.WaveformQuantum

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_ARB_WAVEFORM_QUANTUM

Description The waveform length (the number of samples) shall be a multiple of this quantum. If it is 1, there is no restriction on the length - other than min and max size - for the waveform.

IVI-4.10 IviRFSigGen Class Specification

228

IVI Foundation

26.2.6 Arb Waveform Size Min Data Type

Access

Applies to

Coercion

ViInt32

RO

N/A

None

High Level Functions Query Arb Waveform Capabilities

COM Property Name DigitalModulation.Arb.WaveformSizeMin

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_ARB_WAVEFORM_SIZE_MIN

Description The waveform length (the number of samples) shall be equal or greater than min size. If it is 1, there is no restriction on the length - other than max size and quantum - for the waveform.

IVI Foundation

229

IVI-4.10 IviRFSigGen Class Specification

26.2.7 Arb Waveform Size Max Data Type

Access

Applies to

Coercion

ViInt32

RO

N/A

None

High Level Functions Query Arb Waveform Capabilities

COM Property Name DigitalModulation.Arb.WaveformSizeMax

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_ARB_WAVEFORM_SIZE_MAX

Description The waveform length (the number of samples) shall be equal or less than max size.

IVI-4.10 IviRFSigGen Class Specification

230

IVI Foundation

26.2.8 Arb Trigger Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure Arb Trigger Source

COM Property Name DigitalModulation.Arb.TriggerSource

COM Enumeration Name IviRFSigGenArbTriggerSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_ARB_TRIGGER_SOURCE

Description Specifies the way to start the Arb waveform or running it continuously. Defined Values Name

Description Language

Immediate

External

Software Trigger

Identifier

The Arb generator system does not wait for a trigger of any kind, so it is running continuously. C

IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_IMMEDIATE

COM

IviRFSigGenArbTriggerSourceImmediate

The sweep is started with an external signal. C

IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_EXTERNAL

COM

IviRFSigGenArbTriggerSourceExternal

The sweep is started with a software programmable trigger. C

IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_SOFTWARE

COM

IviRFSigGenArBbtTriggerSourceSoftware

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Arb Trigger Source Specific Ext Base.

IVI Foundation

231

IVI-4.10 IviRFSigGen Class Specification

See Section Attribute Value Definitions, for the definitions of Arb Trigger Source Specific Ext Base, IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

232

IVI Foundation

26.2.9 Arb External Trigger Slope Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure Arb External Trigger Slope

COM Property Name DigitalModulation.Arb.ExternalTriggerSlope

COM Enumeration Name IviRFSigGenArbExternalTriggerSlopeEnum

C Constant Name IVIRFSIGGEN_ATTR_ARB_EXTERNAL_TRIGGER_SLOPE

Description Specifies whether the trigger event occurs on the rising or falling edge of the input signal. Defined Values Name

Description Language

Positive

Negative

Identifier

Enables rising edge triggering. C

IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE_POSITI VE

COM

IviRFSigGenArbExternalTriggerSlopePositive

Enables falling edge triggering. C

IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE_NEGATI VE

COM

IviRFSigGenArbExternalTriggerSlopeNegative

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Arb External Trigger Slope Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of Arb External Trigger Slope Specific Ext Base, IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE_CLASS_EXT_BASE.

IVI Foundation

233

IVI-4.10 IviRFSigGen Class Specification

26.3

IviRFSigGenArbGenerator Functions The IviRFSigGenArbGenerator extension group defines the following functions: ?

Configure Arb

?

Write Arb Waveform

?

Select Arb Waveform (IVI-C only)

?

Clear All Arb Waveforms

?

Query Arb Waveform Capabilities

?

Configure Arb Trigger Source (IVI-C only)

?

Configure Arb External Trigger Slope (IVI-C only)

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

234

IVI Foundation

26.3.1 Configure Arb Description Configures the Arb generator. Specified is the sample frequency the waveform is generated with together with the cut-off frequency of the low pass filter which is used for antialiasing the output waveform. The filter frequency normally is lower than the clock frequency. COM Method Prototype HRESULT DigitalModulation.Arb.Configure ([in] DOUBLE ClockFrequency, [in] DOUBLE FilterFrequency);

C Prototype ViStatus IviRFSigGen_ConfigureArb (ViSession Vi, ViReal64 ClockFrequency, ViReal64 FilterFrequency);

Parameters Inputs

Description

Vi

Instrument handle

ClockFrequency

The driver uses this value to set the Arb Clock Frequency attribute. See the attribute description for more details.

FilterFrequency

The driver uses this value to set the Arb Filter Frequency attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

235

IVI-4.10 IviRFSigGen Class Specification

26.3.2 Write Arb Waveform Description Stores the transmitted waveform in the drivers’s or instrument’s memory. COM Method Prototype HRESULT DigitalModulation.Arb.WriteWaveform ([in] [in] [in] [in]

BSTR Name, SAFEARRAY(DOUBLE) *IData, SAFEARRAY(DOUBLE) *QData, VARIANT_BOOL MoreDataPending);

C Prototype ViStatus IviRFSigGen_WriteArbWaveform (ViSession Vi, ViConstString Name, ViInt32 NumberOfSamples, ViReal64 IData[], ViReal64 QData[], ViBoolean MoreDataPending);

Parameters Inputs

Description

Vi

Instrument handle

NumberOfSamples

The number of samples in both I and Q array. Not used in COM environment.

Name

The driver uses this value to name the stored waveform.

IData

The driver uses the values of this array as I part of the waveform . The voltages are normalized to {-1, +1} to the full I range.

QData

The driver uses the values of this array as Q part of the waveform . The voltages are normalized to {-1, +1} to the full Q range.

MoreDataPending

The value is set to True if more data is coming. To complete the waveform, the next data shall have the same name. False means the waveform has no more data to come.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

236

IVI Foundation

26.3.3 Select Arb Waveform (IVI-C only) Description Selects a waveform from the pool of waveforms to become active. COM Method Prototype N/A

(use the DigitalModulation.Arb.SelectedWaveform property) C Prototype ViStatus IviRFSigGen_SelectArbWaveform (ViSession Vi, ViConstString Name);

Parameters Inputs

Description

Vi

Instrument handle

Name

The driver uses this value to set the Arb Selected Waveform attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

237

IVI-4.10 IviRFSigGen Class Specification

26.3.4 Clear All Arb Waveforms Description Deletes all waveforms from the pool of waveforms currently defined. COM Method Prototype HRESULT DigitalModulation.Arb.ClearAllWaveforms ();

C Prototype ViStatus IviRFSigGen_ClearAllArbWaveforms (ViSession Vi);

Parameters Inputs Vi

Description Instrument handle

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

238

IVI Foundation

26.3.5 Query Arb Waveform Capabilities Description Returns the capabilities of the Arb generator related to the waveform. COM Method Prototype HRESULT DigitalModulation.Arb.QueryWaveformCapabilities ( [in, out] LONG *MaxNumberWaveforms, [in, out] LONG *WaveformQuantum, [in, out] LONG *MinWaveformSize, [in, out] LONG *MaxWaveformSize);

C Prototype ViStatus IviRFSigGen_QueryArbWaveformCapabilities (ViSession Vi, ViInt32 *MaxNumberWaveforms, ViInt32 *WaveformQuantum, ViInt32 *MinWaveformSize, ViInt32 *MaxWaveformSize);

Parameters Inputs Vi

Description Instrument handle

Outputs

Description

MaxNumberWaveforms

Returns the Arb Max Number Waveforms attribute. See the attribute description for more details.

WaveformQuantum

Returns the Arb Waveform Quantum attribute. See the attribute description for more details.

MinWaveformSize

Returns the Arb Min Waveform Size attribute. See the attribute description for more details.

MaxWaveformSize

Returns the Arb Max Waveform Size attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

239

IVI-4.10 IviRFSigGen Class Specification

26.3.6 Configure Arb Trigger Source (IVI-C only) Description Configures the trigger source for waveform generation. The output waveform may be generated continuously or once based on the value of the Arb Trigger Source attribute. COM Method Prototype N/A

(use the DigitalModulation.Arb.TriggerSource property) C Prototype ViStatus IviRFSigGen_ConfigureArbTriggerSource (ViSession Vi, ViInt32 Source);

Parameters Inputs

Description

Vi

Instrument handle

Source

The driver uses this value to set the Arb Trigger Source attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

240

IVI Foundation

26.3.7 Configure Arb External Trigger Slope (IVI-C only) Description Configures the external trigger slope. COM Method Prototype N/A

(use the DigitalModulation.Arb.ExternalTriggerSlope property) C Prototype ViStatus IviRFSigGen_ConfigureArbExternalTriggerSlope (ViSession Vi, ViInt32 Slope);

Parameters Inputs

Description

Vi

Instrument handle

Slope

The driver uses this value to set the Arb External Trigger Slope attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

241

IVI-4.10 IviRFSigGen Class Specification

26.4

IviRFSigGenArbGenerator Behavior Model The IviRFSigGenArbGenerator Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenArbGenerator settings.

26.5

IviRFSigGenArbGenerator Compliance Notes If a specific driver implements the IviRFSigGenArbGenerator Extension Group, it shall also implement the IviRFSigGenModulateIQ Extension Group and support the defined value ArbGenerator for the IQ Source attribute. 1.

If a specific driver does not support the value External for the Arb Trigger Source attribute, it need not support the Arb External Trigger Slope attribute or the Configure Arb External Trigger Slope function.

IVI-4.10 IviRFSigGen Class Specification

242

IVI Foundation

27.

IviRFSigGenDigitalModulationBase Extension Group

27.1

IviRFSigGenDigitalModulationBase Extension Group Overview With IviRFSigGenDigitalModulationBase Extension Group the user can generate signals conforming to wireless communication standards (e.g. mobile cellular standards). The generated signals do not have TDMA framing nor CDMA channel coding. The functionality covers basic modulation properties such as IQ constellation, symbol mapping, etc. within a specified communication standard.

27.2

IviRFSigGenDigitalModulationBase Attributes The IviRFSigGenDigitalModulationBaseBase Extension Group defines the following attributes: ?

DigitalModulationBase Standard Name (IVI-COM only)

?

DigitalModulationBase Standard Count

?

DigitalModulationBase Selected Standard

?

DigitalModulationBase Data Source

?

DigitalModulationBase PRBS Type

?

DigitalModulationBase Selected Bit Sequence

?

DigitalModulationBase Clock Source

?

DigitalModulationBase External Clock Type

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI Foundation

243

IVI-4.10 IviRFSigGen Class Specification

27.2.1 DigitalModulationBase Standard Name (IVI-COM only) Data Type

Access

Applies to

Coercion

ViString

RO

N/A

None

High Level Functions None

COM Property Name HRESULT DigitalModulation.Base.StandardName ([in] long Index, [out, retval] BSTR* Name);

COM Enumeration Name N/A

C Constant Name N/A (Use the Get DigitalModulationBase Standard Name function)

Description This property returns the DigitalModulationBase Standard identifier that corresponds to the one-based index that the user specifies. If the value that the user pass for the Index parameter is less than one or greater than the value of the DigitalModulationBase Standard Count attribute, the property returns and empty string in the Name parameter and returns the Invalid Value error. Parameters Inputs Index

Description A one-based index that defines which name to return.

Output/Return Value Name

Description A driver-allocated buffer into which the driver stores the DigitalModulationBase standard name.

IVI-4.10 IviRFSigGen Class Specification

244

Base Type ViInt32

Base Type ViChar[]

IVI Foundation

27.2.2 DigitalModulationBase Standard Count Data Type

Access

ViInt32

RO

Applies to N/A

Coercion None

High Level Functions N/A

COM Property Name DigitalModulation.Base.StandardCount

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_STANDARD_COUNT

Description Specifies the number of DigitalModulationBase standards available for a particular instrument.

IVI Foundation

245

IVI-4.10 IviRFSigGen Class Specification

27.2.3 DigitalModulationBase Selected Standard Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Select DigitalModulationBase Standard

COM Property Name DigitalModulation.Base.SelectedStandard

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_SELECTED_STANDARD

Description Specifies the actual standard used by the instrument. The coding, mapping, symbol rate or bit clock frequency, filter together with the according filter. parameters, FSK deviation or ASK depth (in case of FSK or ASK modulation) are set as defined in the selected standard.

IVI-4.10 IviRFSigGen Class Specification

246

IVI Foundation

27.2.4 DigitalModulationBase Data Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure DigitalModulationBase Data Source

COM Property Name DigitalModulation.Base.DataSource

COM Enumeration Name IviRFSigGenDigitalModulationBaseDataSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_DATA_SOURCE

Description Specifies the source of data. The data is used to modulate the RF signal according to the standard selected with the DigitalModulationBase Selected Standard attribute. Defined Values Name

Description Language

External

PRBS

Bit Sequence

Identifier

The data from an external device connected to the instrument is used. C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOUR CE_EXTERNAL

COM

IviRFSigGenDigitalModulationBaseDataSourceExterna l

The internal PRBS (Pseudo Random Binary Sequence) generator is used as data source. C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOUR CE_PRBS

COM

IviRFSigGenDigitalModulationBaseDataSourcePRBS

A constant bit sequence is used as data source and repeated continuously. C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOUR CE_BIT_SEQUENCE

COM

IviRFSigGenDigitalModulationBaseDataSourceBitSequ ence

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOURCE_SPECIFIC_EXT_BASE.

IVI Foundation

247

IVI-4.10 IviRFSigGen Class Specification

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOURCE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Digital Modulation Base Data Source Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of Digital Modulation Base Data Source Specific Ext Base, IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOURCE_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

248

IVI Foundation

27.2.5 DigitalModulationBase PRBS Type Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure DigitalModulationBase PRBS Type

COM Property Name DigitalModulation.Base.PRBSType

COM Enumeration Name IviRFSigGenDigitalModulationBasePRBSTypeEnum

C Constant Name IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_PRBS_TYPE

Description Specifies the type of the PRBS as defined in the CCITT-V.52 standard. The PRBS (Pseudo Random Binary Sequence) is used only if DigitalModulationBase Data Source is set to PRBS. Defined Values Name

Description Language

PRBS9

PRBS11

PRBS15

PRBS16

PRBS20

PRBS21 IVI Foundation

Identifier

Length of PRBS sequence is 2 9-1. C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE _PRBS9

COM

IviRFSigGenDigitalModulationBasePRBSTypePRBS9

Length of PRBS sequence is 2 11-1. C

IVIRFSIGGEN_VAL_ DIGITAL_MODULATION_BASE PRBS_TYPE_PRBS11

COM

IviRFSigGenDigitalModulationBasePRBSTypePRBS11

Length of PRBS sequence is 2 15-1. C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE _PRBS15

COM

IviRFSigGenDigitalModulationBasePRBSTypePRBS15

Length of PRBS sequence is 2 16-1. C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE _PRBS16

COM

IviRFSigGenDigitalModulationBasePRBSTypePRBS16

Length of PRBS sequence is 2 20-1. C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE _PRBS20

COM

IviRFSigGenDigitalModulationBasePRBSTypePRBS20

Length of PRBS sequence is 2 211. 249

IVI-4.10 IviRFSigGen Class Specification

PRBS23

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE _PRBS21

COM

IviRFSigGenDigitalModulationBasePRBSTypePRBS21

Length of PRBS sequence is 2 23-1. C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE _PRBS23

COM

IviRFSigGenDigitalModulationBasePRBSTypePRBS23

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Digital Modulation Base PRBS Type Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of Digital Modulation Base PRBS Type Specific Ext Base, IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

250

IVI Foundation

27.2.6 DigitalModulationBase Selected Bit Sequence Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Select DigitalModulationBase Bit Sequence

COM Property Name DigitalModulation.Base.SelectedBitSequence

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_SELECTED_BIT_SEQUENCE

Description Specifies name of the bit sequence (stream) used as data for digital modulation. The sequence is used only if DigitalModulationBase Data Source is set to BitSequence.

IVI Foundation

251

IVI-4.10 IviRFSigGen Class Specification

27.2.7 DigitalModulationBase Clock Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure DigitalModulationBase Clock Source

COM Property Name DigitalModulation.Base.ClockSource

COM Enumeration Name IviRFSigGenDigitalModulationBaseClockSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_CLOCK_SOURCE

Description Specifies the source of the clock signal used to generate the digital modulation according to the selected standard. Defined Values Name

Description Language

Internal

External

Identifier

The internal clock generator is used. C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CLOCK_SOU RCE_INTERNAL

COM

IviRFSigGenDigitalModulationBaseClockSourceIntern al

An connected external clock generator (bit or symbol clock frequency) is used. C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CLOCK_SOU RCE_EXTERNAL

COM

IviRFSigGenDigitalModulationBaseClockSourceExtern al

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CLOCK_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CLOCK_SOURCE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CLOCK_SOURCE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Digital Modulation Base Clock Source Specific Ext Base.

IVI-4.10 IviRFSigGen Class Specification

252

IVI Foundation

See Section Attribute Value Definitions, for the definitions of Digital Modulation Base Clock Source Specific Ext Base, IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CLOCK_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CLOCK_SOURCE_CLASS_EXT_BASE.

IVI Foundation

253

IVI-4.10 IviRFSigGen Class Specification

27.2.8 DigitalModulationBase External Clock Type Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure DigitalModulationBase Clock Source

COM Property Name DigitalModulation.Base.ExternalClockType

COM Enumeration Name IviRFSigGenDigitalModulationBaseExternalClockTypeEnum

C Constant Name IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE

Description Specifies the type of the external clock signal used to generate the digital modulation. This value is used only if the DigitalModulationBase Clock Source attribute is set to External. Defined Values Name

Description Language

Bit

Identifier

The external clock frequency is equal to the bit clock frequency of the digital modulation.

Symbol

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EXTERNAL_ CLOCK_TYPE_BIT

COM

IviRFSigGenDigitalModulationBaseExternalClockType Bit

The external clock frequency is equal to the symbol clock frequency of the digital modulation. C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EXTERNAL_ CLOCK_TYPE_SYMBOL

COM

IviRFSigGenDigitalModulationBaseExternalClockType Symbol

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or

equal to IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_CLASS_EXT_BASE and

less than IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_SPECIFIC_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

254

IVI Foundation

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to Digital Modulation Base External Clock Type Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of Digital Modulation Base External Clock Type Specific Ext Base, IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_SPECIFIC_EXT_B ASE and IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_CLASS_EXT_BAS E.

IVI Foundation

255

IVI-4.10 IviRFSigGen Class Specification

27.3

IviRFSigGenDigitalModulationBase Functions The IviRFSigGenDigitalModulationBaseBase Extension Group defines the following functions: ?

Get DigitalModulationBaseStandard Name (IVI-C only)

?

Select DigitalModulationBase Standard (IVI-C only)

?

Configure DigitalModulationBase Clock Source

?

Configure DigitalModulationBase Data Source (IVI-C only)

?

Configure DigitalModulationBase PRBS Type (IVI-C only)

?

Write DigitalModulationBase Bit Sequence

?

Select DigitalModulationBase Bit Sequence (IVI-C only)

?

Clear All DigitalModulationBase Bit Sequences

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

256

IVI Foundation

27.3.1 Get DigitalModulationBase Standard Name (IVI-C only) Description This function returns the specific driver defined DigitalModulationBase standard name that corresponds to the one-based index that the user specifies. COM Method Prototype N/A (Use DigitalModulation.Base.StandardName property)

C Prototype ViStatus IviRFSigGen_GetDigitalModulationBaseStandardName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]);

Parameters Inputs

Description

Vi

Instrument handle

Index

A one-based index that defines which name to return.

NameBufferSize

The number of bytes in the ViChar array that the user specifies for the Name parameter.

Outputs Name

Description A user-allocated buffer into which the driver stores the DigitalModulationBase standard name. The caller may pass VI_NULL for this parameter if the NameBufferSize parameter is 0.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return. Compliance Notes For an instrument with only one DigitalModulationBase standard, that is the DigitalModulationBase Standard Count attribute is one, the driver may return an empty string in the Name parameter.

IVI Foundation

257

IVI-4.10 IviRFSigGen Class Specification

27.3.2 Select DigitalModulationBase Standard (IVI-C only) Description Selects the actual standard used by the instrument. The standard is selected with one of the names of the list of names queried with the Get DigitalModulationBase Standard Names function. The coding, mapping, symbol rate or bit clock frequency, filter together with the according filter. parameters, FSK deviation or ASK depth (in case of FSK or ASK modulation) are set as defined in the selected standard. COM Method Prototype N/A

(use the DigitalModulation.Base.SelectedStandard property) C Prototype ViStatus IviRFSigGen_SelectDigitalModulationBaseStandard (ViSession Vi, ViConstString Name);

Parameters Inputs

Description

Vi

Instrument handle

Name

The driver uses this value to set the DigitalModulationBase Selected Standard attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

258

IVI Foundation

27.3.3 Configure DigitalModulationBase Clock Source Description Configures the DigitalModulationBase clock source. COM Method Prototype HRESULT DigitalModulation.Base.ConfigureClockSource ([in] IviRFSigGenDigitalModulationBaseClockSourceEnum Source, [in] IviRFSigGenDigitalModulationBaseExternalClockTypeEnum Type);

C Prototype ViStatus IviRFSigGen_ConfigureDigitalModulationBaseClockSource (ViSession Vi, ViInt32 Source, ViInt32 Type);

Parameters Inputs

Description

Vi

Instrument handle

Source

The driver uses this value to set the DigitalModulationBase Clock Source attribute. See the attribute description for more details.

Type

Type is ignored if Source is set to Internal. The driver uses this value to set the DigitalModulationBase External Clock Type attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

259

IVI-4.10 IviRFSigGen Class Specification

27.3.4 Configure DigitalModulationBase Data Source (IVI-C only) Description Configures the source of the data for the digital modulation. COM Method Prototype N/A

(use the DigitalModulation.Base.DataSource property) C Prototype ViStatus IviRFSigGen_ConfigureDigitalModulationBaseDataSource (ViSession Vi, ViInt32 Source);

Parameters Inputs

Description

Vi

Instrument handle

Source

The driver uses this value to set the DigitalModulationBase Data Source attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

260

IVI Foundation

27.3.5 Configure DigitalModulationBase PRBS Type (IVI-C only) Description Configures the type of the PRBS used as data for the digital modulation. The setting is used only if DigitalModulationBase Data Source is set to PRBS. COM Method Prototype N/A

(use the DigitalModulation.Base.PRBSType property) C Prototype ViStatus IviRFSigGen_ConfigureDigitalModulationBasePRBSType (ViSession Vi, ViInt32 Type);

Parameters Inputs

Description

Vi

Instrument handle

Type

The driver uses this value to set the DigitalModulationBase PRBS Type attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

261

IVI-4.10 IviRFSigGen Class Specification

27.3.6 Write DigitalModulationBase Bit Sequence Description Writes the bit sequence used as data for the digital modulation. The sequence is repeated continuously. The string consists of binary values (8 bit in 1 char/byte). COM Method Prototype HRESULT DigitalModulation.Base.WriteBitSequence ([in] BSTR Name, [in] LONG BitCount, [in] SAFEARRAY(BYTE) *Sequence, [in] VARIANT_BOOL MoreDataPending);

C Prototype ViStatus IviRFSigGen_WriteDigitalModulationBaseBitSequence (ViSession Vi, ViConstString Name, ViInt32 BitCount, ViChar Sequence[], ViBoolean MoreDataPending);

Parameters Inputs

Description

Vi

Instrument handle

Name

The driver uses this value to name the stored bit sequence.

BitCount

The number of bits in the sequence. One char/byte has 8 bits, but the stream of bits doesn’t end necessarily on byte boundaries.

Sequence

The driver uses this array as stream of bits. The size of the array is bitCount.

MoreDataPending

The value is set to True if more data is comming. To complete the sequence, the next data shall have the same name. False means the waveform has no more data to come.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

262

IVI Foundation

27.3.7 Select DigitalModulationBase Bit Sequence (IVI-C only) Description Selects the bit sequence used as data for the digital modulation. The bit sequence is selected with one of the names in the list of names queried with the Get DigitalModulationBase Bit Sequence Names function. The setting is used only if the DigitalModulationBase Data Source attribute is set to BitSequence. COM Method Prototype N/A

(use the DigitalModulation.Base.SelectBitSequence property) C Prototype ViStatus IviRFSigGen_SelectDigitalModulationBaseBitSequence (ViSession Vi, ViConstString Name);

Parameters Inputs

Description

Vi

Instrument handle

Name

The driver uses this value to set the DigitalModulationBase Selected Bit Sequence attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

263

IVI-4.10 IviRFSigGen Class Specification

27.3.8 Clear All DigitalModulationBase Bit Sequences Description Clears (deletes) all named bit sequences. COM Method Prototype HRESULT DigitalModulation.Base.ClearAllBitSequences ();

C Prototype ViStatus IviRFSigGen_ClearAllDigitalModulationBaseBitSequences (ViSession Vi);

Parameters Inputs Vi

Description Instrument handle

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

264

IVI Foundation

27.4

IviRFSigGenDigitalModulationBase Behavior Model The IviRFSigGenDigitalModulationBase Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenDigitalModulationBase settings.

27.5

IviRFSigGenDigitalModulationBase Compliance Notes If a specific driver implements the IviRFSigGenDigitalModulationBase Extension Group, it shall also implement the IviRFSigGenModulateIQ Extension Group and support the defined value DigitalModulationBase for the IQ Source attribute. 1.

If a specific driver does not support the value External for the DigitalModulationBase Clock Source, it shall not support the External Clock Type attribute.

2.

If a specific driver does not support the value PRBS for the DigitalModulationBase Data Source attribute, it shall not implement the DigitalModulationBase PRBS Type attribute and the Configure DigitalModulationBase PRBS Type function.

3.

If a specific driver does not support the value Bit Sequence for the DigitalModulationBase attribute, it shall not implement the DigitalModulationBase Selected Bit Sequence attribute and the Write DigitalModulationBase Bit Sequence, Select DigitalModulation Bit Sequence and Clear All DigitalModulationBase Bit Sequences functions.

IVI Foundation

265

IVI-4.10 IviRFSigGen Class Specification

28.

IviRFSigGenCDMABase Extension Group

28.1

IviRFSigGenCDMABase Extension Group Overview With IviRFSigGenCDMABase Extension Group the user can simulate mobile (cell) phone modulation based on Code Division Muliple Access (CDMA) standards.

28.2

IviRFSigGenCDMABase Attributes The IviRFSigGenCDMABase extension group defines the following attributes: ?

CDMA Standard Name (IVI-COM only)

?

CDMA Standard Count

?

CDMA Selected Standard

?

CDMA Trigger Source

?

CDMA External Trigger Slope

?

CDMA Test Model Name (IVI-COM only)

?

CDMA Test Model Count

?

CDMA Selected Test Model

?

CDMA Clock Source

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI-4.10 IviRFSigGen Class Specification

266

IVI Foundation

28.2.1 CDMA Standard Name (IVI-COM only) Data Type

Access

Applies to

Coercion

ViString

RO

N/A

None

High Level Functions None

COM Property Name HRESULT DigitalModulation.CDMA.StandardName ([in] long Index, [out, retval] BSTR* Name);

COM Enumeration Name N/A C Constant Name N/A (Use the Get CDMA Standard Name function

Description This property returns the CDMA Standard identifier that corresponds to the one-based index that the user specifies. If the value that the user pass for the Index parameter is less than one or greater than the value of the CDMA Standard Count attribute, the property returns and empty string in the Name parameter and returns the Invalid Value error. Parameters Inputs Index

Output/Return Value Name

IVI Foundation

Description

Base Type

A one-based index that defines which name to return.

Description

Base Type

A driver-allocated buffer into which the driver stores the CDMA standard name.

267

ViInt32

ViChar[]

IVI-4.10 IviRFSigGen Class Specification

28.2.2 CDMA Standard Count Data Type

Access

ViInt32

RO

Applies to N/A

Coercion None

High Level Functions N/A

COM Property Name DigitalModulation.CDMA.StandardCount

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_CDMA_STANDARD_COUNT

Description Specifies the number of CDMA standards available for a particular instrument.

IVI-4.10 IviRFSigGen Class Specification

268

IVI Foundation

28.2.3 CDMA Selected Standard Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Select CDMA Standard

COM Property Name DigitalModulation.CDMA.SelectedStandard

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_CDMA_SELECTED_STANDARD

Description Specifies the actual standard used by the instrument. The modulation type, bit clock frequency and filter together with the according filter. parameters are set as defined in the selected standard.

IVI Foundation

269

IVI-4.10 IviRFSigGen Class Specification

28.2.4 CDMA Trigger Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure CDMA Trigger Source

COM Property Name DigitalModulation.CDMA.TriggerSource

COM Enumeration Name IviRFSigGenCDMATriggerSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_CDMA_TRIGGER_SOURCE

Description Specifies the source of the trigger signal that starts the channel coding generation. Defined Values Name

Description Language

Immediate

External

Software Trigger

Identifier

The CDMA generator system does not wait for a trigger of any kind, so it is running the channel codings continuously. C

IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_IMMEDIATE

COM

IviRFSigGenCDMATriggerSourceImmediate

Each channel coding is started with an external signal. C

IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_EXTERNAL

COM

IviRFSigGenCDMATriggerSourceExternal

Each channel coding is started with a software programmable trigger. C

IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_SOFTWARE

COM

IviRFSigGenCDMATriggerSourceSoftware

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to CDMA Trigger Source Specific Ext Base.

IVI-4.10 IviRFSigGen Class Specification

270

IVI Foundation

See Section Attribute Value Definitions, for the definitions of CDMA Trigger Source Specific Ext Base, IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_CLASS_EXT_BASE.

IVI Foundation

271

IVI-4.10 IviRFSigGen Class Specification

28.2.5 CDMA External Trigger Slope Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure CDMA External Trigger Slope

COM Property Name DigitalModulation.CDMA.ExternalTriggerSlope

COM Enumeration Name IviRFSigGenCDMAExternalTriggerSlopeEnum

C Constant Name IVIRFSIGGEN_ATTR_CDMA_EXTERNAL_TRIGGER_SLOPE

Description Specifies whether the trigger event occurs on the rising or falling edge of the input signal. Defined Values Name

Description Language

Positive

Negative

Identifier

Enables rising edge triggering. C

IVIRFSIGGEN_VAL_CDMA_ EXTERNAL_TRIGGER_SLOPE_POSITIVE

COM

IviRFSigGenCDMAExternalTriggerSlopePositive

Enables falling edge triggering. C

IVIRFSIGGEN_VAL_CDMA_ EXTERNAL_TRIGGER_SLOPE_NEGATIVE

COM

IviRFSigGenCDMAExternalTriggerSlopeNegative

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_CDMA_EXTERNAL_TRIGGER_SLOPE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_CDMA_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_CDMA_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE.

4.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to CDMA Trigger External Slope Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of CDMA Trigger External Slope Specific Ext Base, IVIRFSIGGEN_VAL_CDMA_TRIGGER_EXTERNAL_SLOPE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_CDMA_TRIGGER_EXTERNAL_SLOPE_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

272

IVI Foundation

28.2.6 CDMA Test Model Name (IVI-COM only) Data Type

Access

Applies to

Coercion

ViString

RO

N/A

None

High Level Functions None

COM Property Name HRESULT DigitalModulation.CDMA.TestModelName ([in] long Index, [out, retval] BSTR* Name);

COM Enumeration Name N/A

C Constant Name N/A (Use the Get CDMA Test Model Name function)

Description This property returns the CDMA Test Model identifier that corresponds to the one-based index that the user specifies. If the value that the user pass for the Index parameter is less than one or greater than the value of the CDMA Test Model Count attribute, the property returns and empty string in the Name parameter and returns the Invalid Value error. Parameters Inputs Index

Output/Return Value Name

IVI Foundation

Description

Base Type

A one-based index that defines which name to return.

Description

Base Type

A driver-allocated buffer into which the driver stores the CDMA test model name.

273

ViInt32

ViChar[]

IVI-4.10 IviRFSigGen Class Specification

28.2.7 CDMA Test Model Count Data Type

Access

ViInt32

RO

Applies to N/A

Coercion None

High Level Functions N/A

COM Property Name DigitalModulation.CDMA.TestModelCount

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_CDMA_TEST_MODEL_COUNT

Description Specifies the number of CDMA test models available for a particular instrument.

IVI-4.10 IviRFSigGen Class Specification

274

IVI Foundation

28.2.8 CDMA Selected Test Model Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Select CDMA Test Model

COM Property Name DigitalModulation.CDMA.SelectedTestModel

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_CDMA_SELECTED_TEST_MODEL

Description Specifies the actual CDMA test model used by the instrument.

IVI Foundation

275

IVI-4.10 IviRFSigGen Class Specification

28.2.9 CDMA Clock Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure CDMA Clock Source

COM Property Name DigitalModulation.CDMA.ClockSource

COM Enumeration Name IviRFSigGenCDMAClockSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_CDMA_CLOCK_SOURCE

Description Specifies the source of the clock signal used to generate the digital modulation according to the selected standard. Defined Values Name

Description Language

Internal

External

Identifier

The internal clock generator is used. C

IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_INTERNAL

COM

IviRFSigGenCDMAClockSourceInternal

A connected external clock generator (bit or symbol clock frequency) is used. C

IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_EXTERNAL

COM

IviRFSigGenCDMAClockSourceExternal

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to CDMA Clock Source Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of CDMA Clock Source Specific Ext Base, IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

276

IVI Foundation

28.3

IviRFSigGenCDMABase Functions The IviRFSigGenCDMABase extension group defines the following functions: ?

Get CDMA Standard Name (IVI-C only)

?

Select CDMA Standard (IVI-C only)

?

Configure CDMA Clock Source (IVI-C only)

?

Configure CDMA Trigger Source (IVI-C only)

?

Configure CDMA External Trigger Slope (IVI-C only)

?

Get CDMA Test Model Name (IVI-C only)

?

Select CDMA Test Model (IVI-C only)

This section describes the behavior and requirements of each function.

IVI Foundation

277

IVI-4.10 IviRFSigGen Class Specification

28.3.1 Get CDMA Standard Name (IVI-C only) Description This function returns the specific driver defined CDMA standard name that corresponds to the one-based index that the user specifies. COM Method Prototype N/A (Use DigitalModulation.CDMA.StandardName property)

C Prototype ViStatus IviRFSigGen_GetCDMAStandardName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]);

Parameters Inputs

Description

Vi

Instrument handle

Index

A one-based index that defines which name to return.

NameBufferSize

The number of bytes in the ViChar array that the user specifies for the Name parameter.

Outputs Name

Description A user-allocated buffer into which the driver stores the CDMA standard name. The caller may pass VI_NULL for this parameter if the NameBufferSize parameter is 0.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return. Compliance Notes For an instrument with only one CDMA standard, that is the CDMA Standard Count attribute is one, the driver may return an empty string in the Name parameter.

IVI-4.10 IviRFSigGen Class Specification

278

IVI Foundation

28.3.2 Select CDMA Standard (IVI-C only) Description Selects the actual standard used by the instrument. The standard is selected from the list of names queried with the Get CDMA Standard Names function. The modulation type, clock frequency and filter together with the according filter. parameters are set as defined in the selected standard. COM Method Prototype N/A

(use the DigitalModulation.CDMA.SelectedStandard property) C Prototype ViStatus IviRFSigGen_SelectCDMAStandard (ViSession Vi, ViConstString Name);

Parameters Inputs

Description

Vi

Instrument handle

Name

The driver uses this value to set the CDMA Selected Standard attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

279

IVI-4.10 IviRFSigGen Class Specification

28.3.3 Configure CDMA Clock Source (IVI-C only) Description Configures the CDMA clock source. COM Method Prototype N/A

(use the DigitalModulation.CDMA.ClockSource property) C Prototype ViStatus IviRFSigGen_ConfigureCDMAClockSource (ViSession Vi, ViInt32 Source);

Parameters Inputs

Description

Vi

Instrument handle

Source

The driver uses this value to set the CDMA Clock Source attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

280

IVI Foundation

28.3.4 Configure CDMA Trigger Source (IVI-C only) Description Configures the CDMA trigger source for starting or synchronising the generation of the channel codings. COM Method Prototype N/A

(use the DigitalModulation.CDMA.TriggerSource property) C Prototype ViStatus IviRFSigGen_ConfigureCDMATriggerSource (ViSession Vi, ViInt32 Source);

Parameters Inputs

Description

Vi

Instrument handle

Source

The driver uses this value to set the CDMA Trigger Source attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

281

IVI-4.10 IviRFSigGen Class Specification

28.3.5 Configure CDMA External Trigger Slope (IVI-C only) Description Configures whether the trigger event occurs on the rising or falling edge of the input signal. This setting is used only if CDMA Trigger Source is set to External. COM Method Prototype N/A

(use the DigitalModulation.CDMA.ExternalTriggerSlope property) C Prototype ViStatus IviRFSigGen_ConfigureCDMAExternalTriggerSlope (ViSession Vi, ViInt32 Slope);

Parameters Inputs

Description

Vi

Instrument handle

Slope

The driver uses this value to set the CDMA External Trigger Slope attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

282

IVI Foundation

28.3.6 Get CDMA Test Model Name (IVI-C only) Description This function returns the specific driver defined CDMA test model name that corresponds to the one-based index that the user specifies. COM Method Prototype N/A (Use DigitalModulation.CDMA.TestModelName property)

C Prototype ViStatus IviRFSigGen_GetCDMATestModelName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]);

Parameters Inputs

Description

Vi

Instrument handle

Index

A one-based index that defines which name to return.

BufferSize

The number of bytes in the ViChar array that the user specifies for the Name parameter.

Outputs Name

Description A user-allocated buffer into which the driver stores the CDMA test model name. The caller may pass VI_NULL for this parameter if the NameBufferSize parameter is 0.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return. Compliance Notes For an instrument with only one CDMA test model, that is the CDMA Test Model Count attribute is one, the driver may return an empty string in the Name parameter.

IVI Foundation

283

IVI-4.10 IviRFSigGen Class Specification

28.3.7 Select CDMA Test Model (IVI-C only) Description Selects the channel coding used for the digital modulation. The channel coding is selected with one of the names in the list of names queried with the Get CDMA Test Model Names function. COM Method Prototype N/A

(use the DigitalModulation.CDMA.SelectedTestModel property) C Prototype ViStatus IviRFSigGen_SelectCDMATestModel (ViSession Vi, ViConstString Name);

Parameters Inputs

Description

Vi

Instrument handle

Name

The driver uses this value to set the CDMA Selected Test Model attribute. See the attribute description for more details. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

284

IVI Foundation

28.4

IviRFSigGenCDMABase Behavior Model The IviRFSigGenCDMABase Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenCDMABase settings.

28.5

IviRFSigGenCDMABase Compliance Notes For a specific driver to comply with the IviRFSigGenCDMABase extension, it shall also implement the IviRFSigGenModulateIQ Extension Group and support the defined value CDMABase for the IQ Source attribute. 1.

If a specific driver does not support the defined value External for the CDMA Trigger Source attribute, it shall not support the CDMA External Trigger Slope attribute or the Configure CDMA External Trigger Slope function.

IVI Foundation

285

IVI-4.10 IviRFSigGen Class Specification

29.

IviRFSigGenTDMABase Extension Group

29.1

IviRFSigGenTDMABase Extension Group Overview With IviRFSigGenTDMABase Extension Group the user can simulate mobile (cell) phone modulation based on Time Division Multiple Access (TDMA) standards.

29.2

IviRFSigGenTDMABase Attributes The IviRFSigGenTDMABase extension group defines the following attributes: ?

TDMA Standard Name (IVI-COM only)

?

TDMA Selected Standard

?

TDMA Trigger Source

?

TDMA External Trigger Slope

?

TDMA Frame Name (IVI-COM only)

?

TDMA Selected Frame

?

TDMA Clock Source

?

TDMA External Clock Type

This section describes the behavior and requirements of each attribute. The actual value for each attribute ID is defined in Section 30, IviRFSigGen Attribute ID Definitions.

IVI-4.10 IviRFSigGen Class Specification

286

IVI Foundation

29.2.1 TDMA Standard Name (IVI-COM only) Data Type

Access

Applies to

Coercion

ViString

RO

N/A

None

High Level Functions None

COM Property Name HRESULT DigitalModulation.TDMA.StandardName ([in] long Index, [out, retval] BSTR* Name);

COM Enumeration Name N/A

C Constant Name N/A (Use the Get TDMA Standard Names function)

Description This property returns the TDMA Standard identifier that corresponds to the one-based index that the user specifies. If the value that the user pass for the Index parameter is less than one or greater than the value of the TDMA Standard Count attribute, the property returns and empty string in the Name parameter and returns the Invalid Value error. Parameters Inputs Index

Output/Return Value Name

IVI Foundation

Description

Base Type

A one-based index that defines which name to return.

Description

Base Type

A driver-allocated buffer into which the driver stores the TDMA standard name.

287

ViInt32

ViChar[]

IVI-4.10 IviRFSigGen Class Specification

29.2.2 TDMA Standard Count Data Type

Access

ViInt32

RO

Applies to N/A

Coercion None

High Level Functions N/A

COM Property Name DigitalModulation.TDMA.StandardCount

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_TDMA_STANDARD_COUNT

Description Specifies the number of TDMA standards available for a particular instrument.

IVI-4.10 IviRFSigGen Class Specification

288

IVI Foundation

29.2.3 TDMA Selected Standard Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Select TDMA Standard

COM Property Name DigitalModulation.TDMA.SelectedStandard

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_TDMA_SELECTED_STANDARD

Description Specifies the actual standard used by the instrumen. The coding, mapping, symbol rate or bit clock frequency, filter together with the according filter. parameters, FSK deviation or ASK depth (in case of FSK or ASK modulation) are set as defined in the selected standard.

IVI Foundation

289

IVI-4.10 IviRFSigGen Class Specification

29.2.4 TDMA Trigger Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure TDMA Trigger Source

COM Property Name DigitalModulation.TDMA. TriggerSource

COM Enumeration Name IviRFSigGenTDMATriggerSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_TDMA_TRIGGER_SOURCE

Description Specifies the source of the trigger signal that starts the frame/slot generation. Defined Values Name

Description Language

Immediate

External

Software Trigger

Identifier

The TDMA generator system does not wait for a trigger of any kind, so it is running the frames continuously. C

IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_IMMEDIATE

COM

IviRFSigGenTDMATriggerSourceImmediate

Each frame is started with an external signal. C

IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_EXTERNAL

COM

IviRFSigGenTDMATriggerSourceExternal

Each frame is started with a software programmable trigger. C

IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_SOFTWARE

COM

IviRFSigGenTDMATriggerSourceSoftware

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to TDMA Trigger Source Specific Ext Base.

IVI-4.10 IviRFSigGen Class Specification

290

IVI Foundation

See Section Attribute Value Definitions, for the definitions of TDMA Trigger Source Specific Ext Base, IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_CLASS_EXT_BASE.

IVI Foundation

291

IVI-4.10 IviRFSigGen Class Specification

29.2.5 TDMA External Trigger Slope Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure TDMA External Trigger Slope

COM Property Name DigitalModulation.TDMA.ExternalTriggerSlope

COM Enumeration Name IviRFSigGenTDMAExternalTriggerSlopeEnum

C Constant Name IVIRFSIGGEN_ATTR_TDMA_EXTERNAL_TRIGGER_SLOPE

Description Specifies whether the trigger event occurs on the rising or falling edge of the input signal. Defined Values Name

Description Language

Positive

Negative

Identifier

Enables rising edge triggering. C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOPE_POSIT IVE

COM

IviRFSigGenTDMAExternalTriggerSlopePositive

Enables falling edge triggering. C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOPE_NEGAT IVE

COM

IviRFSigGenTDMAExternalTriggerSlopeNegative

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOPE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE.

5.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to TDMA External Trigger Slope Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of TDMA External Trigger Slope Specific Ext Base, IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOPE_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

292

IVI Foundation

29.2.6 TDMA Frame Name (IVI-COM only) Data Type

Access

Applies to

Coercion

ViString

RO

N/A

None

High Level Functions None

COM Property Name HRESULT DigitalModulation.TDMA.FrameName ([in] long Index, [out, retval] BSTR* Name);

COM Enumeration Name N/A C Constant Name N/A (Use the Get TDMA Frame Name function)

Description This property returns the TDMA Frame identifier that corresponds to the one-based index that the user specifies. If the value that the user pass for the Index parameter is less than one or greater than the value of the TDMA Frame Count attribute, the property returns and empty string in the Name parameter and returns the Invalid Value error. Parameters Inputs Index

Output/Return Value Name

IVI Foundation

Description

Base Type

A one-based index that defines which name to return.

Description

Base Type

A driver-allocated buffer into which the driver stores the TDMA frame name.

293

ViInt32

ViChar[]

IVI-4.10 IviRFSigGen Class Specification

29.2.7 TDMA Frame Count Data Type

Access

ViInt32

RO

Applies to N/A

Coercion None

High Level Functions N/A

COM Property Name DigitalModulation.TDMA.FrameCount

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_TDMA_FRAME_COUNT

Description Specifies the number of TDMA frames available for a particular instrument.

IVI-4.10 IviRFSigGen Class Specification

294

IVI Foundation

29.2.8 TDMA Selected Frame Data Type

Access

Applies to

Coercion

ViString

R/W

N/A

None

High Level Functions Select TDMA Frame

COM Property Name DigitalModulation.TDMA.SelectedFrame

COM Enumeration Name N/A C Constant Name IVIRFSIGGEN_ATTR_TDMA_SELECTED_FRAME

Description Specifies the actual frame used by the instrument. It is selected from the list queried with the function Get TDMA Frame Names.

IVI Foundation

295

IVI-4.10 IviRFSigGen Class Specification

29.2.9 TDMA Clock Source Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure TDMA Clock Source

COM Property Name DigitalModulation.TDMA.ClockSource

COM Enumeration Name IviRFSigGenTDMAClockSourceEnum

C Constant Name IVIRFSIGGEN_ATTR_TDMA_CLOCK_SOURCE

Description Specifies the source of the clock signal used to generate the digital modulation according to the selected standard. Defined Values Name

Description Language

Internal

External

Identifier

The internal clock generator is used. C

IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_INTERNAL

COM

IviRFSigGenTDMAClockSourceInternal

A connected external clock generator (bit or symbol clock frequency) is used. C

IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_EXTERNAL

COM

IviRFSigGenTDMAClockSourceExternal

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to TDMA Clock Source Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of TDMA Clock Source Specific Ext Base, IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_CLASS_EXT_BASE.

IVI-4.10 IviRFSigGen Class Specification

296

IVI Foundation

29.2.10

TDMA External Clock Type

Data Type

Access

Applies to

Coercion

ViInt32

R/W

N/A

None

High Level Functions Configure TDMA Clock Source

COM Property Name DigitalModulation.TDMA.ExternalClockType

COM Enumeration Name IviRFSigGenTDMAExternalClockTypeEnum

C Constant Name IVIRFSIGGEN_ATTR_TDMA_EXTERNAL_CLOCK_TYPE

Description Specifies the type of the external clock signal used to generate the digital modulation. This value is used only if TDMA Clock Source is set to External. Defined Values Name

Description Language

Bit

Identifier

The external clock frequency is equal to the bit clock frequency of the digital modulation.

Symbol

C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_BIT

COM

IviRFSigGenTDMAExternalClockTypeBit

The external clock frequency is equal to the symbol clock frequency of the digital modulation. C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_SYMBOL

COM

IviRFSigGenTDMAExternalClockTypeSymbol

Compliance Notes 1. If an IVI-C class driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_CLASS_EXT_BASE and less than IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_SPECIFIC_EXT_BASE.

2.

If an IVI-C specific driver defines additional values for this attribute, the actual values shall be greater than or equal to IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_SPECIFIC_EXT_BASE.

3.

When an IVI-COM specific driver implements this attribute with additional elements in its instrument specific interfaces, the actual values of the additional elements shall be greater than or equal to TDMA External Clock Type Specific Ext Base.

See Section Attribute Value Definitions, for the definitions of TDMA External Clock Type Specific Ext Base, IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_SPECIFIC_EXT_BASE and IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_CLASS_EXT_BASE. IVI Foundation

297

IVI-4.10 IviRFSigGen Class Specification

29.3

IviRFSigGenTDMABase Functions The IviRFSigGenTDMABase extension group defines the following functions: ?

Get TDMA Standard Name (IVI-C only)

?

Select TDMA Standard (IVI-C only)

?

Configure TDMA Clock Source

?

Configure TDMA Trigger Source (IVI-C only)

?

Configure TDMA External Trigger Slope (IVI-C only)

?

Get TDMA Frame Name (IVI-C only)

?

Select TDMA Frame (IVI-C only)

This section describes the behavior and requirements of each function.

IVI-4.10 IviRFSigGen Class Specification

298

IVI Foundation

29.3.1 Get TDMA Standard Name (IVI-C only) Description This function returns the specific driver defined TDMA standard name that corresponds to the one-based index that the user specifies. COM Method Prototype N/A (Use DigitalModulation.TDMA.StandardName property)

C Prototype ViStatus IviRFSigGen_GetTDMAStandardName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]);

Parameters Inputs

Description

Vi

Instrument handle

Index

A one-based index that defines which name to return.

NameBufferSize

The number of bytes in the ViChar array that the user specifies for the Name parameter.

Outputs Name

Description A user-allocated buffer into which the driver stores the TDMA standard name. The caller may pass VI_NULL for this parameter if the NameBufferSize parameter is 0.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return. Compliance Notes For an instrument with only one TDMA standard, that is the TDMA Standard Count attribute is one, the driver may return an empty string in the Name parameter.

IVI Foundation

299

IVI-4.10 IviRFSigGen Class Specification

29.3.2 Select TDMA Standard (IVI-C only) Description Selects the actual standard used by the instrument. The standard is selected from the list of names queried with the Get TDMA Standard Names function. The coding, mapping, symbol rate or bit clock frequency, filter together with the according filter. parameters, FSK deviation or ASK depth (in case of FSK or ASK modulation) are set as defined in the selected standard. COM Method Prototype N/A

(use the DigitalModulation.TDMA.SelectedStandard property) C Prototype ViStatus IviRFSigGen_SelectTDMAStandard (ViSession Vi, ViConstString Name);

Parameters Inputs

Description

Vi

Instrument handle

Name

The driver uses this value to set the TDMA Selected Standard attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

300

IVI Foundation

29.3.3 Configure TDMA Clock Source Description Configures the TDMA clock source. COM Method Prototype HRESULT DigitalModulation.TDMA.ConfigureClockSource ( [in] IviRFSigGenTDMAClockSourceEnum Source, [in] IviRFSigGenTDMAExternalClockTypeEnum Type);

C Prototype ViStatus IviRFSigGen_ConfigureTDMAClockSource (ViSession Vi, ViInt32 Source, ViInt32 Type);

Parameters Inputs

Description

Vi

Instrument handle

Source

The driver uses this value to set the TDMA Clock Source attribute. See the attribute description for more details.

Type

Type is ignored if Source is set to Internal. The driver uses this value to set the TDMA External Clock Type attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

301

IVI-4.10 IviRFSigGen Class Specification

29.3.4 Configure TDMA Trigger Source (IVI-C only) Description Configures the TDMA trigger source for starting or synchronising the generation of the frames/slots. COM Method Prototype N/A

(use the DigitalModulation.TDMA.TriggerSource property) C Prototype ViStatus IviRFSigGen_ConfigureTDMATriggerSource (ViSession Vi, ViInt32 Source);

Parameters Inputs

Description

Vi

Instrument handle

Source

The driver uses this value to set the TDMA Trigger Source attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI-4.10 IviRFSigGen Class Specification

302

IVI Foundation

29.3.5 Configure TDMA External Trigger Slope (IVI-C only) Description Configures whether the trigger event occurs on the rising or falling edge of the input signal. This setting is used only if the TDMA Trigger Source attribute is set to External. COM Method Prototype N/A

(use the DigitalModulation.TDMA.ExternalTriggerSlope property) C Prototype ViStatus IviRFSigGen_ConfigureTDMAExternalTriggerSlope (ViSession Vi, ViInt32 Slope);

Parameters Inputs

Description

Vi

Instrument handle

Slope

The driver uses this value to set the TDMA ExternalTrigger Slope attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

303

IVI-4.10 IviRFSigGen Class Specification

29.3.6 Get TDMA Frame Name (IVI-C only) Description This function returns the specific driver defined TDMA frame name that corresponds to the one-based index that the user specifies. COM Method Prototype N/A (Use DigitalModulation.TDMA.FrameName property)

C Prototype ViStatus IviRFSigGen_GetTDMAFrameName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]);

Parameters Inputs

Description

Vi

Instrument handle

Index

A one-based index that defines which name to return.

NameBufferSize

The number of bytes in the ViChar array that the user specifies for the Name parameter.

Outputs Name

Description A user-allocated buffer into which the driver stores the TDMA frame name. The caller may pass VI_NULL for this parameter if the NameBufferSize parameter is 0.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return. Compliance Notes For an instrument with only one TDMA frame, that is the TDMA Frame Count attribute is one, the driver may return an empty string in the Name parameter.

IVI-4.10 IviRFSigGen Class Specification

304

IVI Foundation

29.3.7 Select TDMA Frame (IVI-C only) Description Selects the frame used for the framed digital modulation. The frame is selected from the list of names queried with the Get TDMA Framed Names function. COM Method Prototype N/A

(use the DigitalModulation.TDMA.SelectedFrame property) C Prototype ViStatus IviRFSigGen_SelectTDMAFrame (ViSession Vi, ViConstString Name);

Parameters Inputs

Description

Vi

Instrument handle

Name

The driver uses this value to set the TDMA Selected Frame attribute. See the attribute description for more details.

Return Values The IVI-3.2: Inherent Capabilities Specification defines general status codes that this function can return.

IVI Foundation

305

IVI-4.10 IviRFSigGen Class Specification

29.4

IviRFSigGenTDMABase Behavior Model The IviRFSigGenTDMABase Extension Group follows the behavior model of the IviRFSigGenBase capability group. The only modification to the behavior model from the IviRFSigGenBase capability group is the ability to configure IviRFSigGenTDMABase settings.

29.5

IviRFSigGenTDMABase Compliance Notes For a specific driver to comply with the IviRFSigGenTDMABase extension, it shall also implement the IviRFSigGenModulateIQ Extension Group and support the defined value TDMABase for the IQ Source attribute. 1.

If a specific driver does not support the defined value External for the TDMA Trigger Source attribute, it shall not support the TDMA External Trigger Slope attribute, the TDMA External Clock Type attribute or the Configure TDMA External Trigger Slope function.

IVI-4.10 IviRFSigGen Class Specification

306

IVI Foundation

30.

IviRFSigGen Attribute ID Definitions Table 30-1 defines the ID values for all IviRFSigGen class attributes. Table 30-1 IviRFSigGen Attributes ID Values (C only)

Attribute Name

ID Definition

IVIRFSIGGEN_ATTR_FREQUENCY

IVI_CLASS_ATTR_BASE + 1

IVIRFSIGGEN_ATTR_POWER_LEVEL

IVI_CLASS_ATTR_BASE + 2

IVIRFSIGGEN_ATTR_ALC_ENABLED

IVI_CLASS_ATTR_BASE + 3

IVIRFSIGGEN_ATTR_OUTPUT_ENABLED

IVI_CLASS_ATTR_BASE + 4

IVIRFSIGGEN_ATTR_AM_ENABLED

IVI_CLASS_ATTR_BASE + 11

IVIRFSIGGEN_ATTR_AM_SOURCE

IVI_CLASS_ATTR_BASE + 12

IVIRFSIGGEN_ATTR_AM_SCALING

IVI_CLASS_ATTR_BASE + 13

IVIRFSIGGEN_ATTR_AM_EXTERNAL_COUPLING

IVI_CLASS_ATTR_BASE + 14

IVIRFSIGGEN_ATTR_AM_NOMINAL_VOLTAGE

IVI_CLASS_ATTR_BASE + 15

IVIRFSIGGEN_ATTR_AM_DEPTH

IVI_CLASS_ATTR_BASE + 16

IVIRFSIGGEN_ATTR_FM_ENABLED

IVI_CLASS_ATTR_BASE + 21

IVIRFSIGGEN_ATTR_FM_SOURCE

IVI_CLASS_ATTR_BASE + 22

IVIRFSIGGEN_ATTR_FM_EXTERNAL_COUPLING

IVI_CLASS_ATTR_BASE + 23

IVIRFSIGGEN_ATTR_FM_NOMINAL_VOLTAGE

IVI_CLASS_ATTR_BASE + 24

IVIRFSIGGEN_ATTR_FM_DEVIATION

IVI_CLASS_ATTR_BASE + 25

IVIRFSIGGEN_ATTR_PM_ENABLED

IVI_CLASS_ATTR_BASE + 31

IVIRFSIGGEN_ATTR_PM_SOURCE

IVI_CLASS_ATTR_BASE + 32

IVIRFSIGGEN_ATTR_PM_EXTERNAL_COUPLING

IVI_CLASS_ATTR_BASE + 33

IVIRFSIGGEN_ATTR_PM_NOMINAL_VOLTAGE

IVI_CLASS_ATTR_BASE + 34

IVIRFSIGGEN_ATTR_PM_DEVIATION

IVI_CLASS_ATTR_BASE + 35

IVIRFSIGGEN_ATTR_ANALOG_MODULATION_SOURCE_COUNT

IVI_CLASS_ATTR_BASE + 41

IVIRFSIGGEN_ATTR_PULSE_MODULATION_ENABLED

IVI_CLASS_ATTR_BASE + 51

IVIRFSIGGEN_ATTR_PULSE_MODULATION_SOURCE

IVI_CLASS_ATTR_BASE + 52

IVIRFSIGGEN_ATTR_PULSE_MODULATION_EXTERNAL_POLARITY

IVI_CLASS_ATTR_BASE + 53

IVIRFSIGGEN_ATTR_ACTIVE_LF_GENERATOR

IVI_CLASS_ATTR_BASE + 101

IVIRFSIGGEN_ATTR_LF_GENERATOR_COUNT

IVI_CLASS_ATTR_BASE + 102

IVIRFSIGGEN_ATTR_LF_GENERATOR_FREQUENCY

IVI_CLASS_ATTR_BASE + 103

IVIRFSIGGEN_ATTR_LF_GENERATOR_WAVEFORM

IVI_CLASS_ATTR_BASE + 104

IVIRFSIGGEN_ATTR_LF_GENERATOR_OUTPUT_AMPLITUDE

IVI_CLASS_ATTR_BASE + 111

IVIRFSIGGEN_ATTR_LF_GENERATOR_OUTPUT_ENABLED

IVI_CLASS_ATTR_BASE + 112

IVIRFSIGGEN_ATTR_PULSE_INTERNAL_TRIGGER_PERIOD

IVI_CLASS_ATTR_BASE + 121

IVIRFSIGGEN_ATTR_PULSE_WIDTH

IVI_CLASS_ATTR_BASE + 122

IVIRFSIGGEN_ATTR_PULSE_GATING_ENABLED

IVI_CLASS_ATTR_BASE + 123

IVI Foundation

307

IVI-4.10 IviRFSigGen Class Specification

Table 30-1 IviRFSigGen Attributes ID Values (C only)

Attribute Name

ID Definition

IVIRFSIGGEN_ATTR_PULSE_TRIGGER_SOURCE

IVI_CLASS_ATTR_BASE + 124

IVIRFSIGGEN_ATTR_PULSE_EXTERNAL_TRIGGER_SLOPE

IVI_CLASS_ATTR_BASE + 125

IVIRFSIGGEN_ATTR_PULSE_EXTERNAL_TRIGGER_DELAY

IVI_CLASS_ATTR_BASE + 126

IVIRFSIGGEN_ATTR_PULSE_DOUBLE_ENABLED

IVI_CLASS_ATTR_BASE + 131

IVIRFSIGGEN_ATTR_PULSE_DOUBLE_DELAY

IVI_CLASS_ATTR_BASE + 132

IVIRFSIGGEN_ATTR_PULSE_OUTPUT_POLARITY

IVI_CLASS_ATTR_BASE + 141

IVIRFSIGGEN_ATTR_PULSE_OUTPUT_ENABLED

IVI_CLASS_ATTR_BASE + 142

IVIRFSIGGEN_ATTR_SWEEP_MODE

IVI_CLASS_ATTR_BASE + 201

IVIRFSIGGEN_ATTR_SWEEP_TRIGGER_SOURCE

IVI_CLASS_ATTR_BASE + 202

IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_START

IVI_CLASS_ATTR_BASE + 211

IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_STOP

IVI_CLASS_ATTR_BASE + 212

IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_TIME

IVI_CLASS_ATTR_BASE + 213

IVIRFSIGGEN_ATTR_POWER_SWEEP_START

IVI_CLASS_ATTR_BASE + 221

IVIRFSIGGEN_ATTR_POWER_SWEEP_STOP

IVI_CLASS_ATTR_BASE + 222

IVIRFSIGGEN_ATTR_POWER_SWEEP_TIME

IVI_CLASS_ATTR_BASE + 223

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_START

IVI_CLASS_ATTR_BASE + 241

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_STOP

IVI_CLASS_ATTR_BASE + 242

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SCALING

IVI_CLASS_ATTR_BASE + 243

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SIZE

IVI_CLASS_ATTR_BASE + 244

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SINGLE_STEP_ENABLED

IVI_CLASS_ATTR_BASE + 245

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_DWELL

IVI_CLASS_ATTR_BASE + 246

IVIRFSIGGEN_ATTR_POWER_STEP_START

IVI_CLASS_ATTR_BASE + 261

IVIRFSIGGEN_ATTR_POWER_STEP_STOP

IVI_CLASS_ATTR_BASE + 262

IVIRFSIGGEN_ATTR_POWER_STEP_SIZE

IVI_CLASS_ATTR_BASE + 263

IVIRFSIGGEN_ATTR_POWER_STEP_SINGLE_STEP_ENABLED

IVI_CLASS_ATTR_BASE + 264

IVIRFSIGGEN_ATTR_POWER_STEP_DWELL

IVI_CLASS_ATTR_BASE + 265

IVIRFSIGGEN_ATTR_LIST_SELECTED_NAME

IVI_CLASS_ATTR_BASE + 281

IVIRFSIGGEN_ATTR_LIST_SINGLE_STEP_ENABLED

IVI_CLASS_ATTR_BASE + 282

IVIRFSIGGEN_ATTR_LIST_DWELL

IVI_CLASS_ATTR_BASE + 283

IVIRFSIGGEN_ATTR_ALC_SOURCE

IVI_CLASS_ATTR_BASE + 301

IVIRFSIGGEN_ATTR_ALC_BANDWIDTH

IVI_CLASS_ATTR_BASE + 302

IVIRFSIGGEN_ATTR_REFERENCE_OSCILLATOR_SOURCE

IVI_CLASS_ATTR_BASE + 321

IVIRFSIGGEN_ATTR_REFERENCE_OSCILLATOR_EXTERNAL_FREQUENCY

IVI_CLASS_ATTR_BASE + 322

IVIRFSIGGEN_ATTR_IQ_ENABLED

IVI_CLASS_ATTR_BASE + 401

IVIRFSIGGEN_ATTR_IQ_NOMINAL_VOLTAGE

IVI_CLASS_ATTR_BASE + 402

IVIRFSIGGEN_ATTR_IQ_SOURCE

IVI_CLASS_ATTR_BASE + 403

IVIRFSIGGEN_ATTR_IQ_SWAP_ENABLED

IVI_CLASS_ATTR_BASE + 404

IVI-4.10 IviRFSigGen Class Specification

308

IVI Foundation

Table 30-1 IviRFSigGen Attributes ID Values (C only)

Attribute Name

ID Definition

IVIRFSIGGEN_ATTR_IQ_IMPAIRMENT_ENABLED

IVI_CLASS_ATTR_BASE + 421

IVIRFSIGGEN_ATTR_IQ_I_OFFSET

IVI_CLASS_ATTR_BASE + 422

IVIRFSIGGEN_ATTR_IQ_Q_OFFSET

IVI_CLASS_ATTR_BASE + 423

IVIRFSIGGEN_ATTR_IQ_RATIO

IVI_CLASS_ATTR_BASE + 424

IVIRFSIGGEN_ATTR_IQ_SKEW

IVI_CLASS_ATTR_BASE + 425

IVIRFSIGGEN_ATTR_ARB_SELECTED_WAVEFORM

IVI_CLASS_ATTR_BASE + 451

IVIRFSIGGEN_ATTR_ARB_CLOCK_FREQUENCY

IVI_CLASS_ATTR_BASE + 452

IVIRFSIGGEN_ATTR_ARB_FILTER_FREQUENCY

IVI_CLASS_ATTR_BASE + 453

IVIRFSIGGEN_ATTR_ARB_MAX_NUMBER_WAVEFORMS

IVI_CLASS_ATTR_BASE + 454

IVIRFSIGGEN_ATTR_ARB_WAVEFORM_QUANTUM

IVI_CLASS_ATTR_BASE + 455

IVIRFSIGGEN_ATTR_ARB_WAVEFORM_SIZE_MIN

IVI_CLASS_ATTR_BASE + 456

IVIRFSIGGEN_ATTR_ARB_WAVEFORM_SIZE_MAX

IVI_CLASS_ATTR_BASE + 457

IVIRFSIGGEN_ATTR_ARB_TRIGGER_SOURCE

IVI_CLASS_ATTR_BASE + 458

IVIRFSIGGEN_ATTR_ARB_EXTERNAL_TRIGGER_SLOPE

IVI_CLASS_ATTR_BASE + 459

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_STANDARD_COUNT

IVI_CLASS_ATTR_BASE + 501

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_SELECTED_STANDA RD

IVI_CLASS_ATTR_BASE + 502

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_DATA_SOURCE

IVI_CLASS_ATTR_BASE + 503

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_PRBS_TYPE

IVI_CLASS_ATTR_BASE + 504

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_BIT_SEQUENCE

IVI_CLASS_ATTR_BASE + 505

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_CLOCK_SOURCE

IVI_CLASS_ATTR_BASE + 506

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_ TYPE

IVI_CLASS_ATTR_BASE + 507

IVIRFSIGGEN_ATTR_CDMA_STANDARD_COUNT

IVI_CLASS_ATTR_BASE + 601

IVIRFSIGGEN_ATTR_CDMA_SELECTED_STANDARD

IVI_CLASS_ATTR_BASE + 602

IVIRFSIGGEN_ATTR_CDMA_TRIGGER_SOURCE

IVI_CLASS_ATTR_BASE + 603

VIRFSIGGEN_ATTR_CDMA_EXTERNAL_TRIGGER_SLOPE

IVI_CLASS_ATTR_BASE + 604

IVIRFSIGGEN_ATTR_CDMA_TEST_MODEL_COUNT

IVI_CLASS_ATTR_BASE + 605

IVIRFSIGGEN_ATTR_CDMA_SELECTED_TEST_MODEL

IVI_CLASS_ATTR_BASE + 606

IVIRFSIGGEN_ATTR_CDMA_CLOCK_SOURCE

IVI_CLASS_ATTR_BASE + 607

IVIRFSIGGEN_ATTR_TDMA_STANDARD_COUNT

IVI_CLASS_ATTR_BASE + 701

IVIRFSIGGEN_ATTR_TDMA_SELECTED_STANDARD

IVI_CLASS_ATTR_BASE + 702

IVIRFSIGGEN_ATTR_TDMA_TRIGGER_SOURCE

IVI_CLASS_ATTR_BASE + 703

IVIRFSIGGEN_ATTR_TDMA_EXTERNAL_TRIGGER_SLOPE

IVI_CLASS_ATTR_BASE + 704

IVIRFSIGGEN_ATTR_TDMA_FRAME_COUNT

IVI_CLASS_ATTR_BASE + 705

IVIRFSIGGEN_ATTR_TDMA_SELECTED_FRAME

IVI_CLASS_ATTR_BASE + 706

IVIRFSIGGEN_ATTR_TDMA_CLOCK_SOURCE

IVI_CLASS_ATTR_BASE + 707

IVI Foundation

309

IVI-4.10 IviRFSigGen Class Specification

Table 30-1 IviRFSigGen Attributes ID Values (C only)

Attribute Name

ID Definition

IVIRFSIGGEN_ATTR_TDMA_EXTERNAL_CLOCK_TYPE

IVI-4.10 IviRFSigGen Class Specification

310

IVI_CLASS_ATTR_BASE + 708

IVI Foundation

31.

IviRFSigGen Attribute Value Definitions This section specifies the actual value for each defined attribute value.

AM Scaling Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_AM_SCALING_LINEAR

0

COM

IviRFSigGenAMScalingLinear

0

C

IVIRFSIGGEN_VAL_AM_SCALING_LOGARITHMIC

1

COM

IviRFSigGenAMScalingLogarithmic

1

AM Scaling Class Ext Base

C

IVIRFSIGGEN_VAL_AM_SCALING_CLASS_EXT_BASE

500

AM Scaling Specific Ext Base

C

IVIRFSIGGEN_VAL_AM_SCALING_SPECIFIC_EXT_BA SE

1000

AM Scaling Linear

AM Scaling Logarithmic

1000

COM

AM External Coupling Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_AC

0

COM

IviRFSigGenAMExternalCouplingAC

0

C

IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_DC

1

COM

IviRFSigGenAMExternalCouplingDC

1

AM External Coupling Class Ext Base

C

IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_CLASS _EXT_BASE

500

AM External Coupling Specific Ext Base

C

IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_SPECI FIC_EXT_BASE

1000

AM External Coupling AC

AM External Coupling DC

1000

COM

FM External Coupling Value Name FM External Coupling AC

FM External Coupling DC

FM External Coupling Class Ext Base

IVI Foundation

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_AC

0

COM

IviRFSigGenFMExternalCouplingAC

0

C

IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_DC

1

COM

IviRFSigGenFMExternalCouplingDC

1

C

IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_CLASS _EXT_BASE

500

311

IVI-4.10 IviRFSigGen Class Specification

Value Name FM External Coupling Specific Ext Base

Language C

Identifier

Actual Value

IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_SPECI FIC_EXT_BASE

1000

1000

COM

PM External Coupling Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_AC

0

COM

IviRFSigGenPMExternalCouplingAC

0

C

IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_DC

1

COM

IviRFSigGenPMExternalCouplingDC

1

PM External Coupling Class Ext Base

C

IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_CLASS _EXT_BASE

500

PM External Coupling Specific Ext Base

C

IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_SPECI FIC_EXT_BASE

1000

PM External Coupling AC

PM External Coupling DC

1000

COM

Pulse Modulation Source Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_IN TERNAL

0

COM

IviRFSigGenPulseModulationSourceInternal

0

C

IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_EX TERNAL

1

COM

IviRFSigGenPulseModulationSourceExternal

1

Pulse Modulation Source Class Ext Base

C

IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_CL ASS_EXT_BASE

500

Pulse Modulation Source Specific Ext Base

C

IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_SP ECIFIC_EXT_BASE

1000

Pulse Modulation Source Internal

Pulse Modulation Source External

1000

COM

Pulse Modulation External Polarity Value Name Pulse Modulation External Polarity Normal

Language C

IVI-4.10 IviRFSigGen Class Specification

Identifier

Actual Value

IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_ POLARITY_NORMAL

312

0

IVI Foundation

Value Name

Language

Identifier

Actual Value

COM

IviRFSigGenPulseModulationExternalPolarity Normal

0

C

IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_ POLARITY_INVERSE

1

COM

IviRFSigGenPulseModulationExternalPolarity Inverse

1

Pulse Modulation External Polarity Class Ext Base

C

IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_ POLARITY_CLASS_EXT_BASE

500

Pulse Modulation External Polarity Specific Ext Base

C

IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_ POLARITY_SPECIFIC_EXT_BASE

1000

Pulse Modulation External Polarity Inverse

1000

COM

LFGenerator Waveform Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_SINE

0

COM

IviRFSigGenLFGeneratorWaveformSine

0

C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_SQUA RE

1

COM

IviRFSigGenLFGeneratorWaveformSquare

1

C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_TRAN GLE

2

COM

IviRFSigGenLFGeneratorWaveformTriangle

2

C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_RAMP _UP

3

COM

IviRFSigGenLFGeneratorWaveformRampUp

3

C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_RAMP _DOWN

4

COM

IviRFSigGenLFGeneratorWaveformRampDown

4

LFGenerator Waveform Class Ext Base

C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_CLAS S_EXT_BASE

500

LFGenerator Waveform Specific Ext Base

C

IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_SPEC IFIC_EXT_BASE

1000

LFGenerator Waveform Sine

LFGenerator Waveform Square

LFGenerator Waveform Triangle

LFGenerator Waveform Ramp Up

LFGenerator Waveform Ramp Down

1000

COM

Pulse Trigger Source

IVI Foundation

313

IVI-4.10 IviRFSigGen Class Specification

Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_INTER NAL

0

COM

IviRFSigGenPulseTriggerSourceInternal

0

C

IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_EXTER NAL

1

COM

IviRFSigGenPulseTriggerSourceExternal

1

Pulse Trigger Source Class Ext Base

C

IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_CLASS _EXT_BASE

500

Pulse Trigger Source Specific Ext Base

C

IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_SPECI FIC_EXT_BASE

1000

Pulse Trigger Source Internal

Pulse Trigger Source External

1000

COM

Pulse External Trigger Slope Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLO PE_POSITIVE

0

COM

IviRFSigGenPulseExternalTriggerSlopePositi ve

0

C

IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLO PE_NEGATIVE

1

COM

IviRFSigGenPulseExternalTriggerSlopeNegati ve

1

Pulse External Trigger Slope Class Ext Base

C

IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLO PE_CLASS_EXT_BASE

500

Pulse External Trigger Slope Specific Ext Base

C

IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLO PE_SPECIFIC_EXT_BASE

1000

Pulse External Trigger Slope Positive

Pulse External Trigger Slope Negative

1000

COM

Pulse Output Polarity Value Name Pulse Output Polarity Normal

Pulse Output Polarity Inverse

Pulse Output Polarity Class Ext Base

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_NORM AL

0

COM

IviRFSigGenPulseOutputPolarityNormal

0

C

IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_INVE RSE

1

COM

IviRFSigGenPulseOutputPolarityInverse

1

C

IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_CLAS S_EXT_BASE

500

IVI-4.10 IviRFSigGen Class Specification

314

IVI Foundation

Value Name Pulse Output Polarity Specific Ext Base

Language C

Identifier IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_SPEC IFIC_EXT_BASE

Actual Value 1000

1000

COM

Sweep Mode Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_SWEEP_MODE_NONE

0

COM

IviRFSigGenSweepModeNone

0

C

IVIRFSIGGEN_VAL_SWEEP_MODE_FREQUENCY_SWEEP

1

COM

IviRFSigGenSweepModeFrequencySweep

1

C

IVIRFSIGGEN_VAL_SWEEP_MODE_POWER_SWEEP

2

COM

IviRFSigGenSweepModePowerSweep

2

C

IVIRFSIGGEN_VAL_SWEEP_MODE_FREQUENCY_STEP

3

COM

IviRFSigGenSweepModeFrequencyStep

3

C

IVIRFSIGGEN_VAL_SWEEP_MODE_POWER_STEP

4

COM

IviRFSigGenSweepModePowerStep

4

C

IVIRFSIGGEN_VAL_SWEEP_MODE_LIST

5

COM

IviRFSigGenSweepModeList

5

Sweep Mode Class Ext Base

C

IVIRFSIGGEN_VAL_SWEEP_MODE_CLASS_EXT_BASE

500

Sweep Mode Specific Ext Base

C

IVIRFSIGGEN_VAL_SWEEP_MODE_SPECIFIC_EXT_BA SE

1000

Sweep Mode None

Sweep Mode Fequency Sweep

Sweep Mode Power Sweep

Sweep Mode Frequeny Step

Sweep Mode Power Step

Sweep Mode List

1000

COM

Sweep Trigger Source Value Name Sweep Trigger Source Immediate

Sweep Trigger Source External

Sweep Trigger Source Software

Sweep Trigger Source Class Ext Base

IVI Foundation

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_IMMED IATE

0

COM

IviRFSigGenSweepTriggerSourceImmediate

0

C

IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_EXTER NAL

1

COM

IviRFSigGenSweepTriggerSourceExternal

1

C

IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_SOFTW ARE

2

COM

IviRFSigGenSweepTriggerSourceSoftware

2

C

IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_CLASS _EXT_BASE

500

315

IVI-4.10 IviRFSigGen Class Specification

Value Name

Language

Sweep Trigger Source Specific Ext Base

Identifier

Actual Value

IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_SPECI FIC_EXT_BASE

C

1000

1000

COM

Frequency Step Scaling Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_LIN EAR

0

COM

IviRFSigGenFrequencyStepScalingLinear

0

C

IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_LOG ARITHMIC

1

COM

IviRFSigGenFrequencyStepScalingLogarithmic

1

Frequency Step Scaling Class Ext Base

C

IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_CLA SS_EXT_BASE

500

Frequency Step Scaling Specific Ext Base

C

IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_SPE CIFIC_EXT_BASE

1000

Frequency Step Scaling Linear

Frequency Step Scaling Logarithmic

1000

COM

ALC Source Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_ALC_SOURCE_INTERNAL

0

COM

IviRFSigGenALCSourceInternal

0

C

IVIRFSIGGEN_VAL_ALC_SOURCE_EXTERNAL

1

COM

IviRFSigGenALCSourceExternal

1

ALC Source Class Ext Base

C

IVIRFSIGGEN_VAL_ALC_SOURCE_CLASS_EXT_BASE

500

ALC Source Specific Ext Base

C

IVIRFSIGGEN_VAL_ALC_SOURCE_SPECIFIC_EXT_BA SE

1000

ALC Source Internal

ALC Source External

1000

COM

Reference Oscillator Source Value Name Reference Oscillator Source Internal

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_I NTERNAL

0

COM

IviRFSigGenReferenceOscillatorSourceInternal

0

IVI-4.10 IviRFSigGen Class Specification

316

IVI Foundation

Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_E XTERNAL

1

COM

IviRFSigGenReferenceOscillatorSourceExternal

1

Reference Oscillator Source Class Ext Base

C

IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_C LASS_EXT_BASE

500

Reference Oscillator Source Specific Ext Base

C

IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_S PECIFIC_EXT_BASE

1000

Reference Oscillator Source External

1000

COM

IQ Source Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_IQ_SOURCE_DIGITAL_MODULATI ON_BASE

0

COM

IviRFSigGenIQSourceDigitalModulationBase

0

C

IVIRFSIGGEN_VAL_IQ_SOURCE_CDMA_BASE

1

COM

IviRFSigGenIQSourceCDMABase

1

C

IVIRFSIGGEN_VAL_IQ_SOURCE_TDMA_BASE

2

COM

IviRFSigGenIQSourceTDMABase

2

C

IVIRFSIGGEN_VAL_IQ_SOURCE_ARB_GENERATOR

3

COM

IviRFSigGenIQSourceArbGenerator

3

C

IVIRFSIGGEN_VAL_IQ_SOURCE_EXTERNAL

4

COM

IviRFSigGenIQSourceExternal

4

IQ Source Class Ext Base

C

IVIRFSIGGEN_VAL_IQ_SOURCE_CLASS_EXT_BASE

500

IQ Source Specific Ext Base

C

IVIRFSIGGEN_VAL_IQ_SOURCE_SPECIFIC_EXT_BAS E

1000

IQ Source DigitalModulation Base

IQ Source CDMA Base

IQ Source TDMA Base

IQ Source Arb Generator

IQ Source External

1000

COM

Arb Trigger Source Value Name Arb Trigger Source Immediate

Arb Trigger Source External

IVI Foundation

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_IMMEDIA TE

0

COM

IviRFSigGenArbTriggerSourceImmediate

0

C

IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_EXTERNA L

1

COM

IviRFSigGenArbTriggerSourceExternal

1

317

IVI-4.10 IviRFSigGen Class Specification

Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_SOFTWAR E

2

COM

IviRFSigGenArbTriggerSourceSoftware

2

Arb Trigger Source Class Ext Base

C

IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_CLASS_E XT_BASE

500

Arb Trigger Source Specific Ext Base

C

IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_SPECIFI C_EXT_BASE

1000

Arb Trigger Source Software

1000

COM

Arb External Trigger Slope Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE _POSITIVE

0

COM

IviRFSigGenArbExternalTriggerSlopePositive

0

C

IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE _NEGATIVE

1

COM

IviRFSigGenArbExternalTriggerSlopeNegative

1

Arb External Trigger Slope Class Ext Base

C

IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE _CLASS_EXT_BASE

500

Arb External Trigger Slope Specific Ext Base

C

IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE _SPECIFIC_EXT_BASE

1000

Arb External Trigger Slope Positive

Arb External Trigger Slope Negative

1000

COM

Digital Modulation Base Data Source Value Name Digital Modulation Base Data Source External

Digital Modulation Base Data Source PRBS

Digital Modulation Base Data Source Bit Sequence

Digital Modulation Base Data Source Class Ext Base

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DA TA_SOURCE_EXTERNAL

0

COM

IviRFSigGenDigitalModulationBaseDataExtern al

0

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DA TA_SOURCE_PRBS

1

COM

IviRFSigGenDigitalModulationBaseDataPRBS

1

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DA TA_SOURCE_BIT_SEQUENCE

2

COM

IviRFSigGenDigitalModulationBaseDataBitSeq uence

2

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DA TA_SOURCE_CLASS_EXT_BASE

500

IVI-4.10 IviRFSigGen Class Specification

318

IVI Foundation

Value Name Digital Modulation Base Data Source Specific Ext Base

Language C

Identifier IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DA TA_SOURCE_SPECIFIC_EXT_BASE

Actual Value 1000

1000

COM

Digital Modulation Base PRBS Type Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BAS E_PRBS_TYPE_PRBS9

0

COM

IviRFSigGenDigitalModulationBasePRBS9

0

C

IVIRFSIGGEN_VAL_ DIGITAL_MODULATION_BASE PRBS_TYPE_PRBS11

1

COM

IviRFSigGenDigitalModulationBasePRBS11

1

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BAS E_PRBS_TYPE_PRBS15

2

COM

IviRFSigGenDigitalModulationBasePRBS15

2

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BAS E_PRBS_TYPE_PRBS16

3

COM

IviRFSigGenDigitalModulationBasePRBS16

3

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BAS E_PRBS_TYPE_PRBS20

4

COM

IviRFSigGenDigitalModulationBasePRBS20

4

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BAS E_PRBS_TYPE_PRBS21

5

COM

IviRFSigGenDigitalModulationBasePRBS21

5

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BAS E_PRBS_TYPE_PRBS23

6

COM

IviRFSigGenDigitalModulationBasePRBS23

6

Digital Modulation Base PRBS Type Class Ext Base

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PR BS_TYPE_CLASS_EXT_BASE

500

Digital Modulation Base PRBS Type Specific Ext Base

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PR BS_TYPE_SPECIFIC_EXT_BASE

1000

Digital Modulation Base PRBS Type PRBS9

Digital Modulation Base PRBS Type PRBS11

Digital Modulation Base PRBS Type PRBS15

Digital Modulation Base PRBS Type PRBS16

Digital Modulation Base PRBS Type PRBS20

Digital Modulation Base PRBS Type PRBS21

Digital Modulation Base PRBS Type PRBS23

1000

COM

Digital Modulation Base Clock Source

IVI Foundation

319

IVI-4.10 IviRFSigGen Class Specification

Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CL OCK_SOURCE_INTERNAL

0

COM

IviRFSigGenDigitalModulationBaseClockSourc eInternal

0

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CL OCK_SOURCE_EXTERNAL

1

COM

IviRFSigGenDigitalModulationBaseClockSourc eExternal

1

Digital Modulation Base Clock Source Class Ext Base

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CL OCK_SOURCE_CLASS_EXT_BASE

500

Digital Modulation Base Clock Source Specific Ext Base

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CL OCK_SOURCE_SPECIFIC_EXT_BASE

1000

Digital Modulation Base Clock Source Internal

Digital Modulation Base Clock Source External

1000

COM

Digital Modulation Base External Clock Type Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BAS E_EXTERNAL_CLOCK_TYPE_BIT

0

COM

IviRFSigGenDigitalModulationBaseExtern alClockTypeBit

0

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BAS E_EXTERNAL_CLOCK_TYPE_SYMBOL

1

COM

IviRFSigGenDigitalModulationBaseExtern alClockTypeSymbol

1

Digital Modulation Base External Clock Type Class Ext Base

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EX TERNAL_CLOCK_TYPE_CLASS_EXT_BASE

500

Digital Modulation Base External Clock Type Specific Ext Base

C

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EX TERNAL_CLOCK_TYPE_SPECIFIC_EXT_BASE

1000

Digital Modulation Base External Clock Type Bit

Digital Modulation Base External Clock Type Symbol

1000

COM

CDMA Trigger Source Value Name CDMA Trigger Source Immediate

CDMA Trigger Source External

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_IMMEDI ATE

0

COM

IviRFSigGenCDMATriggerSourceImmediate

0

C

IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_EXTERN AL

1

COM

IviRFSigGenCDMATriggerSourceExternal

1

IVI-4.10 IviRFSigGen Class Specification

320

IVI Foundation

Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_SOFTWA RE

2

COM

IviRFSigGenCDMATriggerSourceSoftware

2

CDMA Trigger Source Class Ext Base

C

IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_CLASS_ EXT_BASE

500

CDMA Trigger Source Specific Ext Base

C

IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_SPECIF IC_EXT_BASE

1000

CDMA Trigger Source Software

1000

COM

CDMA External Trigger Slope Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_CDMA_EXTERNAL_TRIGGER_SLOP E_POSITIVE

0

COM

IviRFSigGenCDMAExternalTriggerSlopePositiv e

0

C

IVIRFSIGGEN_VAL_CDMA_EXTERNAL_TRIGGER_SLOP E_NEGATIVE

1

COM

IviRFSigGenCDMAExternalTriggerSlopeNegativ e

1

CDMA External Trigger Slope Class Ext Base

C

IVIRFSIGGEN_VAL_CDMA_EXTERNAL_TRIGGER_SLOP E_CLASS_EXT_BASE

500

CDMA External Trigger Slope Specific Ext Base

C

IVIRFSIGGEN_VAL_CDMA_EXTERNAL_TRIGGER_SLOP E_SPECIFIC_EXT_BASE

1000

CDMA External Trigger Slope Positive

CDMA External Trigger Slope Negative

1000

COM

CDMA Clock Source Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_INTERNAL

0

COM

IviRFSigGenCDMAClockSourceInternal

0

C

IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_EXTERNAL

1

COM

IviRFSigGenCDMAClockSourceExternal

1

CDMA Clock Source Class Ext Base

C

IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_CLASS_EX T_BASE

500

CDMA Clock Source Specific Ext Base

C

IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_SPECIFIC _EXT_BASE

1000

CDMA Clock Source Internal

CDMA Clock Source External

1000

COM

IVI Foundation

321

IVI-4.10 IviRFSigGen Class Specification

TDMA Trigger Source Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_IMMEDI ATE

0

COM

IviRFSigGenTDMATriggerSourceImmediate

0

C

IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_EXTERN AL

1

COM

IviRFSigGenTDMATriggerSourceExternal

1

C

IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_SOFTWA RE

2

COM

IviRFSigGenTDMATriggerSourceSoftware

2

TDMA Trigger Source Class Ext Base

C

IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_CLASS_ EXT_BASE

500

TDMA Trigger Source Specific Ext Base

C

IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_SPECIF IC_EXT_BASE

1000

TDMA Trigger Source Immediate

TDMA Trigger Source External

TDMA Trigger Source Software

1000

COM

TDMA External Trigger Slope Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOP E_POSITIVE

0

COM

IviRFSigGenTDMAExternalTriggerSlopePositiv e

0

C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOP E_NEGATIVE

1

COM

IviRFSigGenTDMAExternalTriggerSlopeNegativ e

1

TDMA External Trigger Slope Class Ext Base

C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOP E_CLASS_EXT_BASE

500

TDMA External Trigger Slope Specific Ext Base

C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOP E_SPECIFIC_EXT_BASE

1000

TDMA External Trigger Slope Positive

TDMA External Trigger Slope Negative

1000

COM

TDMA Clock Source Value Name TDMA Clock Source Internal

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_INTERNAL

0

COM

IviRFSigGenTDMAClockSourceInternal

0

IVI-4.10 IviRFSigGen Class Specification

322

IVI Foundation

Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_EXTERNAL

1

COM

IviRFSigGenTDMAClockSourceExternal

1

TDMA Clock Source Class Ext Base

C

IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_CLASS_EX T_BASE

500

TDMA Clock Source Specific Ext Base

C

IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_SPECIFIC _EXT_BASE

1000

TDMA Clock Source External

1000

COM

TDMA External Clock Type Value Name

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_B IT

0

COM

IviRFSigGenTDMAExternalClockTypeBit

0

C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_S YMBOL

1

COM

IviRFSigGenTDMAExternalClockTypeSymbol

1

TDMA External Clock Type Class Ext Base

C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_C LASS_EXT_BASE

500

TDMA External Clock Type Specific Ext Base

C

IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_S PECIFIC_EXT_BASE

1000

TDMA External Clock Type Bit

TDMA External Clock Type Symbol

1000

COM

IVI Foundation

323

IVI-4.10 IviRFSigGen Class Specification

32.

IviRFSigGen Function Parameter Value Definitions This section specifies the actual values for each function parameter that defines values.

Wait Until Settled Parameter: MaxTimeMilleseconds Value Name Max Time Immediate Max Time Infinite

Language

Identifier

Actual Value

C

IVIRFSIGGEN_VAL_MAX_TIME_IMMEDIATE

0x0

COM

IviRFSigGenMaxTimeImmediate

0x0

C

IVIRFSIGGEN_VAL_MAX_TIME_INFINITE

0xFFFFFFFFUL

COM

IviRFSigGenMaxTimeInfinite

0xFFFFFFFFUL

IVI-4.10 IviRFSigGen Class Specification

324

IVI Foundation

33.

IviRFSigGen Error and Completion Code Value Definitions Table 33-1 specifies the actual value for each status code that the IviRFSigGen class specification defines. Table 33-1 IviRFSigGen Completion Codes

Error Name

Description Languag e

Trigger Not Software

Max Time Exceeded

List Unknown

Identifier

Value(hex)

The trigger source is not set to software trigger. C

IVIRFSIGGEN_ERROR_TRIGGER_NOT_SOFTWA RE

0xBFFA1001

COM

E_IVIRFSIGGEN_TRIGGER_NOT_SOFTWARE

0x80041001

Maximum time exceeded before the operation completed. C

IVIRFSIGGEN_ERROR_MAX_TIME_EXCEEDED

0xBFFA2003

COM

E_IVIRFSIGGEN_MAX_TIME_EXCEEDED

0x80042003

The selected list is not defined. C

IVIRFSIGGEN_ERROR_LIST_UNKNOWN

0xBFFA200A

COM

E_IVIRFSIGGEN_LIST_UNKNOWN

0x8004200A

Table 33-2 defines the recommended format of the message string associated with the errors. In C, these strings are returned by the Get Error function. In COM, these strings are the description contained in the ErrorInfo object. Note: In the description string table entries listed below, %s is always used to represent the component name.

Table 33-2. IviRFSigGen Error Message Strings

Name

Message String

Trigger Not Software

“%s: Trigger source is not set to software trigger”

Max Time Exceeded

“%s: Max Time Exceeded”

List Unknown

“%s: List Unknown”

IVI Foundation

325

IVI-4.10 IviRFSigGen Class Specification

34.

IviRFSigGen Hierarchies

34.1

IviRFSigGen COM Hierarchy Table 34-1. IviRFSigGen COM Hierarchy

COM Interface Hierarchy

Generic Name

Type

Send Software Trigger

M

Configure

Configure RF

M

IsSettled

Is Settled

M

WaitUntilSettled

Wait Until Settled

M

DisableAllModulation

Disable All Modulation

M

Frequency

Frequency

P

Level

Power Level

P

OutputEnabled

Output Enabled

P

Name

Analog Modulation Source Name

P

Count

Analog Modulation Source Count

P

Configure

Configure AM

M

Enabled

AM Enabled

P

Source

AM Source

P

Scaling

AM Scaling

P

ExternalCoupling

AM External Coupling

P

NominalVoltage

AM Nominal Voltage

P

Depth

AM Depth

P

Configure

Configure FM

M

Enabled

FM Enabled

P

Source

FM Source

P

ExternalCoupling

FM External Coupling

P

NominalVoltage

FM Nominal Voltage

P

Deviation

FM Deviation

P

SendSoftwareTrigger RF

AnalogModulation Source

AM

FM

IVI-4.10 IviRFSigGen Class Specification

326

IVI Foundation

Table 34-1. IviRFSigGen COM Hierarchy

COM Interface Hierarchy

Generic Name

Type

PM Configure

Configure PM

M

Enabled

PM Enabled

P

Source

PM Source

P

ExternalCoupling

PM External Coupling

P

NominalVoltage

PM Nominal Voltage

P

Deviation

PM Deviation

P

Enabled

Pulse Modulation Enabled

P

Source

Pulse Modulation Source

P

ExternalPolarity

Pulse Modulation External Polarity

P

Configure

Configure LF Generator

M

ActiveLFGenerator

Active LFGenerator

P

Name

LFGenerator Name

P

Count

LFGenerator Count

P

Frequency

LFGenerator Frequency

P

Waveform

LFGenerator Waveform

P

Configure

Configure LFGenerator Output

M

Enabled

LFGenerator Output Enabled

P

Amplitude

LFGenerator Output Amplitude

P

Configure

Configure Pulse

M

ConfigureExternalTrigger

Configure Pulse External Trigger

M

InternalTriggerPeriod

Pulse Internal Trigger Period

P

Width

Pulse Width

P

GatingEnabled

Pulse Gating Enabled

P

TriggerSource

Pulse Trigger Source

P

ExternalTriggerSlope

Pulse External Trigger Slope

P

ExternalTriggerDelay

Pulse External Trigger Delay

P

Configure

Configure Pulse Double

M

Enabled

Pulse Double Enabled

P

Delay

Pulse Double Delay

P

PulseModulation

LFGenerator

Output

PulseGenerator

Double

IVI Foundation

327

IVI-4.10 IviRFSigGen Class Specification

Table 34-1. IviRFSigGen COM Hierarchy

COM Interface Hierarchy

Generic Name

Type

Output Configure

Configure Pulse Output

M

Polarity

Pulse Output Polarity

P

Enabled

Pulse Output Enabled

P

Configure

Configure Sweep

M

Mode

Sweep Mode

P

TriggerSource

Sweep Trigger Source

P

ConfigureStartStop

Configure Frequency Sweep Start Stop

M

ConfigureCenterSpan

Configure Frequency Sweep Center Span

M

Start

Frequency Sweep Start

P

Stop

Frequency Sweep Stop

P

Time

Frequency Sweep Time

P

ConfigureStartStop

Configure Power Sweep Start Stop

M

Start

Power Sweep Start

P

Stop

Power Sweep Stop

P

Time

Power Sweep Time

P

ConfigureStartStop

Configure Frequency Step Start Stop

M

ConfigureDwell

Configure Frequency Step Dwell

M

Reset

Frequency Step Reset

M

Start

Frequency Step Start

P

Stop

Frequency Step Stop

P

Scaling

Frequency Step Scaling

P

Size

Frequency Step Size

P

SingleStepEnabled

Frequency Step Single Step Enabled

P

Dwell

Frequency Step Swell

P

ConfigureStartStop

Configure Power Step Start Stop

M

ConfigureDwell

Configure Power Step Dwell

M

Reset

Power Step Reset

M

Start

Power Step Start

P

Stop

Power Step Stop

P

Size

Power Step Size

P

SingleStepEnabled

Power Step Single Step Enabled

P

Dwell

Power Step Dwell

P

Sweep

FrequencySweep

PowerSweep

FrequencyStep

PowerStep

IVI-4.10 IviRFSigGen Class Specification

328

IVI Foundation

Table 34-1. IviRFSigGen COM Hierarchy

COM Interface Hierarchy

Generic Name

Type

List CreateFrequency

Create Frequency List

M

CreatePower

Create Power List

M

CreateFrequencyPower

Create Frequency Power List

M

ClearAll

Clear All List

M

ConfigureDwell

Configure List Dwell

M

Reset

List Reset

M

SelectedName

List Selected Name

P

SingleStepEnabled

List Single Step Enabled

P

Dwell

List Dwell

P

Configure

Configure ALC

M

Enabled

ALC Enabled

P

Source

ALC Source

P

Bandwidth

ALC Bandwidth

P

Configure

Configure Reference Oscillator

M

Source

Reference Oscillator Source

P

ExternalFrequency

Reference Oscillator External Frequency

P

Configure

Configure IQ

M

Calibrate

Calibrate IQ

M

Enabled

IQ Enabled

P

Source

IQ Source

P

NominalVoltage

IQ Nominal Voltage

P

SwapEnabled

IQ Swap Enabled

P

Configure

Configure IQ Impairment

M

Enabled

IQ Impairment Enabled

P

IOffset

IQ I-Offset

P

QOffset

IQ Q-Offset

P

Ratio

IQ Ratio

P

Skew

IQ Skew

P

ALC

ReferenceOscillator

IQ

Impairment

IVI Foundation

329

IVI-4.10 IviRFSigGen Class Specification

Table 34-1. IviRFSigGen COM Hierarchy

COM Interface Hierarchy

Generic Name

Type

DigitalModulation Arb Configure

Configure Arb

M

WriteWaveform

Write Arb Waveform

M

ClearAllWaveforms

Clear All Arb Waveforms

M

QueryWaveformCapabilities

Query Arb Waveform Capabilities

M

SelectedWaveform

Arb Selected Waveform

P

ClockFrequency

Arb Clock Frequency

P

FilterFrequency

Arb Filter Frequency

P

MaxNumberWaveforms

Arb Max Number Waveforms

P

WaveformQuantum

Arb Waveform Quantum

P

WaveformSizeMin

Arb Waveform Size Min

P

WaveformSizeMax

Arb Waveform Size Max

P

TriggerSource

Arb Trigger Source

P

ExternalTriggerSlope

Arb External Trigger Slope

P

StandardName

DigitalModulationBase Standard Name

P

StandardCount

DigitalModulationBase Standard Count

P

ConfigureClockSource

Configure DigitalModulationBase Clock Source

M

WriteBitSequence

Write DigitalModulationBase Bit Sequence

M

ClearAllBitSequences

Clear DigitalModulationBase Bit Sequence

M

SelectedStandard

DigitalModulationBase Selected Standard

P

DataSource

DigitalModulationBase Data Source

P

PRBSType

DigitalModulationBase PRBS TYpe

P

SelectedBitSequence

DigitalModulationBase Selected Bit Sequence

P

ClockSource

DigitalModulationBase Clock Source

P

ExternalClockType

DigitalModulationBase External Clock Type

P

StandardName

CDMA Standard Name

P

StandardCount

CDMA Standard Count

P

TestModelName

CDMA Test Model Name

P

TestModelCount

CDMA Test Model Count

P

SelectedStandard

CDMA Selected Standard

P

TriggerSource

CDMA Trigger Source

P

ExternalTriggerSlope

CDMA External Trigger Slope

P

SelectedTestModel

CDMA Selected Test Model

P

ClockSource

CDMA Clock Source

P

Base

CDMA

IVI-4.10 IviRFSigGen Class Specification

330

IVI Foundation

Table 34-1. IviRFSigGen COM Hierarchy

COM Interface Hierarchy

Generic Name

Type

TDMA StandardName

TDMA Standard Name

P

StandardCount

TDMA Standard Count

P

ConfigureClockSource

Configure TDMA Clock Source

M

FrameName

TDMA Frame Name

P

FrameCount

TDMA Frame Count

P

SelectedStandard

TDMA Selected Standard

P

TriggerSource

TDMA Trigger Source

P

ExternalTriggerSlope

TDMA External Trigger Slope

P

SelectedFrame

TDMA Selected Frame

P

ClockSource

TDMA Clock Source

P

ExternalClockType

TDMA External Clock Type

P

IVI Foundation

331

IVI-4.10 IviRFSigGen Class Specification

34.1.1 IviRFSigGen COM Interfaces In addition to implementing IVI inherent capabilities interfaces, IviRFSigGen interfaces contain interface reference properties for accessing the following IviRFSigGen interfaces: ? IIviRFSigGenRF ? IIviRFSigGenAnalogModulation ? IIviRFSigGenPulseModulation ? IIviRFSigGenLFGenerator ? IIviRFSigGenPulseGenerator ? IIviRFSigGenSweep ? IIviRFSigGenALC ? IIviRFSigGenReferenceOscillator ? IIviRFSigGenIQ ? IiviRFSigGenDigitalModulation The IIviRFSigGenAnalogModulation interface contains interface reference properties for accessing additional the following IviRFSigGen AnalogModulation interfaces: ? IIviRFSigGenAnalogModulationSource ? IIviRFSigGenAM ? IIviRFSigGenFM ? IIviRFSigGenPM The IIviRFSigGenLFGenerator interface contains interface reference properties for accessing additional the following IviRFSigGen LFGenerator interfaces: ? IIviRFSigGenLFGeneratorOutput The IIviRFSigGenPulseGenerator interface contains interface reference properties for accessing additional the following IviRFSigGen PulseGenerator interfaces: ? IIviRFSigGenPulseGeneratorDouble ? IIviRFSigGenPulseGeneratorOutput The IIviRFSigGenSweep interface contains interface reference properties for accessing additional the following IviRFSigGen Sweep interfaces: ? IIviRFSigGenFrequencySweep ? IIviRFSigGenPowerSweep ? IIviRFSigGenFrequencyStep ? IIviRFSigGenPowerStep ? IIviRFSigGenList The IIviRFSigGenIQ interface contains interface reference properties for accessing additional the following IviRFSigGen IQ interfaces: ? IIviRFSigGenIQImpairment The IIviRFSigGenDigitalModulation interface contains interface reference properties for accessing additional the following IviRFSigGen DigitalModulation interfaces: ? IIviRFSigGenArb ? IIviRFSigGenDigitalModulationBase ? IIviRFSigGenCDMA ? IIviRFSigGenTDMA

IVI-4.10 IviRFSigGen Class Specification

332

IVI Foundation

Table 34-2. IviRFSigGen Interface GUIDs lists the interfaces that this specification defines and their GUIDs. Table 34-2. IviRFSigGen Interface GUIDs

Interface

GUID

IIviRFSigGen

{47ed52e2-a398-11d4-ba58-000064657374}

IIviRFSigGenRF

{47ed52e3-a398-11d4-ba58-000064657374}

IIviRFSigGenALC

{47ed52e4-a398-11d4-ba58-000064657374}

IIviRFSigGenReferenceOscillator

{47ed52e5-a398-11d4-ba58-000064657374}

IIviRFSigGenLFGenerator

{47ed52e6-a398-11d4-ba58-000064657374}

IIviRFSigGenLFGeneratorOutput

{47ed52e7-a398-11d4-ba58-000064657374}

IIviRFSigGenPulseGenerator

{47ed52e8-a398-11d4-ba58-000064657374}

IIviRFSigGenPulseGeneratorDouble

{47ed52e9-a398-11d4-ba58-000064657374}

IIviRFSigGenPulseGeneratorOutput

{47ed52ea-a398-11d4-ba58-000064657374}

IIviRFSigGenAnalogModulation

{47ed52eb-a398-11d4-ba58-000064657374}

IIviRFSigGenAnalogModulationSource

{47ed52ec-a398-11d4-ba58-000064657374}

IIviRFSigGenAM

{47ed52ed-a398-11d4-ba58-000064657374}

IIviRFSigGenFM

{47ed52ee-a398-11d4-ba58-000064657374}

IIviRFSigGenPM

{47ed52ef-a398-11d4-ba58-000064657374}

IIviRFSigGenPulseModulation

{47ed52f0-a398-11d4-ba58-000064657374}

IIviRFSigGenSweep

{47ed52f1-a398-11d4-ba58-000064657374}

IIviRFSigGenFrequencySweep

{47ed52f2-a398-11d4-ba58-000064657374}

IIviRFSigGenPowerSweep

{47ed52f3-a398-11d4-ba58-000064657374}

IIviRFSigGenFrequencyStep

{47ed52f4-a398-11d4-ba58-000064657374}

IIviRFSigGenPowerStep

{47ed52f5-a398-11d4-ba58-000064657374}

IIviRFSigGenList

{47ed52f6-a398-11d4-ba58-000064657374}

IIviRFSigGenIQ

{47ed52f8-a398-11d4-ba58-000064657374}

IIviRFSigGenIQImpairment

{47ed52f9-a398-11d4-ba58-000064657374}

IIviRFSigGenDigitalModulation

{47ed52f7-a398-11d4-ba58-000064657374}

IIviRFSigGenArb

{47ed52fa-a398-11d4-ba58-000064657374}

IIviRFSigGenDigitalModulationBase

{47ed52fb-a398-11d4-ba58-000064657374}

IIviRFSigGenCDMA

{47ed52fc-a398-11d4-ba58-000064657374}

IIviRFSigGenTDMA

{47ed52fd-a398-11d4-ba58-000064657374}

IVI Foundation

333

IVI-4.10 IviRFSigGen Class Specification

34.1.2 Interface Reference Properties Interface reference properties are used to navigate the IviRFSigGen COM hierarchy. This section describes the interface reference properties that the IIviRFSigGen interfaces define.

34.1.2.1

RF Data Type

Access

IIviRFSigGenRF*

RO

COM Property Name RF

Description Returns a pointer to the IiviRFSigGenRF interface.

34.1.2.2

AnalogModulation Data Type

Access

IIviRFSigGenAnalogModulation*

RO

COM Property Name AnalogModulation

Description Returns a pointer to the IiviRFSigGenAnalogModulation interface.

34.1.2.3

AnalogModulationSource Data Type

Access

IIviRFSigGenAnalogModulationSource*

RO

COM Property Name AnalogModulation.Source

Description Returns a pointer to the IiviRFSigGenAnalogModulationSource interface.

34.1.2.4

AM Data Type

Access

IIviRFSigGenAM*

RO

COM Property Name AnalogModulation.AM

IVI-4.10 IviRFSigGen Class Specification

334

IVI Foundation

Description Returns a pointer to the IiviRFSigGenAM interface.

34.1.2.5

FM Data Type

Access

IIviRFSigGenFM*

RO

COM Property Name AnalogModulation.FM

Description Returns a pointer to the IiviRFSigGenFM interface.

34.1.2.6

PM Data Type

Access

IIviRFSigGenPM*

RO

COM Property Name AnalogModulation.PM

Description Returns a pointer to the IiviRFSigGenPM interface.

34.1.2.7

PulseModulation Data Type

Access

IIviRFSigGenPulseModulation*

RO

COM Property Name PulseModulation

Description Returns a pointer to the IiviRFSigGenPulseModulation interface.

34.1.2.8

LFGenerator Data Type

Access

IIviRFSigGenLFGenerator*

RO

COM Property Name LFGenerator

Description Returns a pointer to the IiviRFSigGenLFGenerator interface. IVI Foundation

335

IVI-4.10 IviRFSigGen Class Specification

34.1.2.9

LFGeneratorOutput Data Type

Access

IIviRFSigGenLFGeneratorOutput*

RO

COM Property Name LFGenerator.Output

Description Returns a pointer to the IiviRFSigGenLFGeneratorOutput interface.

34.1.2.10

PulseGenerator Data Type

Access

IIviRFSigGenPulseGenerator*

RO

COM Property Name PulseGenerator

Description Returns a pointer to the IiviRFSigGen PulseGenerator interface.

34.1.2.11

PulseGeneratorDouble Data Type

Access

IIviRFSigGenPulseGeneratorDouble*

RO

COM Property Name PulseGenerator.Double

Description Returns a pointer to the IiviRFSigGen PulseGeneratorDouble interface.

34.1.2.12

PulseGeneratorOutput Data Type

Access

IIviRFSigGenPulseGeneratorOutput*

RO

COM Property Name PulseGenerator.Output

Description Returns a pointer to the IiviRFSigGen PulseGeneratorOutput interface.

34.1.2.13

Sweep

IVI-4.10 IviRFSigGen Class Specification

336

IVI Foundation

Data Type

Access

IIviRFSigGenSweep*

RO

COM Property Name Sweep

Description Returns a pointer to the IiviRFSigGen Sweep interface.

34.1.2.14

FrequencySweep Data Type

Access

IIviRFSigGenFrequencySweep*

RO

COM Property Name Sweep.FrequencySweep

Description Returns a pointer to the IiviRFSigGen FrequencySweep interface.

34.1.2.15

PowerSweep Data Type

Access

IIviRFSigGenPowerSweep*

RO

COM Property Name Sweep.PowerSweep

Description Returns a pointer to the IiviRFSigGen PowerSweep interface.

34.1.2.16

FrequencyStep Data Type

Access

IIviRFSigGenFrequencyStep*

RO

COM Property Name Sweep.FrequencyStep

Description Returns a pointer to the IiviRFSigGen FrequencyStep interface.

34.1.2.17

IVI Foundation

PowerStep

337

IVI-4.10 IviRFSigGen Class Specification

Data Type

Access

IIviRFSigGenPowerStep*

RO

COM Property Name Sweep.PowerStep

Description Returns a pointer to the IiviRFSigGen PowerStep interface.

34.1.2.18

List Data Type

Access

IIviRFSigGenList*

RO

COM Property Name Sweep.List

Description Returns a pointer to the IiviRFSigGen List interface.

34.1.2.19

ALC Data Type

Access

IIviRFSigGenALC*

RO

COM Property Name ALC

Description Returns a pointer to the IiviRFSigGen ALC interface.

34.1.2.20

ReferenceOscillator Data Type

Access

IIviRFSigGenReferenceOscillator*

RO

COM Property Name ReferenceOscillator

Description Returns a pointer to the IiviRFSigGen ReferenceOscillator interface.

34.1.2.21

IQ

IVI-4.10 IviRFSigGen Class Specification

338

IVI Foundation

Data Type

Access

IIviRFSigGenIQ*

RO

COM Property Name IQ

Description Returns a pointer to the IiviRFSigGen IQ interface.

34.1.2.22

IQImpairment Data Type

Access

IIviRFSigGenIQImpairment*

RO

COM Property Name IQ.Impairment

Description Returns a pointer to the IiviRFSigGen IQImpairment interface.

34.1.2.23

DigitalModulation Data Type

Access

IIviRFSigGenDigitalModulation*

RO

COM Property Name DigitalModulation

Description Returns a pointer to the IiviRFSigGen DigitalModulation interface.

34.1.2.24

ARB Data Type

Access

IIviRFSigGenArb*

RO

COM Property Name DigitalModulation.Arb

Description Returns a pointer to the IiviRFSigGen ARB interface.

34.1.2.25

IVI Foundation

DigitalModulationBase

339

IVI-4.10 IviRFSigGen Class Specification

Data Type

Access

IIviRFSigGenDigitalModulationBase*

RO

COM Property Name DigitalModulation.Base

Description Returns a pointer to the IiviRFSigGen DigitalModulationBase interface.

34.1.2.26

CDMA Data Type

Access

IIviRFSigGenCDMA*

RO

COM Property Name DigitalModulation.CDMA

Description Returns a pointer to the IiviRFSigGen CDMA interface.

34.1.2.27

TDMA Data Type

Access

IIviRFSigGenTDMA*

RO

COM Property Name DigitalModulation.TDMA

Description Returns a pointer to the IiviRFSigGen TDMA interface.

34.1.3 IviRFSigGen COM Category The IviRFSigGen class COM Category shall be “IviRFSigGen”, and the Category ID (CATID) shall be {47ed5159-a398-11d4-ba58-000064657374}.

IVI-4.10 IviRFSigGen Class Specification

340

IVI Foundation

34.2

IviRFSigGen C Function Hierarchy The IviRFSigGen class function hierarchy is shown in the following table.

Table 34-3. IviRFSigGen Function Hierarchy

Name or Class

Function Name

Configuration… RF… Configure RF

IviRFSigGen_ConfigureRF

Configure ALC Enabled

IviRFSigGen_ConfigureALCEnabled

Configure Output Enabled

IviRFSigGen_ConfigureOutputEnabled

AnalogModulation… Configure AM Enabled

IviRFSigGen_ConfigureAMEnabled

Configure AM External Coupling

IviRFSigGen_ConfigureAMExternalCoupling

Configure AM

IviRFSigGen_ConfigureAM

Configure FM Enabled

IviRFSigGen_ConfigureFMEnabled

Configure FM External Coupling

IviRFSigGen_ConfigureFMExternalCoupling

Configure FM

IviRFSigGen_ConfigureFM

Configure PM Enabled

IviRFSigGen_ConfigurePMEnabled

Configure PM External Coupling

IviRFSigGen_ConfigurePMExternalCoupling

Configure PM

IviRFSigGen_ConfigurePM

Get Analog Modulation Source Name

IviRFSigGen_GetAnalogModulationSourceName

PulseModulation… Configure Pulse Modulation Enabled

IviRFSigGen_ConfigurePulseModulationEnabled

Configure Pulse Modulation Source

IviRFSigGen_ConfigurePulseModulationSource

Configure Pulse Modulation External Polarity

IviRFSigGen_ConfigurePulseModulationExternalPo larity

LFGenerator... Configure LFGenerator

IviRFSigGen_ConfigureLFGenerator

Get LFGenerator Name

IviRFSigGen_GetLFGeneratorName

Set Active LFGenerator

IviRFSigGen_SetActiveLFGenerator

Configure LFGenerator Output

IviRFSigGen_ConfigureLFGeneratorOutput

Pulse Generator... Configure Pulse External Trigger

IviRFSigGen_ConfigurePulseExternalTrigger

Configure Pulse Internal Trigger

IviRFSigGen_ConfigurePulseInternalTrigger

Configure Pulse

IviRFSigGen_ConfigurePulse

Configure Pulse Double

IviRFSigGen_ConfigurePulseDouble

Configure Pulse Output

IviRFSigGen_ConfigurePulseOutput

IVI Foundation

341

IVI-4.10 IviRFSigGen Class Specification

Table 34-3. IviRFSigGen Function Hierarchy

Name or Class

Function Name

Sweep… Configure Sweep

IviRFSigGen_ConfigureSweep

Configure Frequency Sweep Start Stop

IviRFSigGen_ConfigureFrequencySweepStartStop

Configure Frequency Sweep Center Span

IviRFSigGen_ConfigureFrequencySweepCenterSpan

Configure Frequency Sweep Time

IviRFSigGen_ConfigureFrequencySweepTime

Configure Power Sweep Start Stop

IviRFSigGen_ConfigurePowerSweepStartStop

Configure Power Sweep Time

IviRFSigGen_ConfigurePowerSweepTime

Configure Frequency Step Start Stop

IviRFSigGen_ConfigureFrequencyStepStartStop

Configure Frequency Step Dwell

IviRFSigGen_ConfigureFrequencyStepDwell

Reset Frequency Step

IviRFSigGen_ResetFrequencyStep

Configure Power Step Start Stop

IviRFSigGen_ConfigurePowerStepStartStop

Configure Power Step Dwell

IviRFSigGen_ConfigurePowerStepDwell

Reset Power Step

IviRFSigGen_ResetPowerStep

Create Frequency List

IviRFSigGen_CreateFrequencyList

Create Power List

IviRFSigGen_CreatePowerList

Create Frequency Power List

IviRFSigGen_CreateFrequencyPowerList

Select List

IviRFSigGen_SelectList

Clear All Lists

IviRFSigGen_ClearAllLists

Configure List Dwell

IviRFSigGen_ConfigureListDwell

Reset List

IviRFSigGen_ResetList

ALC… Configure ALC

IviRFSigGen_ConfigureALC

ReferenceOscillator… Configure Reference Oscillator

IviRFSigGen_ConfigureReferenceOscillator

IQ... Configure IQ Enabled

IviRFSigGen_ConfigureIQEnabled

Configure IQ

IviRFSigGen_ConfigureIQ

Calibrate IQ

IviRFSigGen_CalibrateIQ

Configure IQ Impairment Enabled

IviRFSigGen_ConfigureIQImpairmentEnabled

Configure IQ Impairment

IviRFSigGen_ConfigureIQImpairment

ARB Generator... Configure Arb

IviRFSigGen_ConfigureArb

Write Arb Waveform

IviRFSigGen_WriteArbWaveform

Select Arb Waveform

IviRFSigGen_SelectArbWaveform

Clear All Arb Waveforms

IviRFSigGen_ClearAllArbWaveforms

Query Arb Waveform Capabilities

IviRFSigGen_QueryArbWaveformCapabilities

Configure Arb Trigger Source

IviRFSigGen_ConfigureArbTriggerSource

Configure Arb External Trigger Slope

IviRFSigGen_ConfigureArbExternalTriggerSlope

IVI-4.10 IviRFSigGen Class Specification

342

IVI Foundation

Table 34-3. IviRFSigGen Function Hierarchy

Name or Class

Function Name

Digital Modulation Base... Get DigitalModulationBase Standard Name

IviRFSigGen_GetDigitalModulationBaseStandardNa me

Select DigitalModulationBase Standard

IviRFSigGen_SelectDigitalModulationBaseStandar d

Configure DigitalModulationBase Clock Source

IviRFSigGen_ConfigureDigitalModulationBaseCloc kSource

Configure DigitalModulationBase Data Source

IviRFSigGen_ConfigureDigitalModulationBaseData Source

Configure DigitalModulationBase PRBS Type

IviRFSigGen_ConfigureDigitalModulationBasePRBS Type

Write DigitalModulationBase Bit Sequence

IviRFSigGen_WriteDigitalModulationBaseBitSeque nce

Select DigitalModulationBase Bit Sequence

IviRFSigGen_SelectDigitalModulationBaseBitSequ ence

Clear All DigitalModulationBase Bit Sequences

IviRFSigGen_ClearAllDigitalModulationBaseBitSe quences

CDMA... Get CDMA Standard Name

IviRFSigGen_GetCDMAStandardName

Select CDMA Standard

IviRFSigGen_SelectCDMAStandard

Configure CDMA Clock Source

IviRFSigGen_ConfigureCDMAClockSource

Configure CDMA Trigger Source

IviRFSigGen_ConfigureCDMATriggerSource

Configure CDMA External Trigger Slope

IviRFSigGen_ConfigureCDMAExternalTriggerSlope

Get CDMA Test Model Name

IviRFSigGen_GetCDMATestModelName

Select CDMA Test Model

IviRFSigGen_SelectCDMATestModel

TDMA... Get TDMA Standard Name

IviRFSigGen_GetTDMAStandardName

Select TDMA Standard

IviRFSigGen_SelectTDMAStandard

Configure TDMA Clock Source

IviRFSigGen_ConfigureTDMAClockSource

Configure TDMA Trigger Source

IviRFSigGen_ConfigureTDMATriggerSource

Configure TDMA External Trigger Slope

IviRFSigGen_ConfigureTDMAExternalTriggerSlope

Get TDMA Frame Name

IviRFSigGen_GetTDMAFrameName

Select TDMA Frame

IviRFSigGen_SelectTDMAFrame

Action… Disable All Modulation

IviRFSigGen_DisableAllModulation

IsSettled

IviRFSigGen_IsSettled

WaitUntilSettled

IviRFSigGen_WaitUntilSettled

Send Software Trigger

IviRFSigGen_SendSoftwareTrigger

IVI Foundation

343

IVI-4.10 IviRFSigGen Class Specification

34.3

IviRFSigGen C Attribute Hierarchy The IviRFSigGen C attribute hierarchy is shown in the following table.

Table 34-4. IviRFSigGen C Attributes Hierarchy

Category or Generic Attribute Name

C Defined Constant

RF Frequency

IVIRFSIGGEN_ATTR_FREQUENCY

Power Level

IVIRFSIGGEN_ATTR_POWER_LEVEL

ALC Enabled

IVIRFSIGGEN_ATTR_ALC_ENABLED

Output Enabled

IVIRFSIGGEN_ATTR_OUTPUT_ENABLED

Analog Modulation AM AM Enabled

IVIRFSIGGEN_ATTR_AM_ENABLED

AM Source

IVIRFSIGGEN_ATTR_AM_SOURCE

AM Scaling

IVIRFSIGGEN_ATTR_AM_SCALING

AM External Coupling

IVIRFSIGGEN_ATTR_AM_EXTERNAL_COUPLING

AM Nominal Voltage

IVIRFSIGGEN_ATTR_AM_NOMINAL_VOLTAGE

AM Depth

IVIRFSIGGEN_ATTR_AM_DEPTH

FM Enabled

IVIRFSIGGEN_ATTR_FM_ENABLED

FM Source

IVIRFSIGGEN_ATTR_FM_SOURCE

FM External Coupling

IVIRFSIGGEN_ATTR_FM_EXTERNAL_COUPLING

FM Nominal Voltage

IVIRFSIGGEN_ATTR_FM_NOMINAL_VOLTAGE

FM Deviation

IVIRFSIGGEN_ATTR_FM_DEVIATION

PM Enabled

IVIRFSIGGEN_ATTR_PM_ENABLED

PM Source

IVIRFSIGGEN_ATTR_PM_SOURCE

PM External Coupling

IVIRFSIGGEN_ATTR_PM_EXTERNAL_COUPLING

PM Nominal Voltage

IVIRFSIGGEN_ATTR_PM_NOMINAL_VOLTAGE

PM Deviation

IVIRFSIGGEN_ATTR_PM_DEVIATION

FM

PM

Source Analog Modulation Source Count

IVIRFSIGGEN_ATTR_ANALOG_MODULATION_SOURCE_COUNT

Pulse Modulation Pulse Modulation Enabled

IVIRFSIGGEN_ATTR_PULSE_MODULATION_ENABLED

Pulse Modulation Source

IVIRFSIGGEN_ATTR_PULSE_MODULATION_SOURCE

Pulse Modulation External Polarity

IVIRFSIGGEN_ATTR_PULSE_MODULATION_EXTERNAL_POLARITY

IVI-4.10 IviRFSigGen Class Specification

344

IVI Foundation

Table 34-4. IviRFSigGen C Attributes Hierarchy

Category or Generic Attribute Name

C Defined Constant

LF Generator Active LFGenerator

IVIRFSIGGEN_ATTR_ACTIVE_LF_GENERATOR

LFGenerator Count

IVIRFSIGGEN_ATTR_LF_GENERATOR_COUNT

LFGenerator Frequency

IVIRFSIGGEN_ATTR_LF_GENERATOR_FREQUENCY

LFGenerator Waveform

IVIRFSIGGEN_ATTR_LF_GENERATOR_WAVEFORM

LF Generator Outputs LFGenerator Output Amplitude

IVIRFSIGGEN_ATTR_LF_GENERATOR_OUTPUT_AMPLITUDE

LFGenerator Output Enabled

IVIRFSIGGEN_ATTR_LF_GENERATOR_OUTPUT_ENABLED

Pulse Generator Pulse Internal Trigger Period

IVIRFSIGGEN_ATTR_PULSE_INTERNAL_TRIGGER_PERIOD

Pulse Width

IVIRFSIGGEN_ATTR_PULSE_WIDTH

Pulse Gating Enabled

IVIRFSIGGEN_ATTR_PULSE_GATING_ENABLED

Pulse Trigger Source

IVIRFSIGGEN_ATTR_PULSE_TRIGGER_SOURCE

Pulse External Trigger Slope

IVIRFSIGGEN_ATTR_PULSE_EXTERNAL_TRIGGER_SLOPE

Pulse External Trigger Delay

IVIRFSIGGEN_ATTR_PULSE_EXTERNAL_TRIGGER_DELAY

Double Pulse Generators Pulse Double Enabled

IVIRFSIGGEN_ATTR_PULSE_DOUBLE_ENABLED

Pulse Double Delay

IVIRFSIGGEN_ATTR_PULSE_DOUBLE_DELAY

Pulse Generator Output Pulse Output Polarity

IVIRFSIGGEN_ATTR_PULSE_OUTPUT_POLARITY

Pulse Output Enabled

IVIRFSIGGEN_ATTR_PULSE_OUTPUT_ENABLED

Sweep Sweep Mode

IVIRFSIGGEN_ATTR_SWEEP_MODE

Sweep Trigger Source

IVIRFSIGGEN_ATTR_SWEEP_TRIGGER_SOURCE

Frequency Sweep Frequency Sweep Start

IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_START

Frequency Sweep Stop

IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_STOP

Frequency Sweep Time

IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_TIME

Power Sweep Power Sweep Start

IVIRFSIGGEN_ATTR_POWER_SWEEP_START

Power Sweep Stop

IVIRFSIGGEN_ATTR_POWER_SWEEP_STOP

Power Sweep Time

IVIRFSIGGEN_ATTR_POWER_SWEEP_TIME

Frequency Step Frequency Step Start

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_START

Frequency Step Stop

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_STOP

IVI Foundation

345

IVI-4.10 IviRFSigGen Class Specification

Table 34-4. IviRFSigGen C Attributes Hierarchy

Category or Generic Attribute Name

C Defined Constant

Frequency Step Scaling

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SCALING

Frequency Step Size

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SIZE

Frequency Step Single Step Enabled

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SINGLE_STEP_ENABLED

Frequency Step Dwell

IVIRFSIGGEN_ATTR_FREQUENCY_STEP_DWELL

Power Step Power Step Start

IVIRFSIGGEN_ATTR_POWER_STEP_START

Power Step Stop

IVIRFSIGGEN_ATTR_POWER_STEP_STOP

Power Step Size

IVIRFSIGGEN_ATTR_POWER_STEP_SIZE

Power Step Single Step Enabled

IVIRFSIGGEN_ATTR_POWER_STEP_SINGLE_STEP_ENABLED

Power Step Dwell

IVIRFSIGGEN_ATTR_POWER_STEP_DWELL

List Selected Name

IVIRFSIGGEN_ATTR_LIST_SELECTED_NAME

List Single Step Enabled

IVIRFSIGGEN_ATTR_LIST_SINGLE_STEP_ENABLED

List Dwell

IVIRFSIGGEN_ATTR_LIST_DWELL

List

ALC ALC Source

IVIRFSIGGEN_ATTR_ALC_SOURCE

ALC Bandwidth

IVIRFSIGGEN_ATTR_ALC_BANDWIDTH

Reference Oscillator Reference Oscillator Source

IVIRFSIGGEN_ATTR_REFERENCE_OSCILLATOR_SOURCE

Reference Oscillator External Frequency IVIRFSIGGEN_ATTR_REFERENCE_OSCILLATOR_EXTERNAL_FREQUENCY IQ IQ Enabled

IVIRFSIGGEN_ATTR_IQ_ENABLED

IQ Nominal Voltage

IVIRFSIGGEN_ATTR_IQ_NOMINAL_VOLTAGE

IQ Source

IVIRFSIGGEN_ATTR_IQ_SOURCE

IQ Swap Enabled

IVIRFSIGGEN_ATTR_IQ_SWAP_ENABLED

IQ Impairment IQ Impairment Enabled

IVIRFSIGGEN_ATTR_IQ_IMPAIRMENT_ENABLED

IQ I-Offset

IVIRFSIGGEN_ATTR_IQ_I_OFFSET

IQ Q-Offset

IVIRFSIGGEN_ATTR_IQ_Q_OFFSET

IQ Ratio

IVIRFSIGGEN_ATTR_IQ_RATIO

IQ Skew

IVIRFSIGGEN_ATTR_IQ_SKEW

ARB Generator Arb Clock Frequency

IVIRFSIGGEN_ATTR_ARB_CLOCK_FREQUENCY

Arb Filter Frequency

IVIRFSIGGEN_ATTR_ARB_FILTER_FREQUENCY

Waveform

IVI-4.10 IviRFSigGen Class Specification

346

IVI Foundation

Table 34-4. IviRFSigGen C Attributes Hierarchy

Category or Generic Attribute Name

C Defined Constant

Arb Selected Waveform

IVIRFSIGGEN_ATTR_ARB_SELECTED_WAVEFORM

Arb Max Number Waveforms

IVIRFSIGGEN_ATTR_ARB_MAX_NUMBER_WAVEFORMS

Arb Waveform Quantum

IVIRFSIGGEN_ATTR_ARB_WAVEFORM_QUANTUM

Arb Waveform Size Min

IVIRFSIGGEN_ATTR_ARB_WAVEFORM_SIZE_MIN

Arb Waveform Size Max

IVIRFSIGGEN_ATTR_ARB_WAVEFORM_SIZE_MAX

Trigger Arb Trigger Source

IVIRFSIGGEN_ATTR_ARB_TRIGGER_SOURCE

Arb External Trigger Slope

IVIRFSIGGEN_ATTR_ARB_EXTERNAL_TRIGGER_SLOPE

Digital Modulation DigitalModulationBase Standard Count

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_STANDARD_COUNT

DigitalModulationBase Selected Standard

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_SELECTED_STANDARD

DigitalModulationBase Data Source

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_DATA_SOURCE

DigitalModulationBase PRBS Type

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_PRBS_TYPE

DigitalModulationBase Bit Sequence

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_BIT_SEQUENCE

DigitalModulationBase Clock Source

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_CLOCK_SOURCE

DigitalModulationBase External Clock Type

IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TY PE

CDMA CDMA Standard Count

IVIRFSIGGEN_ATTR_CDMA_STANDARD_COUNT

CDMA Selected Standard

IVIRFSIGGEN_ATTR_CDMA_SELECTED_STANDARD

CDMA Test Model Count

IVIRFSIGGEN_ATTR_CDMA_TEST_MODEL_COUNT

CDMA Seleted Test Model

IVIRFSIGGEN_ATTR_CDMA_SELECTED_TEST_MODEL

CDMA Clock Source

IVIRFSIGGEN_ATTR_CDMA_CLOCK_SOURCE

Trigger CDMA Trigger Source

IVIRFSIGGEN_ATTR_CDMA_TRIGGER_SOURCE

CDMA External Trigger Slope

IVIRFSIGGEN_ATTR_CDMA_EXTERNAL_TRIGGER_SLOPE

TDMA TDMA Standard Count

IVIRFSIGGEN_ATTR_TDMA_STANDARD_COUNT

TDMA Selected Standard

IVIRFSIGGEN_ATTR_TDMA_SELECTED_STANDARD

TDMA Frame Count

IVIRFSIGGEN_ATTR_TDMA_FRAME_COUNT

TDMA Seleted Frame

IVIRFSIGGEN_ATTR_TDMA_SELECTED_FRAME

TDMA Clock Source

IVIRFSIGGEN_ATTR_TDMA_CLOCK_SOURCE

TDMA External Clock Type

IVIRFSIGGEN_ATTR_TDMA_EXTERNAL_CLOCK_TYPE

Trigger TDMA Trigger Source IVI Foundation

IVIRFSIGGEN_ATTR_TDMA_TRIGGER_SOURCE

347

IVI-4.10 IviRFSigGen Class Specification

Table 34-4. IviRFSigGen C Attributes Hierarchy

Category or Generic Attribute Name TDMA External Trigger Slope

IVI-4.10 IviRFSigGen Class Specification

C Defined Constant IVIRFSIGGEN_ATTR_TDMA_EXTERNAL_TRIGGER_SLOPE

348

IVI Foundation

Appendix A Specific Driver Development Guidelines A.1 Introduction This section describes situations driver developers should be aware of when developing a specific instrument driver that complies with the IviRFSigGen class.

A.2 Disabling Unused Extensions Specific drivers are required to disable extension capability groups that an application program does not explicitly use. The specific driver can do so by setting the attributes of an extension capability group to the values that this section recommends. A specific driver can set these values for all extension capability groups when the IViRFSigGen_init, IViRFSigGen_InitWithOptions, or IViRFSigGen reset functions execute. This assumes that the extension capability groups remain disabled until the application program explicitly uses them. For the large majority of instruments, this assumption is true. Under certain conditions, a specific driver might have to implement a more complex approach. For some instruments, configuring a capability group might affect instrument settings that correspond to an unused extension capability group. If these instrument settings affect the behavior of the instrument, then this might result in an interchangeability problem. If this can occur, the specific driver shall take appropriate action so that the instrument settings that correspond to the unused extension capability group do not affect the behavior of the instrument when the application program performs an operation that might be affected by those settings. The remainder of this section recommends attribute values that effectively disable each extension capability group. Disabling the IviRFSigGenModulateAM Extension Group Attribute values that effectively disable the IviRFSigGenModulateAM extension group are shown in the following table. This functionality is also encapsulated in the Disable All Modulation function. Table A.1. Values for Disabling the IviRFSigGenModulateAM Extension Group

Attribute

Value

AM Enabled

False

Disabling the IviRFSigGenModulateFM Extension Group Attribute values that effectively disable the IviRFSigGenModulateFM extension group are shown in the following table. This functionality is also encapsulated in the Disable All Modulation function. Table A.2. Values for Disabling the IviRFSigGenModulateFM Extension Group

Attribute

Value

FM Enabled

False

Disabling the IviRFSigGenModulatePM Extension Group Attribute values that effectively disable the IviRFSigGenModulatePM extension group are shown in the following table. This functionality is also encapsulated in the Disable All Modulation function.

IVI Foundation

349

IVI-4.10 IviRFSigGen Class Specification

Table A.3. Values for Disabling the IviRFSigGenModulatePM Extension Group

Attribute

Value

PM Enabled

False

Disabling the IviRFSigGenModulatePulse Extension Group Attribute values that effectively disable the IviRFSigGenModulatePulse extension group are shown in the following table. This functionality is also encapsulated in the Disable All Modulation function. Table A.4. Values for Disabling the IviRFSigGenModulatePulse Extension Group

Attribute

Value

Pulse Modulation Enabled

False

Disabling the IviRFSigGenLFGenerator Extension Group The IviRFSigGenLFGenerator extension group affects the instrument behavior only when its attributes are used. Therefore, this specification does not recommend attribute values that disable the IviRFSigGenLFGenerator extension group.

Disabling the IviRFSigGenLFGeneratorOutput Extension Group Attribute values that effectively disable the IviRFSigGenLFGeneratorOutput extension group are shown in the following table. Table A.5. Values for Disabling the IviRFSigGenLFGeneratorOutput Extension Group

Attribute

Value

LFGenerator Output Enabled

False

Disabling the IviRFSigGenPulseGenerator Extension Group The IviRFSigGenPulseGenerator extension group affects the instrument behavior only when its attributes are used. Therefore, this specification does not recommend attribute values that disable the IviRFSigGenPulseGenerator extension group.

Disabling the IviRFSigGenPulseDoubleGenerator Extension Group Attribute values that effectively disable the IviRFSigGenPulseDoubleGenerator extension group are shown in the following table.

IVI-4.10 IviRFSigGen Class Specification

350

IVI Foundation

Table A.6. Values for Disabling the IviRFSigGenPulseDoubleGenerator Extension Group

Attribute

Value

Pulse Double Enabled

False

Disabling the IviRFSigGenPulseGeneratorOutput Extension Group Attribute values that effectively disable the IviRFSigGenPulseGeneratorOutput extension group are shown in the following table. Table A.7. Values for Disabling the IviRFSigGenPulseGeneratorOutput Extension Group

Attribute

Value

Pulse Output Enabled

False

Disabling the IviRFSigGenSweep Extension Group Attribute values that effectively disable the IviRFSigGenSweep extension group are shown in the following table. Table A.8. Values for Disabling the IviRFSigGenSweep Extension Group

Attribute

Value

Sweep Mode

None

Disabling the IviRFSigGenFrequencySweep Extension Group Attribute values that effectively disable the IviRFSigGenFrequencySweep extension group are shown in the following table. Table A.9. Values for Disabling the IviRFSigGenFrequencySweep Extension Group

Attribute

Value

Sweep Mode

None

Disabling the IviRFSigGenPowerSweep Extension Group Attribute values that effectively disable the IviRFSigGenPowerSweep extension group are shown in the following table. Table A.10. Values for Disabling the IviRFSigGenPowerSweep Extension Group

Attribute

Value

Sweep Mode

IVI Foundation

None

351

IVI-4.10 IviRFSigGen Class Specification

Disabling the IviRFSigGenFrequencyStep Extension Group Attribute values that effectively disable the IviRFSigGenFrequencyStep extension group are shown in the following table. Table A.11. Values for Disabling the IviRFSigGenFrequencyStep Extension Group

Attribute

Value

Sweep Mode

None

Disabling the IviRFSigGenPowerStep Extension Group Attribute values that effectively disable the IviRFSigGenPowerStep extension group are shown in the following table. Table A.12. Values for Disabling the IviRFSigGenPowerStep Extension Group

Attribute

Value

Sweep Mode

None

Disabling the IviRFSigGenList Extension Group Attribute values that effectively disable the IviRFSigGenList extension group are shown in the following table. Table A.13. Values for Disabling the IviRFSigGenList Extension Group

Attribute

Value

Sweep Mode

None

Disabling the IviRFSigGenALC Extension Group Attribute values that effectively disable the IviRFSigGenALC extension group are shown in the following table. Table A.14. Values for Disabling the IviRFSigGenALC Extension Group

Attribute

Value

ALC Enabled

False

Disabling the IviRFSigGenReferenceOscillator Extension Group The IviRFSigGenReferenceOscillator extension group affects the instrument behavior only when the Reference Oscillator Source attribute is set to External. Therefore, this specification does not recommend attribute values that disable the IviRFSigGenReferenceOscillator extension group. Disabling the IviRFSigGenSoftwareTrigger Extension Group IVI-4.10 IviRFSigGen Class Specification

352

IVI Foundation

The IviRFSigGenSoftwareTrigger extension group affects the instrument behavior only when the Trigger Source attribute is set to Software Trigger. Therefore, this specification does not recommend attribute values that disable the IviRFSigGenSoftwareTrigger extension group. Disabling the IviRFSigGenModulateIQ Extension Group Attribute values that effectively disable the IviRFSigGenModulateIQ extension group are shown in the following table. This functionality is also encapsulated in the Disable All Modulation function. Table A.15. Values for Disabling the IviRFSigGenModulateIQ Extension Group

Attribute

Value

IQ Enabled

False

Disabling the IviRFSigGenIQImpairment Extension Group Attribute values that effectively disable the IviRFSigGenIQImpairment extension group are shown in the following table. Table A.16. Values for Disabling the IviRFSigGenModulateIQ Extension Group

Attribute

Value

IQ Impairment Enabled

False

Disabling the IviRFSigGenArbGenerator Extension Group The IviRFSigGenArbGenerator extension group affects the instrument behavior only when the end user calls any of its functions. Therefore, this specification does not recommend attribute values that disable the IviRFSigGenArbGenerator extension group. Disabling the IviRFSigGenDigitalModulationBase Extension Group The IviRFSigGenDigitalModulationBase extension group affects the instrument behavior only when the end user calls any of its functions. Therefore, this specification does not recommend attribute values that disable the IviRFSigGenDigitalModulationBase extension group. This functionality is also encapsulated in the Disable All Modulation function. Disabling the IviRFSigGenCDMABase Extension Group The IviRFSigGenCDMABase extension group affects the instrument behavior only when the end user calls any of its functions. Therefore, this specification does not recommend attribute values that disable the IviRFSigGenCDMABase extension group. This functionality is also encapsulated in the Disable All Modulation function. Disabling the IviRFSigGenTDMABase Extension Group The IviRFSigGenTDMABase extension group affects the instrument behavior only when the end user calls any of its functions. Therefore, this specification does not recommend attribute values that disable the IviRFSigGenTDMABase extension group. This functionality is also encapsulated in the Disable All Modulation function.

IVI Foundation

353

IVI-4.10 IviRFSigGen Class Specification

A.3 Query Instrument Status Based on the value of Query Instrument Status, the specific driver may check the status of the instrument to see if it has encountered an error.

IVI-4.10 IviRFSigGen Class Specification

354

IVI Foundation

Appendix B Interchangeability Checking Rules B.1 Introduction IVI drivers have a feature called interchangeability checking. Interchangeability checking returns a warning when it encounters a situation were the application program might not produce the same behavior when the user attempts to use a different instrument.

B.2 When to Perform Interchangeability Checking Interchangeability checking occurs when all of the following conditions are met: ?

The Interchange Check attribute is set to True

?

The user calls one of the following functions. ?

IsSettled

?

WaitforSettled

B.3 Interchangeability Checking Rules Interchangeability checking is performed on a capability group basis. When enabled, interchangeability checking is always performed on the base capability group. In addition, interchangeability checking is performed on extension capability groups for which the user has ever set any of the attributes of the group. If the user has never set any attributes of an extension capability group, interchangeability checking is not performed on that group. In general interchangeability warnings are generated if the following conditions are encountered: ?

An attribute that affects the behavior of the instrument is not in a state that the user specifies.

?

The user sets a class driver defined attribute to an instrument-specific value.

?

The user configures the value of an attribute that the class defines as read-only. In a few cases the class drivers define read-only attributes that specific drivers might implement as read/write.

The remainder of this section defines additional rules and exceptions for each capability group. IviRFSigGenBase Capability Group 1.

If the Output Enabled attribute is set to False, all other attributes in the IviRFSigGenBase extension group need not be in a user-specified state.

IviRFSigGenModulateAM Capability Group 1.

If the Output Enabled attribute is set to False, attributes in the IviRFSigGenModulateAM extension group need not be in a user-specified state.

2.

If the AM Source attribute does not include the ??external modulation source??, the AM External Coupling attribute need not be in a user specified state.

3.

If the AM Enabled attribute is set to False, all other attributes in the IviRFSigGenModulateAM extension group need not be in a user-specified state.

IVI Foundation

355

IVI-4.10 IviRFSigGen Class Specification

IviRFSigGenModulateFM Capability Group 1.

If the Output Enabled attribute is set to False, attributes in the IviRFSigGenModulateFM extension group need not be in a user-specified state.

2.

If the FM Source attribute does not include the ??external modulation source??, the FM External Coupling attribute need not be in a user specified state.

3.

If the FM Enabled attribute is set to False, all other attributes in the IviRFSigGenModulateFM extension group need not be in a user-specified state.

IviRFSigGenModulatePM Capability Group 1.

If the Output Enabled attribute is set to False, attributes in the IviRFSigGenModulatePM extension group need not be in a user-specified state.

2.

If the PM Source attribute does not include the ??external modulation source??, the PM External Coupling attribute need not be in a user specified state.

3.

If the PM Enabled attribute is set to False, all other attributes in the IviRFSigGenModulatePM extension group need not be in a user-specified state.

IviRFSigGenAnalogModulationSources Capability Group No additional interchangeability rules or exceptions are defined for the IviRFSigGenAnalogModulationSources capability group. IviRFSigGenModulatePulse Capability Group 1.

If the Output Enabled attribute is set to False, attributes in the IviRFSigGenModulatePulse extension group need not be in a user-specified state.

2.

If the Pulse Modulation Source attribute is not set to External, the Pulse Modulation External Polarity attribute need not be in a user specified state.

3.

If the Pulse Modulation Enabled attribute is set to False, all other attributes in the IviRFSigGenModulatePulse extension group need not be in a user-specified state.

IviRFSigGenLFGenerator Capability Group 1.

If the LFGenerator Output Enabled attribute is set to True OR If Output Enabled set to True AND one of the following sources includes an internal source - AM Source - FM Source - PM Source AND any of the following attributes are set to True - AM Enabled - FM Enabled - PM Enabled then the attributes in the IviRFSigGenLFGenerator extension group shall be in a user-specified state.

IVI-4.10 IviRFSigGen Class Specification

356

IVI Foundation

IviRFSigGenLFGeneratorOutput Capability Group 1.

If the LFGenerator Output Enabled attribute is set to False, the LFGenerator Output Amplitude attribute need not be in a user-specified state.

IviRFSigGenPulseGenerator Capability Group 1.

If the Pulse Output Enabled attribute is set to True OR If Output Enabled set to True AND the Pulse Generator Source is set to Internal AND the Pulse Modulation Enabled attribute is set to True, the attributes in the IviRFSigGenPulseGenerator extension group shall be in a user-specified state.

2.

If the Pulse Trigger Source attribute is not set to Internal, the Pulse Internal Trigger Period attribute and the need not be in a user-specified state.

3.

If the Pulse Trigger Source attribute is not set to External, the Pulse External Trigger Delay attribute and the Pulse External Trigger Slope attribute need not be in a user-specified state.

IviRFSigGenPulseDoubleGenerator Capability Group 1.

If the Pulse Double Enabled attribute is set to False, attributes in the IviRFSigGenPulseDoubleGenerator extension group need not be in a user-specified state.

2.

If the IviRFSigGenPulseGenerator extension group does not need to be checked for interchangeability, then attributes in the IviRFSigGenPulseDoubleGenerator extension group need not be in a user-specified state.

IviRFSigGenPulseGeneratorOutput Capability Group 1.

If the Pulse Output Enabled attribute is set to False, all other attributes in the IviRFSigGenPulseGeneratorOutput extension group need not be in a user-specified state.

IviRFSigGenSweep Capability Group 1.

If the Sweep Mode attribute is set to None, all other attributes in the IviRFSigGenSweep extension group need not be in a user-specified state.

2.

If the Output Enabled attribute is set to False, all the attributes in the IviRFSigGenSweep extension group need not be in a user-specified state.

IviRFSigGenFrequencySweep Capability Group 1.

If the Sweep Mode attribute is not set to Frequency Sweep, attributes in the IviRFSigGenFrequencySweep extension group need not be in a user-specified state.

2.

If the IviRFSigGenSweep extension group does not need to be checked for interchangeability, then attributes in the IviRFSigGenFrequencySweep extension group need not be in a user-specified state.

IviRFSigGenPowerSweep Capability Group 1.

If the Sweep Mode attribute is not set to Power Sweep, attributes in the IviRFSigGenPowerSweep extension group need not be in a user-specified state.

IVI Foundation

357

IVI-4.10 IviRFSigGen Class Specification

2.

If the IviRFSigGenSweep extension group does not need to be checked for interchangeability, then attributes in the IviRFSigGenPowerSweep extension group need not be in a user-specified state.

IviRFSigGenFrequencyStep Capability Group 1.

If the Sweep Mode attribute is not set to Frequency Step, attributes in the IviRFSigGenFrequencyStep extension group need not be in a user-specified state.

2.

If the IviRFSigGenSweep extension group does not need to be checked for interchangeability, then attributes in the IviRFSigGenFrequencyStep extension group need not be in a user-specified state.

IviRFSigGenPowerStep Capability Group 1.

If the Sweep Mode attribute is not set to Power Step, attributes in the IviRFSigGenPowerStep extension group need not be in a user-specified state.

2.

If the IviRFSigGenSweep extension group does not need to be checked for interchangeability, then attributes in the IviRFSigGenPowerStep extension group need not be in a user-specified state.

IviRFSigGenList Capability Group 1.

If the Sweep Mode attribute is not set to List, attributes in the IviRFSigGenList extension group need not be in a user-specified state.

2.

If the IviRFSigGenSweep extension group does not need to be checked for interchangeability, then attributes in the IviRFSigGenList extension group need not be in a user-specified state.

IviRFSigGenALC Capability Group 1.

If the ALC Enabled attribute is set to False, attributes in the IviRFSigGenALC extension group need not be in a user-specified state.

2.

If the Output Enabled attribute is set to False, all the attributes in the IviRFSigGenALC extension group need not be in a user-specified state.

IviRFSigGenReferenceOscillator Capability Group 1.

If the Output Enabled attribute is set to False, all the attributes in the IviRFSigGenReferenceOscillator extension group need not be in a user-specified state.

IviRFSigGenSoftwareTrigger Capability Group No additional interchangeability rules or exceptions are defined for the IviRFSigGenSoftwareTrigger capability group. IviRFSigGenModulateIQ Capability Group 1.

If the Output Enabled attribute is set to False, attributes in the IviRFSigGenModulateIQ extension group need not be in a user-specified state.

2.

If the IQ Enabled attribute is set to False, attributes in the IviRFSigGenModulateIQ extension group need not be in a user-specified state.

IVI-4.10 IviRFSigGen Class Specification

358

IVI Foundation

IviRFSigGenIQImpairment Capability Group 1.

If the IQ Impairment Enabled attribute is set to False, attributes in the IviRFSigGenIQImpairment extension group need not be in a user-specified state.

2.

If the IviRFSigGenModulateIQ extension group does not need to be checked for interchangeability, then attributes in the IviRFSigGenIQImpairment extension group need not be in a user-specified state.

IviRFSigGenArbGenerator Capability Group 1.

If the IQ Source attribute is not set to ArbGenerator, attributes in the IviRFSigGenArbGenerator extension group need not be in a user-specified state.

2.

If the Arb Trigger Source attribute is not set to External, the Arb External Trigger Slope attribute need not be in a user-specified state.

3.

If the IviRFSigGenModulateIQ extension group does not need to be checked for interchangeability, then attributes in the IviRFSigGenArbGenerator extension group need not be in a user-specified state.

IviRFSigGenDigitalModulationBase Capability Group 1.

If the Output Enabled attribute is set to False, attributes in the IviRFSigGenDigitalModulationBase extension group need not be in a user-specified state.

2.

If the IQ Source attribute is not set to DigitalModulationBase, attributes in the IviRFSigGenDigitalModulationBase extension group need not be in a user-specified state.

3.

If the DigitalModulationBase Clock Source attribute is not set to External, the External Clock Type attribute need not be in a user-specified state.

4.

If the DigitalModulationBase Data Source attribute is not set to PRBS, the DigitalModulationBase PRBS Type attribute need not be in a user-specified state.

5.

If the DigitalModulationBase Data Source attribute is not set to Bit Sequence, the DigitalModulationBase Selected Bit Sequence attribute need not be in a user-specified state.

6.

If the IviRFSigGenModulateIQ extension group does not need to be checked for interchangeability, then attributes in the IviRFSigGenDigitalModulationBase extension group need not be in a user-specified state.

IviRFSigGenCDMABase Capability Group 1.

If the Output Enabled attribute is set to False, attributes in the IviRFSigGenCDMABase extension group need not be in a user-specified state.

2.

If the IQ Source attribute is not set to CDMABase, attributes in the IviRFSigGenCDMABase extension group need not be in a user-specified state.

3.

If the CDMA Clock Source is not set to External, the CDMA External Trigger Slope attribute need not be in a user-specified state.

4.

If the IviRFSigGenModulateIQ extension group does not need to be checked for interchangeability, then attributes in the IviRFSigGenCDMABase extension group need not be in a user-specified state.

IVI Foundation

359

IVI-4.10 IviRFSigGen Class Specification

IviRFSigGenTDMABase Capability Group 1.

If the Output Enabled attribute is set to False, attributes in the IviRFSigGenTDMABase extension group need not be in a user-specified state.

2.

If the IQ Source attribute is not set to TDMABase, attributes in the IviRFSigGenTDMABase extension group need not be in a user-specified state.

3.

If the TDMA Clock Source is not set to External, the TDMA External Trigger Slope attribute need not be in a user-specified state.

4.

If the IviRFSigGenModulateIQ extension group does not need to be checked for interchangeability, then attributes in the IviRFSigGenTDMABase extension group need not be in a user-specified state.

IVI-4.10 IviRFSigGen Class Specification

360

IVI Foundation

Appendix C ANSI C Include File The C source code below provides an example of how a class driver C interface might be defined. It provides definitions only for attributes, functions, values, and status codes that this specification defines. It does not represent a complete interface for an IviRFSigGen compliant driver. To aid in the creation of an IviRFSigGencompliant specific driver, replace IVIRFSIGGEN with the actual driver prefix using uppercase characters and replace IviRFSigGen with consistent case sensitivity. /****************************************************************************** * I V I - R F S I G G E N * * Title: IviRFSigGen include file * Purpose: IviRFSigGen Class declarations for Base and Extended Capabilities. * * ******************************************************************************/ #ifndef IVIRFSIGGEN_HEADER #define IVIRFSIGGEN_HEADER #if defined(__cplusplus) || defined(__cpluplus__) extern "C" { #endif /****************************************************************************** *---------------------- IviRFSigGen Class Attribute Defines -----------------* ******************************************************************************/ /*#define #define #define #define

IviRFSigGenBase Capability Group Attributes -*/ IVIRFSIGGEN_ATTR_FREQUENCY IVIRFSIGGEN_ATTR_POWER_LEVEL IVIRFSIGGEN_ATTR_ALC_ENABLED IVIRFSIGGEN_ATTR_OUTPUT_ENABLED

/*#define #define #define #define #define #define

IviRFSigGenModulateAM Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_AM_ENABLED (IVI_CLASS_ATTR_BASE + 11) IVIRFSIGGEN_ATTR_AM_SOURCE (IVI_CLASS_ATTR_BASE + 12) IVIRFSIGGEN_ATTR_AM_SCALING (IVI_CLASS_ATTR_BASE + 13) IVIRFSIGGEN_ATTR_AM_EXTERNAL_COUPLING (IVI_CLASS_ATTR_BASE + 14) IVIRFSIGGEN_ATTR_AM_NOMINAL_VOLTAGE (IVI_CLASS_ATTR_BASE + 15) IVIRFSIGGEN_ATTR_AM_DEPTH (IVI_CLASS_ATTR_BASE + 16)

/*#define #define #define #define #define

IviRFSigGenModulateFM Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_FM_ENABLED IVIRFSIGGEN_ATTR_FM_SOURCE IVIRFSIGGEN_ATTR_FM_EXTERNAL_COUPLING IVIRFSIGGEN_ATTR_FM_NOMINAL_VOLTAGE IVIRFSIGGEN_ATTR_FM_DEVIATION

(IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE

+ + + + +

21) 22) 23) 24) 25)

/*#define #define #define #define #define

IviRFSigGenModulatePM Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_PM_ENABLED IVIRFSIGGEN_ATTR_PM_SOURCE IVIRFSIGGEN_ATTR_PM_EXTERNAL_COUPLING IVIRFSIGGEN_ATTR_PM_NOMINAL_VOLTAGE IVIRFSIGGEN_ATTR_PM_DEVIATION

(IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE

+ + + + +

31) 32) 33) 34) 35)

(IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE

+ + + +

1) 2) 3) 4)

/*- IviRFSigGenAnalogModulationSource Extension Group Attributes -*/ #define IVIRFSIGGEN_ATTR_ANALOG_MODULATION_SOURCE_COUNT (IVI_CLASS_ATTR_BASE + 41) /*#define #define #define

IviRFSigGenModulatePulse Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_PULSE_MODULATION_ENABLED (IVI_CLASS_ATTR_BASE + 51) IVIRFSIGGEN_ATTR_PULSE_MODULATION_SOURCE (IVI_CLASS_ATTR_BASE + 52) IVIRFSIGGEN_ATTR_PULSE_MODULATION_EXTERNAL_POLARITY (IVI_CLASS_ATTR_BASE + 53)

/*- IVIRFSigGenLFGenerator Extension Group Attributes -*/

IVI Foundation

361

IVI-4.10 IviRFSigGen Class Specification

#define #define #define #define

IVIRFSIGGEN_ATTR_ACTIVE_LF_GENERATOR IVIRFSIGGEN_ATTR_LF_GENERATOR_COUNT IVIRFSIGGEN_ATTR_LF_GENERATOR_FREQUENCY IVIRFSIGGEN_ATTR_LF_GENERATOR_WAVEFORM

(IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE

+ + + +

101) 102) 103) 104)

/*- IVIRFSigGenLFGeneratorOutput Extension Group Attributes -*/ #define IVIRFSIGGEN_ATTR_LF_GENERATOR_OUTPUT_AMPLITUDE (IVI_CLASS_ATTR_BASE + 111) #define IVIRFSIGGEN_ATTR_LF_GENERATOR_OUTPUT_ENABLED (IVI_CLASS_ATTR_BASE + 112) /*#define #define #define #define #define #define

IVIRFSigGenPulseGenerator Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_PULSE_INTERNAL_TRIGGER_PERIOD (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_PULSE_WIDTH (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_PULSE_GATING_ENABLED (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_PULSE_TRIGGER_SOURCE (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_PULSE_EXTERNAL_TRIGGER_SLOPE (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_PULSE_EXTERNAL_TRIGGER_DELAY (IVI_CLASS_ATTR_BASE

+ + + + + +

121) 122) 123) 124) 125) 126)

/*- IviRFSigGenPulseDoubleGenerator Extension Group Attributes -*/ #define IVIRFSIGGEN_ATTR_PULSE_DOUBLE_ENABLED (IVI_CLASS_ATTR_BASE + 131) #define IVIRFSIGGEN_ATTR_PULSE_DOUBLE_DELAY (IVI_CLASS_ATTR_BASE + 132) /*- IviRFSigGenPulseGeneratorOutput Extension Group Attributes -*/ #define IVIRFSIGGEN_ATTR_PULSE_OUTPUT_POLARITY (IVI_CLASS_ATTR_BASE + 141) #define IVIRFSIGGEN_ATTR_PULSE_OUTPUT_ENABLED (IVI_CLASS_ATTR_BASE + 142) /*- IviRFSigGenSweep Extension Group Attributes -*/ #define IVIRFSIGGEN_ATTR_SWEEP_MODE #define IVIRFSIGGEN_ATTR_SWEEP_TRIGGER_SOURCE

(IVI_CLASS_ATTR_BASE + 201) (IVI_CLASS_ATTR_BASE + 202)

/*#define #define #define

IVIRFSigGenFrequencySweep Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_START (IVI_CLASS_ATTR_BASE + 211) IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_STOP (IVI_CLASS_ATTR_BASE + 212) IVIRFSIGGEN_ATTR_FREQUENCY_SWEEP_TIME (IVI_CLASS_ATTR_BASE + 213)

/*#define #define #define

IVIRFSigGenPowerSweep Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_POWER_SWEEP_START IVIRFSIGGEN_ATTR_POWER_SWEEP_STOP IVIRFSIGGEN_ATTR_POWER_SWEEP_TIME

/*#define #define #define #define #define #define

IVIRFSigGenFrequencyStep Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_FREQUENCY_STEP_START (IVI_CLASS_ATTR_BASE + 241) IVIRFSIGGEN_ATTR_FREQUENCY_STEP_STOP (IVI_CLASS_ATTR_BASE + 242) IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SCALING (IVI_CLASS_ATTR_BASE + 243) IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SIZE (IVI_CLASS_ATTR_BASE + 244) IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SINGLE_STEP_ENABLED (IVI_CLASS_ATTR_BASE + 245) IVIRFSIGGEN_ATTR_FREQUENCY_STEP_DWELL (IVI_CLASS_ATTR_BASE + 246)

/*#define #define #define #define #define

IVIRFSigGenPowerStep Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_POWER_STEP_START IVIRFSIGGEN_ATTR_POWER_STEP_STOP IVIRFSIGGEN_ATTR_POWER_STEP_SIZE IVIRFSIGGEN_ATTR_POWER_STEP_SINGLE_STEP_ENABLED IVIRFSIGGEN_ATTR_POWER_STEP_DWELL

(IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE (IVI_CLASS_ATTR_BASE

/*#define #define #define

IVIRFSigGenList Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_LIST_SELECTED_NAME IVIRFSIGGEN_ATTR_LIST_SINGLE_STEP_ENABLED IVIRFSIGGEN_ATTR_LIST_DWELL

(IVI_CLASS_ATTR_BASE + 281) (IVI_CLASS_ATTR_BASE + 282) (IVI_CLASS_ATTR_BASE + 283)

/*- IVIRFSigGenALC Extension Group Attributes -*/ #define IVIRFSIGGEN_ATTR_ALC_SOURCE #define IVIRFSIGGEN_ATTR_ALC_BANDWIDTH

(IVI_CLASS_ATTR_BASE + 221) (IVI_CLASS_ATTR_BASE + 222) (IVI_CLASS_ATTR_BASE + 223)

+ + + + +

261) 262) 263) 264) 265)

(IVI_CLASS_ATTR_BASE + 301) (IVI_CLASS_ATTR_BASE + 302)

/*- IVIRFSigGenReferenceOscillator Extension Group Attributes -*/ #define IVIRFSIGGEN_ATTR_REFERENCE_OSCILLATOR_SOURCE (IVI_CLASS_ATTR_BASE + 321) #define IVIRFSIGGEN_ATTR_REFERENCE_OSCILLATOR_EXTERNAL_FREQUENCY (IVI_CLASS_ATTR_BASE + 322) /*- IviRFSigGenModulateIQ Extension Group Attributes -*/ #define IVIRFSIGGEN_ATTR_IQ_ENABLED

IVI-4.10 IviRFSigGen Class Specification

362

(IVI_CLASS_ATTR_BASE + 401)

IVI Foundation

#define IVIRFSIGGEN_ATTR_IQ_NOMINAL_VOLTAGE #define IVIRFSIGGEN_ATTR_IQ_SOURCE #define IVIRFSIGGEN_ATTR_IQ_SWAP_ENABLED

(IVI_CLASS_ATTR_BASE + 402) (IVI_CLASS_ATTR_BASE + 403) (IVI_CLASS_ATTR_BASE + 404)

/*#define #define #define #define #define

IviRFSigGenIQImpairment Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_IQ_IMPAIRMENT_ENABLED (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_IQ_I_OFFSET (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_IQ_Q_OFFSET (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_IQ_RATIO (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_IQ_SKEW (IVI_CLASS_ATTR_BASE

+ + + + +

421) 422) 423) 424) 425)

/*#define #define #define #define #define #define #define #define #define

IviRFSigGenARBGenerator Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_ARB_SELECTED_WAVEFORM (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_ARB_CLOCK_FREQUENCY (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_ARB_FILTER_FREQUENCY (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_ARB_MAX_NUMBER_WAVEFORMS (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_ARB_WAVEFORM_QUANTUM (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_ARB_WAVEFORM_SIZE_MIN (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_ARB_WAVEFORM_SIZE_MAX (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_ARB_TRIGGER_SOURCE (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_ARB_EXTERNAL_TRIGGER_SLOPE (IVI_CLASS_ATTR_BASE

+ + + + + + + + +

451) 452) 453) 454) 455) 456) 457) 458) 459)

/*#define #define #define #define #define #define #define

IviRFSigGenDMBaseModulation Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_STANDARD_COUNT (IVI_CLASS_ATTR_BASE + 501) IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_SELECTED_STANDARD (IVI_CLASS_ATTR_BASE + 502) IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_DATA_SOURCE (IVI_CLASS_ATTR_BASE + 503) IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_PRBS_TYPE (IVI_CLASS_ATTR_BASE + 504) IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_BIT_SEQUENCE (IVI_CLASS_ATTR_BASE + 505) IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_CLOCK_SOURCE (IVI_CLASS_ATTR_BASE + 506) IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE (IVI_CLASS_ATTR_BASE + 507)

/*#define #define #define #define #define #define #define

IviRFSigGenCDMABaseFunctionality Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_CDMA_STANDARD_COUNT (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_CDMA_SELECTED_STANDARD (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_CDMA_TRIGGER_SOURCE (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_CDMA_EXTERNAL_TRIGGER_SLOPE (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_CDMA_TEST_MODEL_COUNT (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_CDMA_SELECTED_TEST_MODEL (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_CDMA_CLOCK_SOURCE (IVI_CLASS_ATTR_BASE

+ + + + + + +

601) 602) 603) 604) 605) 606) 607)

/*#define #define #define #define #define #define #define #define

IviRFSigGenTDMABaseFunctionality Extension Group Attributes -*/ IVIRFSIGGEN_ATTR_TDMA_STANDARD_COUNT (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_TDMA_SELECTED_STANDARD (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_TDMA_TRIGGER_SOURCE (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_TDMA_EXTERNAL_TRIGGER_SLOPE (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_TDMA_FRAME_COUNT (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_TDMA_SELECTED_FRAME (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_TDMA_CLOCK_SOURCE (IVI_CLASS_ATTR_BASE IVIRFSIGGEN_ATTR_TDMA_EXTERNAL_CLOCK_TYPE (IVI_CLASS_ATTR_BASE

+ + + + + + + +

701) 702) 703) 704) 705) 706) 707) 708)

/****************************************************************************** *------------------- IviRFSigGen Class Attribute Value Defines --------------* ******************************************************************************/ /*- Defined valued for attribute IVIRFSIGGEN_ATTR_AM_SCALING -*/ #define IVIRFSIGGEN_VAL_AM_SCALING_LINEAR #define IVIRFSIGGEN_VAL_AM_SCALING_LOGARITHMIC #define IVIRFSIGGEN_VAL_AM_SCALING_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_AM_SCALING_SPECIFIC_EXT_BASE

(0) (1) (500) (1000)

/*- Defined valued for attribute IVIRFSIGGEN_ATTR_AM_EXTERNAL_COUPLING -*/ #define IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_AC #define IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_DC

(0) (1)

#define IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_AM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined valued for attribute IVIRFSIGGEN_ATTR_FM_EXTERNAL_COUPLING -*/

IVI Foundation

363

IVI-4.10 IviRFSigGen Class Specification

#define IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_AC #define IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_DC

(0) (1)

#define IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_FM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined valued for attribute IVIRFSIGGEN_ATTR_PM_EXTERNAL_COUPLING -*/ #define IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_AC #define IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_DC

(0) (1)

#define IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_PM_EXTERNAL_COUPLING_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined values for attribute IVIRFSIGGEN_ATTR_PULSE_MODULATION_SOURCE -*/ #define IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_INTERNAL #define IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_EXTERNAL

(0) (1)

#define IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_PULSE_MODULATION_SOURCE_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined values for attribute IVIRFSIGGEN_ATTR_PULSE_MODULATION_EXTERNAL_POLARITY -*/ #define IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_POLARITY_NORMAL (0) #define IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_POLARITY_INVERSE (1) #define IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_POLARITY_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_PULSE_MODULATION_EXTERNAL_POLARITY_SPECIFIC_EXT_BASE

(500) (1000)

/*#define #define #define #define #define

(0) (1) (2) (3) (4)

Defined values for attribute IVIRFSIGGEN_ATTR_LF_GENERATOR_WAVEFORM -*/ IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_SINE IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_SQUARE IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_TRIANGLE IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_RAMP_UP IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_RAMP_DOWN

#define IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_LF_GENERATOR_WAVEFORM_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined values for attribute IVIRFSIGGEN_ATTR_PULSE_TRIGGER_SOURCE -*/ #define IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_INTERNAL #define IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_EXTERNAL

(0) (1)

#define IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_PULSE_TRIGGER_SOURCE_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined values for attribute IVIRFSIGGEN_ATTR_PULSE_EXTERNAL_TRIGGER_SLOPE -*/ #define IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLOPE_POSITIVE (0) #define IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLOPE_NEGATIVE (1) #define IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLOPE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_PULSE_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined values for attribute IVIRFSIGGEN_ATTR_PULSE_OUTPUT_POLARITY -*/ #define IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_NORMAL #define IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_INVERSE

(0) (1)

#define IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_PULSE_OUTPUT_POLARITY_SPECIFIC_EXT_BASE

(500) (1000)

/*#define #define #define #define #define #define

(0) (1) (2) (3) (4) (5)

Defined values for attribute IVIRFSIGGEN_ATTR_SWEEP_MODE -*/ IVIRFSIGGEN_VAL_SWEEP_MODE_NONE IVIRFSIGGEN_VAL_SWEEP_MODE_FREQUENCY_SWEEP IVIRFSIGGEN_VAL_SWEEP_MODE_POWER_SWEEP IVIRFSIGGEN_VAL_SWEEP_MODE_FREQUENCY_STEP IVIRFSIGGEN_VAL_SWEEP_MODE_POWER_STEP IVIRFSIGGEN_VAL_SWEEP_MODE_LIST

#define IVIRFSIGGEN_VAL_SWEEP_MODE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_SWEEP_MODE_SPECIFIC_EXT_BASE

IVI-4.10 IviRFSigGen Class Specification

364

(500) (1000)

IVI Foundation

/*#define #define #define

Defined values for attribute IVIRFSIGGEN_ATTR_SWEEP_TRIGGER_SOURCE -*/ IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_IMMEDIATE IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_EXTERNAL IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_SOFTWARE

#define IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_SWEEP_TRIGGER_SOURCE_SPECIFIC_EXT_BASE

(0) (1) (2) (500) (1000)

/*- Defined values for attribute IVIRFSIGGEN_ATTR_FREQUENCY_STEP_SCALING -*/ #define IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_LINEAR #define IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_LOGARITHMIC

(0) (1)

#define IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_FREQUENCY_STEP_SCALING_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined values for attribute IVIRFSIGGEN_ATTR_ALC_SOURCE -*/ #define IVIRFSIGGEN_VAL_ALC_SOURCE_INTERNAL #define IVIRFSIGGEN_VAL_ALC_SOURCE_EXTERNAL

(0) (1)

#define IVIRFSIGGEN_VAL_ALC_SOURCE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_ALC_SOURCE_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined values for attribute IVIRFSIGGEN_ATTR_REFERENCE_OSCILLATOR_SOURCE -*/ #define IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_INTERNAL (0) #define IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_EXTERNAL (1) #define IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_REFERENCE_OSCILLATOR_SOURCE_SPECIFIC_EXT_BASE

(500) (1000)

/*#define #define #define #define #define

(0) (1) (2) (3) (4)

Defined values for attribute IVIRFSIGGEN_ATTR_IQ_SOURCE -*/ IVIRFSIGGEN_VAL_IQ_SOURCE_DIGITAL_MODULATION_BASE IVIRFSIGGEN_VAL_IQ_SOURCE_CDMA_BASE IVIRFSIGGEN_VAL_IQ_SOURCE_TDMA_BASE IVIRFSIGGEN_VAL_IQ_SOURCE_ARB_GENERATOR IVIRFSIGGEN_VAL_IQ_SOURCE_EXTERNAL

#define IVIRFSIGGEN_VAL_IQ_SOURCE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_IQ_SOURCE_SPECIFIC_EXT_BASE

(500) (1000)

/*#define #define #define

(0) (1)

Defined valued for attribute IVIRFSIGGEN_ATTR_ARB_TRIGGER_SOURCE -*/ IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_IMMEDIATE IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_EXTERNAL IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_SOFTWARE (2)

#define IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_ARB_TRIGGER_SOURCE_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined valued for attribute IVIRFSIGGEN_ATTR_ARB_EXTERNAL_TRIGGER_SLOPE -*/ #define IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE_POSITIVE (0) #define IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE_NEGATIVE (1) #define IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_ARB_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE /*#define #define #define #define #define

(500) (1000)

Defined valued for attribute IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_DATA_SOURCE -*/ IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOURCE_EXTERNAL (0) IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOURCE_PRBS (1) IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOURCE_BIT_SEQUENCE (2) IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOURCE_CLASS_EXT_BASE (500) IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_DATA_SOURCE_SPECIFIC_EXT_BASE (1000)

/*- Defined valued for attribute IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_PRBS_TYPE -*/ #define IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_PRBS9 (0) #define IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE PRBS_TYPE_PRBS11 (1) #define IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_PRBS15 (2) #define IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_PRBS16 (3) #define IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_PRBS20 (4) #define IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_PRBS21 (5)

IVI Foundation

365

IVI-4.10 IviRFSigGen Class Specification

#define IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_PRBS23 #define IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_PRBS_TYPE_SPECIFIC_EXT_BASE

(6) (500) (1000)

/*#define #define #define #define

Defined valued for attribute IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_CLOCK_SOURCE -*/ IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CLOCK_SOURCE_INTERNAL (0) IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CLOCK_SOURCE_EXTERNAL (1) IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CLOCK_SOURCE_CLASS_EXT_BASE (500) IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_CLOCK_SOURCE_SPECIFIC_EXT_BASE (1000)

/**/ #define #define #define #define

Defined valued for attribute IVIRFSIGGEN_ATTR_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE -

/*#define #define #define

Defined valued for attribute IVIRFSIGGEN_ATTR_CDMA_TRIGGER_SOURCE -*/ IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_IMMEDIATE IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_EXTERNAL IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_SOFTWARE

IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_BIT IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_SYMBOL IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_CLASS_EXT_BASE IVIRFSIGGEN_VAL_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_SPECIFIC_EXT_BASE

(0) (1) (500) (1000)

(0) (1) (2)

#define IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_CDMA_TRIGGER_SOURCE_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined valued for attribute IVIRFSIGGEN_ATTR_CDMA_TRIGGER_EXTERNAL_SLOPE -*/ #define IVIRFSIGGEN_VAL_CDMA_EXTERNAL_TRIGGER_SLOPE_POSITIVE (0) #define IVIRFSIGGEN_VAL_CDMA_EXTERNAL_TRIGGER_SLOPE_NEGATIVE (1) #define IVIRFSIGGEN_VAL_CDMA_EXTERNAL_TRIGGER_SLOPE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_CDMA_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined valued for attribute IVIRFSIGGEN_ATTR_CDMA_CLOCK_SOURCE -*/ #define IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_INTERNAL #define IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_EXTERNAL

(0) (1)

#define IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_CDMA_CLOCK_SOURCE_SPECIFIC_EXT_BASE

(500) (1000)

/*#define #define #define

Defined valued for attribute IVIRFSIGGEN_ATTR_TDMA_TRIGGER_SOURCE -*/ IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_IMMEDIATE IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_EXTERNAL IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_SOFTWARE

(0) (1) (2)

#define IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_TDMA_TRIGGER_SOURCE_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined valued for attribute IVIRFSIGGEN_ATTR_TDMA_TRIGGER_EXTERNAL_SLOPE -*/ #define IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOPE_POSITIVE #define IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOPE_NEGATIVE

(0) (1)

#define IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOPE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_TDMA_EXTERNAL_TRIGGER_SLOPE_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined valued for attribute IVIRFSIGGEN_ATTR_TDMA_CLOCK_SOURCE -*/ #define IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_INTERNAL #define IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_EXTERNAL

(0) (1)

#define IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_TDMA_CLOCK_SOURCE_SPECIFIC_EXT_BASE

(500) (1000)

/*- Defined valued for attribute IVIRFSIGGEN_ATTR_TDMA_EXTERNAL_CLOCK_TYPE -*/ #define IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_BIT #define IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_SYMBOL

(0) (1)

#define IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_CLASS_EXT_BASE #define IVIRFSIGGEN_VAL_TDMA_EXTERNAL_CLOCK_TYPE_SPECIFIC_EXT_BASE

(500) (1000)

/******************************************************************************

IVI-4.10 IviRFSigGen Class Specification

366

IVI Foundation

*----------- IviRFSigGen Class Instrument Driver Function Declarations ------* ******************************************************************************/ /*- IviRFSigGenBase Capability Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureRF (ViSession Vi, ViReal64 Frequency, ViReal64 PowerLevel); ViStatus _VI_FUNC IviRFSigGen_ConfigureALCEnabled (ViSession Vi, ViBoolean ALCEnabled); ViStatus _VI_FUNC IviRFSigGen_ConfigureOutputEnabled (ViSession Vi, ViBoolean OutputEnabled); ViStatus _VI_FUNC IviRFSigGen_DisableAllModulation (ViSession Vi); ViStatus _VI_FUNC IviRFSigGen_IsSettled (ViSession Vi, ViBoolean * Done); ViStatus _VI_FUNC IviRFSigGen_WaitUntilSettled (ViSession Vi, ViInt32 MaxTimeMilliseconds); /*- IviRFSigGenModulateAM Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureAMEnabled (ViSession Vi, ViBoolean Enabled); ViStatus _VI_FUNC IviRFSigGen_ConfigureAMExternalCoupling (ViSession Vi, ViInt32 Coupling); ViStatus _VI_FUNC IviRFSigGen_ConfigureAM (ViSession Vi, ViConstString Source, ViInt32 Scaling, ViReal64 Depth); /*- IviRFSigGenModulateFM Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureFMEnabled (ViSession Vi, ViBoolean Enabled); ViStatus _VI_FUNC IviRFSigGen_ConfigureFMExternalCoupling (ViSession Vi, ViInt32 Coupling); ViStatus _VI_FUNC IviRFSigGen_ConfigureFM (ViSession Vi, ViConstString Source, ViReal64 Deviation); /*- IviRFSigGenModulatePM Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigurePMEnabled (ViSession Vi, ViBoolean Enabled); ViStatus _VI_FUNC IviRFSigGen_ConfigurePMExternalCoupling (ViSession Vi, ViInt32 Coupling); ViStatus _VI_FUNC IviRFSigGen_ConfigurePM (ViSession Vi, ViConstString Source, ViReal64 Deviation); /*- IviRFSigGenModulationSource Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_GetAnalogModulationSourceName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]); /*- IviRFSigGenModulatePulse Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigurePulseModulationEnabled (ViSession Vi, ViBoolean Enabled); ViStatus _VI_FUNC IviRFSigGen_ConfigurePulseModulationSource (ViSession Vi, ViConstString Source);

IVI Foundation

367

IVI-4.10 IviRFSigGen Class Specification

ViStatus _VI_FUNC IviRFSigGen_ConfigurePulseModulationExternalPolarity (ViSession Vi, ViInt32 Polarity); /*- IviRFSigGenLFGenerator Extension Group -*/ ViStatus _VIFUNC IviRFSigGen_GetLFGeneratorName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]); ViStatus _VIFUNC IviRFSigGen_SetActiveLFGenerator (ViSession Vi, ViConstString ActiveLFGenerator);

ViStatus _VI_FUNC IviRFSigGen_ConfigureLFGenerator (ViSession Vi, ViReal64 LFGeneratorFrequency, ViInt32 LFGeneratorWaveform); /*- IviRFSigGenLFGeneratorOutput Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureLFGeneratorOutput (ViSession Vi, ViReal64 Amplitude, ViBoolean Enabled); /*- IviRFSigGenPulseGenerator Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigurePulseExternalTrigger (ViSession Vi, ViInt32 Slope, ViReal64 Delay); ViStatus _VI_FUNC IviRFSigGen_ConfigurePulseInternalTrigger (ViSession Vi, ViReal64 Period); ViStatus _VI_FUNC IviRFSigGen_ConfigurePulse (ViSession Vi, ViInt32 PulseTriggerSource, ViReal64 PulseWidth, ViBoolean GatingEnabled); /*- IviRFSigGenPulseDoubleGenerator Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigurePulseDouble (ViSession Vi, ViBoolean Enabled, ViReal64 Delay) /*- IviRFSigGenPulseGeneratorOutput Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigurePulseOutput (ViSession Vi, ViInt32 Polarity, ViBoolean Enabled) /*- IviRFSigGenSweep Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureSweep (ViSession Vi, ViInt32 Mode, ViInt32 TriggerSource); /*- IviRFSigGenFrequencySweep Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureFrequencySweepStartStop (ViSession Vi, ViReal64 Start, ViReal64 Stop); ViStatus _VI_FUNC IviRFSigGen_ConfigureFrequencySweepCenterSpan (ViSession Vi, ViReal64 Center, ViReal64 Span); ViStatus _VI_FUNC IviRFSigGen_ConfigureFrequencySweepTime (ViSession Vi, ViReal64 Time); /*- IviRFSigGenPowerSweep Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigurePowerSweepStartStop (ViSession Vi, ViReal64 Start, ViReal64 Stop); ViStatus _VI_FUNC IviRFSigGen_ConfigurePowerSweepTime (ViSession Vi, ViReal64 Time);

IVI-4.10 IviRFSigGen Class Specification

368

IVI Foundation

/*- IviRFSigGenFrequencyStep Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureFrequencyStepStartStop (ViSession Vi, ViReal64 Start, ViReal64 Stop, ViInt32 Scaling, ViReal64 StepSize); ViStatus _VI_FUNC IviRFSigGen_ConfigureFrequencyStepDwell (ViSession Vi, ViBoolean SingleStepEnabled, ViReal64 Dwell); ViStatus _VI_FUNC IviRFSigGen_ResetFrequencyStep (ViSession Vi); /*- IviRFSigGenPowerStep Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigurePowerStepStartStop (ViSession Vi, ViReal64 Start, ViReal64 Stop, ViReal64 StepSize); ViStatus _VI_FUNC IviRFSigGen_ConfigurePowerStepDwell (ViSession Vi, ViBoolean SingleStepEnabled, ViReal64 Dwell); ViStatus _VI_FUNC IviRFSigGen_ResetPowerStep (ViSession Vi); /*- IviRFSigGenList Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_CreateFrequencyList (ViSession Vi, ViConstString Name, ViInt32 Length, ViReal64 Frequency[]); ViStatus _VI_FUNC IviRFSigGen_CreatePowerList (ViSession Vi, ViConstString Name, ViInt32 Length, ViReal64 Power[]); ViStatus _VI_FUNC IviRFSigGen_CreateFrequencyPowerList (ViSession Vi, ViConstString Name, ViInt32 Length, ViReal64 Frequency[], ViReal64 Power[]); ViStatus _VI_FUNC IviRFSigGen_SelectList (ViSession Vi, ViConstString Name); ViStatus _VI_FUNC IviRFSigGen_ClearAllLists (ViSession Vi); ViStatus _VI_FUNC IviRFSigGen_ConfigureListDwell (ViSession Vi, ViBoolean SingleStepEnabled, ViReal64 Dwell); ViStatus _VI_FUNC IviRFSigGen_ResetList (ViSession Vi); /*- IviRFSigGenALC Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureALC (ViSession Vi, ViInt32 Source, ViReal64 Bandwidth); /*- IviRFSigGenReferenceOscillator Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureReferenceOscillator (ViSession Vi, ViInt32 Source, ViReal64 Frequency); /*- IviRFSigGenSoftwareTrigger Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_SendSoftwareTrigger (ViSession Vi); /*- IviRFSigGenModulateIQ Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureIQEnabled (ViSession Vi,

IVI Foundation

369

IVI-4.10 IviRFSigGen Class Specification

ViBoolean Enabled); ViStatus _VI_FUNC IviRFSigGen_ConfigureIQ (ViSession Vi, ViInt32 Source, ViBoolean SwapEnabled); ViStatus _VI_FUNC IviRFSigGen_CalibrateIQ (ViSession Vi); /*- IviRFSigGenIQImpairment Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureIQImpairmentEnabled (ViSession Vi, ViBoolean Enabled); ViStatus _VI_FUNC IviRFSigGen_ConfigureIQImpairment (ViSession Vi, ViReal64 IOffset, ViReal64 QOffset, ViReal64 Ratio, ViReal64 Skew); /*- IviRFSigGenArbGenerator Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_ConfigureArb (ViSession Vi, ViReal64 ClockFrequency, ViReal64 FilterFrequency); ViStatus _VI_FUNC IviRFSigGen_WriteArbWaveform (ViSession Vi, ViConstString Name, ViInt32 NumberOfSamples, ViReal64 IData[], ViReal64 QData[], ViBoolean MoreDataPending); ViStatus _VI_FUNC IviRFSigGen_SelectArbWaveform (ViSession Vi, ViConstString Name); ViStatus _VI_FUNC IviRFSigGen_ClearAllArbWaveforms (ViSession Vi); ViStatus _VI_FUNC IviRFSigGen_QueryArbWaveformCapabilities (ViSession Vi, ViInt32 *MaxNumberWaveforms, ViInt32 *WaveformQuantum, ViInt32 *MinWaveformSize, ViInt32 *MaxWaveformSize); ViStatus _VI_FUNC IviRFSigGen_ConfigureArbTriggerSource (ViSession Vi, ViInt32 Source); ViStatus _VI_FUNC IviRFSigGen_ConfigureArbTriggerExternalSlope (ViSession Vi, ViInt32 Slope); /*- IviRFSigGenDigitalModulationBase Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_GetDigitalModulationBaseStandardName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]); ViStatus _VI_FUNC IviRFSigGen_SelectDigitalModulationBaseStandard (ViSession Vi, ViConstString Name); ViStatus _VI_FUNC IviRFSigGen_ConfigureDigitalModulationBaseClockSource (ViSession Vi, ViInt32 Source, ViInt32 Type); ViStatus _VI_FUNC IviRFSigGen_ConfigureDigitalModulationBaseDataSource (ViSession Vi, ViInt32 Source); ViStatus _VI_FUNC IviRFSigGen_ConfigureDigitalModulationBasePRBSType (ViSession Vi, ViInt32 Type); ViStatus _VI_FUNC IviRFSigGen_WriteDigitalModulationBaseBitSequence (ViSession Vi, ViConstString Name, ViInt32 BitCount,

IVI-4.10 IviRFSigGen Class Specification

370

IVI Foundation

ViChar Sequence[], ViBoolean MoreDataPending); ViStatus _VI_FUNC IviRFSigGen_SelectDigitalModulationBaseBitSequence (ViSession Vi, ViConstString Name); ViStatus _VI_FUNC IviRFSigGen_ClearAllDigitalModulationBaseBitSequences (ViSession Vi); /*- IviRFSigGenCDMABaseFunctionality Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_GetCDMAStandardName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]); ViStatus _VI_FUNC IviRFSigGen_SelectCDMAStandard (ViSession Vi, ViConstString Name); ViStatus _VI_FUNC IviRFSigGen_ConfigureCDMAClockSource (ViSession Vi, ViInt32 Source); ViStatus _VI_FUNC IviRFSigGen_ConfigureCDMATriggerSource (ViSession Vi, ViInt32 Source); ViStatus _VI_FUNC IviRFSigGen_ConfigureCDMAExternalTriggerSlope (ViSession Vi, ViInt32 Slope); ViStatus _VI_FUNC IviRFSigGen_GetCDMATestModelName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]); ViStatus _VI_FUNC IviRFSigGen_SelectCDMATestModel (ViSession Vi, ViConstString Name); /*- IviRFSigGenTDMABaseFunctionality Extension Group -*/ ViStatus _VI_FUNC IviRFSigGen_GetTDMAStandardName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]); ViStatus _VI_FUNC IviRFSigGen_SelectTDMAStandard (ViSession Vi, ViConstString Name); ViStatus _VI_FUNC IviRFSigGen_ConfigureTDMAClockSource (ViSession Vi, ViInt32 Source, ViInt32 Type); ViStatus _VI_FUNC IviRFSigGen_ConfigureTDMAFrameTriggerSource (ViSession Vi, ViInt32 Source); ViStatus _VI_FUNC IviRFSigGen_ConfigureTDMAExternalTriggerSlope (ViSession Vi, ViInt32 Slope); ViStatus _VI_FUNC IviRFSigGen_GetTDMAFrameName (ViSession Vi, ViInt32 Index, ViInt32 NameBufferSize, ViChar Name[]); ViStatus _VI_FUNC IviRFSigGen_SelectTDMAFrame (ViSession Vi, ViConstString Name); /****************************************************************************** *----------------- IviRFSigGen Class Error And Completion Codes -------------* ******************************************************************************/ #define IVIRFSIGGEN_ERROR_TRIGGER_NOT_SOFTWARE (IVI_SHARED_COMPONENT_ERROR_BASE + 1) #define IVIRFSIGGEN_ERROR_MAX_TIME_EXCEEDED (IVI_CLASS_ERROR_BASE + 3) #define IVIRFSIGGEN_ERROR_LIST_UNKNOWN (IVI_CLASS_ERROR_BASE + 10) /****************************************************************************** *----------------------------- End Include File -----------------------------*

IVI Foundation

371

IVI-4.10 IviRFSigGen Class Specification

******************************************************************************/ #if defined(__cplusplus) || defined(c__plusplus) } #endif #endif /* IVIRFSIGGEN_HEADER */

IVI-4.10 IviRFSigGen Class Specification

372

IVI Foundation

Appendix D COM IDL File To ease the development of a compliant IVI-COM driver for the IviRFSigGen class, the IVI Foundation publishes IDL (Interface Description Language) files that consolidate all the method and property definitions listed in this specification. Notice that the interface IIviRFSigGen derives from IiviDriver, It is described in IVI-3.2: Inherent Capabilities Specification. These files along with these definitions compiled into type libraries are available from the IVI Foundation web site at http://www.ivifoundation.org/.

D.1 IviRFSigGenTypeLib.idl #if !defined(IVI_RFSIGGEN_TYPELIB_IDL_INCLUDED_) #define IVI_RFSIGGEN_TYPELIB_IDL_INCLUDED_ /***************************************************************************** * * (C) COPYRIGHT INTERCHANGEABLE VIRTUAL INSTRUMENTS FOUNDATION, 2001,2002 * All rights reserved. * * * FILENAME : IviDriverTypeLib.idl * * STATUS : APPROVED. * COMPILER : MSVC++ 6.0, sp4 C++ compiler * CONTENT : IVI RFSigGen Standard IDL * type library definition * *****************************************************************************/

import "oaidl.idl"; import "ocidl.idl";

[ uuid(47ed5127-a398-11d4-ba58-000064657374), version(1.0), helpstring("IviRFSigGen 1.0 Type Library"), helpfile("IviRFSigGen.chm") ] library IviRFSigGenLib { importlib("stdole32.tlb"); importlib("stdole2.tlb"); #include "IviRfSigGen.idl" }; #endif // !defined(IVI_RFSIGGEN_TYPELIB_IDL_INCLUDED_)

D.2 IviRFSigGen.idl #if !defined(IVI_RFSIGGEN_IDL_INCLUDED_) #define IVI_RFSIGGEN_IDL_INCLUDED_ /***************************************************************************** * * (C) COPYRIGHT INTERCHANGEABLE VIRTUAL INSTRUMENTS FOUNDATION, 2001,2002 * All rights reserved. * * * FILENAME: IviRFSigGen.idl *

IVI Foundation

373

IVI-4.10 IviRFSigGen Class Specification

* STATUS: APPROVED. * COMPILER: MSVC++ 6.0 MIDL compiler * CONTENT: IVI RFSigGen Standard IDL * *****************************************************************************/

#include <winerror.h> import "oaidl.idl"; import "ocidl.idl"; #ifdef IVI_USE_IMPORT import"..\IviDriverTypeLib\IviDriver.idl"; #else importlib ("..\TypeLibraries\IviDriverTypeLib.dll"); #endif

//----------------------------------------------------------------------------// Preprocessor Macros //----------------------------------------------------------------------------#define HELP_RFSIGGEN(x)

helpstring(HS_RFSIGGEN_ ## x ## ), helpcontext(HC_RFSIGGEN_ ## x ## )

//----------------------------------------------------------------------------// Provides for Localization //----------------------------------------------------------------------------#include "IviRFSigGenEnglish.idl"

//----------------------------------------------------------------------------// Interface Declarations //----------------------------------------------------------------------------interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface interface #define #define #define #define

IIviRFSigGen; IIviRFSigGenRF; IIviRFSigGenALC; IIviRFSigGenReferenceOscillator; IIviRFSigGenLFGenerator; IIviRFSigGenLFGeneratorOutput; IIviRFSigGenPulseGenerator; IIviRFSigGenPulseGeneratorDouble; IIviRFSigGenPulseGeneratorOutput; IIviRFSigGenAnalogModulation; IIviRFSigGenAnalogModulationSource; IIviRFSigGenAM; IIviRFSigGenFM; IIviRFSigGenPM; IIviRFSigGenPulseModulation; IIviRFSigGenSweep; IIviRFSigGenFrequencySweep; IIviRFSigGenPowerSweep; IIviRFSigGenFrequencyStep; IIviRFSigGenPowerStep; IIviRFSigGenList; IIviRFSigGenDigitalModulation; IIviRFSigGenIQ; IIviRFSigGenIQImpairment; IIviRFSigGenArb; IIviRFSigGenDigitalModulationBase; IIviRFSigGenTDMA; IIviRFSigGenCDMA;

UUID_IIVI_RFSIGGEN UUID_IIVI_RFSIGGEN_RF UUID_IIVI_RFSIGGEN_ALC UUID_IIVI_RFSIGGEN_REFERENCE_OSCILLATOR

IVI-4.10 IviRFSigGen Class Specification

374

47ed52e2-a398-11d4-ba58-000064657374 47ed52e3-a398-11d4-ba58-000064657374 47ed52e4-a398-11d4-ba58-000064657374 47ed52e5-a398-11d4-ba58-000064657374

IVI Foundation

#define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define

UUID_IIVI_RFSIGGEN_LFGENERATOR UUID_IIVI_RFSIGGEN_LFGENERATOR_OUTPUT UUID_IIVI_RFSIGGEN_PULSE_GENERATOR UUID_IIVI_RFSIGGEN_PULSE_GENERATOR_DOUBLE UUID_IIVI_RFSIGGEN_PULSE_GENERATOR_OUTPUT UUID_IIVI_RFSIGGEN_ANALOG_MODULATION UUID_IIVI_RFSIGGEN_ANALOG_MODULATION_SOURCE UUID_IIVI_RFSIGGEN_AM UUID_IIVI_RFSIGGEN_FM UUID_IIVI_RFSIGGEN_PM UUID_IIVI_RFSIGGEN_PULSE_MODULATION UUID_IIVI_RFSIGGEN_SWEEP UUID_IIVI_RFSIGGEN_FREQUENCY_SWEEP UUID_IIVI_RFSIGGEN_POWER_SWEEP UUID_IIVI_RFSIGGEN_FREQUENCY_STEP UUID_IIVI_RFSIGGEN_POWER_STEP UUID_IIVI_RFSIGGEN_LIST UUID_IIVI_RFSIGGEN_DIGITAL_MODULATION UUID_IIVI_RFSIGGEN_IQ UUID_IIVI_RFSIGGEN_IQ_IMPAIRMENT UUID_IIVI_RFSIGGEN_ARB UUID_IIVI_RFSIGGEN_DIGITAL_MODULATION_BASE UUID_IIVI_RFSIGGEN_CDMA UUID_IIVI_RFSIGGEN_TDMA

47ed52e6-a398-11d4-ba58-000064657374 47ed52e7-a398-11d4-ba58-000064657374 47ed52e8-a398-11d4-ba58-000064657374 47ed52e9-a398-11d4-ba58-000064657374 47ed52ea-a398-11d4-ba58-000064657374 47ed52eb-a398-11d4-ba58-000064657374 47ed52ec-a398-11d4-ba58-000064657374 47ed52ed-a398-11d4-ba58-000064657374 47ed52ee-a398-11d4-ba58-000064657374 47ed52ef-a398-11d4-ba58-000064657374 47ed52f0-a398-11d4-ba58-000064657374 47ed52f1-a398-11d4-ba58-000064657374 47ed52f2-a398-11d4-ba58-000064657374 47ed52f3-a398-11d4-ba58-000064657374 47ed52f4-a398-11d4-ba58-000064657374 47ed52f5-a398-11d4-ba58-000064657374 47ed52f6-a398-11d4-ba58-000064657374 47ed52f7-a398-11d4-ba58-000064657374 47ed52f8-a398-11d4-ba58-000064657374 47ed52f9-a398-11d4-ba58-000064657374 47ed52fa-a398-11d4-ba58-000064657374 47ed52fb-a398-11d4-ba58-000064657374 47ed52fc-a398-11d4-ba58-000064657374 47ed52fd-a398-11d4-ba58-000064657374

//------------------------------------------------------------------------// TYPEDEF ENUMS //------------------------------------------------------------------------[ HELP_RFSIGGEN(HRESULTS) ] typedef enum IviRFSigGenErrorCodesEnum { E_IVIRFSIGGEN_TRIGGER_NOT_SOFTWARE = MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x1001), E_IVIRFSIGGEN_MAX_TIME_EXCEEDED = MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x2003), E_IVIRFSIGGEN_LIST_UNKNOWN = MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x200A), } IviRFSigGenErrorCodesEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenMaxTimeMillisecondsEnum //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(MAX_TIME_MILLISECONDS_ENUM) ] typedef enum IviRFSigGenMaxTimeMillisecondsEnum { IviRFSigGenMaxTimeMillisecondsInfinite = 0xFFFFFFFFUL, IviRFSigGenMaxTimeMillisecondsImmediate = 0 } IviRFSigGenMaxTimeMillisecondsEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenSweepMode //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(SWEEP_MODE_ENUM) ] typedef enum IviRFSigGenSweepModeEnum { IviRFSigGenSweepModeNone = 0, IviRFSigGenSweepModeFrequencySweep = 1,

IVI Foundation

375

IVI-4.10 IviRFSigGen Class Specification

IviRFSigGenSweepModePowerSweep IviRFSigGenSweepModeFrequencyStep IviRFSigGenSweepModePowerStep IviRFSigGenSweepModeList } IviRFSigGenSweepModeEnum;

= = = =

2, 3, 4, 5,

//----------------------------------------------------------------------------// enum: IviRFSigGenALCSource //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(ALC_SOURCE_ENUM) ] typedef enum IviRFSigGenALCSourceEnum { IviRFSigGenALCSourceInternal = 0, IviRFSigGenALCSourceExternal = 1, } IviRFSigGenALCSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenReferenceOscillatorSource //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(REFERENCE_OSCILLATOR_SOURCE_ENUM) ] typedef enum IviRFSigGenReferenceOscillatorSourceEnum { IviRFSigGenReferenceOscillatorSourceInternal = 0, IviRFSigGenReferenceOscillatorSourceExternal = 1, } IviRFSigGenReferenceOscillatorSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenLFGeneratorWaveform //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(LFGENERATOR_WAVEFORM_ENUM) ] typedef enum IviRFSigGenLFGeneratorWaveformEnum { IviRFSigGenLFGeneratorWaveformSine = IviRFSigGenLFGeneratorWaveformSquare = IviRFSigGenLFGeneratorWaveformTriangle = IviRFSigGenLFGeneratorWaveformRampUp = IviRFSigGenLFGeneratorWaveformRampDown = } IviRFSigGenLFGeneratorWaveformEnum;

0, 1, 2, 3, 4,

//----------------------------------------------------------------------------// enum: IviRFSigGenAMScaling //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(AM_SCALING_ENUM) ] typedef enum IviRFSigGenAMScalingEnum {

IVI-4.10 IviRFSigGen Class Specification

376

IVI Foundation

IviRFSigGenAMScalingLinear IviRFSigGenAMScalingLogarithmic } IviRFSigGenAMScalingEnum;

= 0, = 1,

//----------------------------------------------------------------------------// enum: IviRFSigGenAMExternalCoupling //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(AM_EXTERNAL_COUPLING_ENUM) ] typedef enum IviRFSigGenAMExternalCouplingEnum { IviRFSigGenAMExternalCouplingAC = 0, IviRFSigGenAMExternalCouplingDC = 1, } IviRFSigGenAMExternalCouplingEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenFMExternalCoupling //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(FM_EXTERNAL_COUPLING_ENUM) ] typedef enum IviRFSigGenFMExternalCouplingEnum { IviRFSigGenFMExternalCouplingAC = 0, IviRFSigGenFMExternalCouplingDC = 1, } IviRFSigGenFMExternalCouplingEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenPMExternalCoupling //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(PM_EXTERNAL_COUPLING_ENUM) ] typedef enum IviRFSigGenPMExternalCouplingEnum { IviRFSigGenPMExternalCouplingAC = 0, IviRFSigGenPMExternalCouplingDC = 1, } IviRFSigGenPMExternalCouplingEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenPulseExternalTriggerSlope //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(PULSE_EXTERNAL_TRIGGER_SLOPE_ENUM) ] typedef enum IviRFSigGenPulseExternalTriggerSlopeEnum { IviRFSigGenPulseExternalTriggerSlopePositive = 0, IviRFSigGenPulseExternalTriggerSlopeNegative = 1, } IviRFSigGenPulseExternalTriggerSlopeEnum;

IVI Foundation

377

IVI-4.10 IviRFSigGen Class Specification

//----------------------------------------------------------------------------// enum: IviRFSigGenPulseTriggerSource //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(PULSE_TRIGGER_SOURCE_ENUM) ] typedef enum IviRFSigGenPulseTriggerSourceEnum { IviRFSigGenPulseTriggerSourceInternal = 0, IviRFSigGenPulseTriggerSourceExternal = 1, } IviRFSigGenPulseTriggerSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenPulseModulationExternalPolarity //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(PULSE_EXTERNAL_POLARITY_ENUM) ] typedef enum IviRFSigGenPulseModulationExternalPolarityEnum { IviRFSigGenPulseModulationExternalPolarityNormal = 0, IviRFSigGenPulseModulationExternalPolarityInverse = 1, } IviRFSigGenPulseModulationExternalPolarityEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenPulseModulationSourceEnum //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(PULSE_MODULATION_SOURCE_ENUM) ] typedef enum IviRFSigGenPulseModulationSourceEnum { IviRFSigGenPulseModulationSourceInternal = 0, IviRFSigGenPulseModulationSourceExternal = 1, } IviRFSigGenPulseModulationSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenPulseOutputPolarity //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(PULSE_OUTPUT_POLARITY_ENUM) ] typedef enum IviRFSigGenPulseOutputPolarityEnum { IviRFSigGenPulseOutputPolarityNormal = 0, IviRFSigGenPulseOutputPolarityInverse = 1, } IviRFSigGenPulseOutputPolarityEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenSweepTriggerSource //----------------------------------------------------------------------------[

IVI-4.10 IviRFSigGen Class Specification

378

IVI Foundation

public, v1_enum, HELP_RFSIGGEN(SWEEP_TRIGGER_SOURCE_ENUM) ] typedef enum IviRFSigGenSweepTriggerSourceEnum { IviRFSigGenSweepTriggerSourceImmediate = 0, IviRFSigGenSweepTriggerSourceExternal = 1, IviRFSigGenSweepTriggerSourceSoftware = 2, } IviRFSigGenSweepTriggerSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenFrequencyStepScaling //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(FREQUENCY_STEP_SCALING_ENUM) ] typedef enum IviRFSigGenFrequencyStepScalingEnum { IviRFSigGenFrequencyStepScalingLinear IviRFSigGenFrequencyStepScalingLogarithmic } IviRFSigGenFrequencyStepScalingEnum;

= 0, = 1,

//----------------------------------------------------------------------------// enum: IviRFSigGenIQSource //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(IQ_SOURCE_ENUM) ] typedef enum IviRFSigGenIQSourceEnum { IviRFSigGenIQSourceDigitalModulationBase IviRFSigGenIQSourceCDMABase IviRFSigGenIQSourceTDMABase IviRFSigGenIQSourceArbGenerator IviRFSigGenIQSourceExternal } IviRFSigGenIQSourceEnum;

= = = = =

0, 1, 2, 3, 4,

//----------------------------------------------------------------------------// enum: IviRFSigGenArbTriggerSource //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(ARB_TRIGGER_SOURCE_ENUM) ] typedef enum IviRFSigGenArbTriggerSourceEnum { IviRFSigGenArbTriggerSourceImmediate = 0, IviRFSigGenArbTriggerSourceExternal = 1, IviRFSigGenArbTriggerSourceSoftware = 2, } IviRFSigGenArbTriggerSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenArbExternalTriggerSlope //----------------------------------------------------------------------------[

IVI Foundation

379

IVI-4.10 IviRFSigGen Class Specification

public, v1_enum, HELP_RFSIGGEN(ARB_EXTERNAL_TRIGGER_SLOPE_ENUM) ] typedef enum IviRFSigGenArbExternalTriggerSlopeEnum { IviRFSigGenArbExternalTriggerSlopePositive = 0, IviRFSigGenArbExternalTriggerSlopeNegative = 1, } IviRFSigGenArbExternalTriggerSlopeEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenDigitalModulationBaseDataSource //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_DATA_SOURCE_ENUM) ] typedef enum IviRFSigGenDigitalModulationBaseDataSourceEnum { IviRFSigGenDigitalModulationBaseDataSourceExternal = 0, IviRFSigGenDigitalModulationBaseDataSourcePRBS = 1, IviRFSigGenDigitalModulationBaseDataSourceBitSequence = 2, } IviRFSigGenDigitalModulationBaseDataSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenDigitalModulationBasePRBSType //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_PRBS_TYPE) ] typedef enum IviRFSigGenDigitalModulationBasePRBSTypeEnum { IviRFSigGenDigitalModulationBasePRBSTypePRBS9 = IviRFSigGenDigitalModulationBasePRBSTypePRBS11 = IviRFSigGenDigitalModulationBasePRBSTypePRBS15 = IviRFSigGenDigitalModulationBasePRBSTypePRBS16 = IviRFSigGenDigitalModulationBasePRBSTypePRBS20 = IviRFSigGenDigitalModulationBasePRBSTypePRBS21 = IviRFSigGenDigitalModulationBasePRBSTypePRBS23 = } IviRFSigGenDigitalModulationBasePRBSTypeEnum;

0, 1, 2, 3, 4, 5, 6,

//----------------------------------------------------------------------------// enum: IviRFSigGenDigitalModulationBaseClockSource //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_CLOCK_SOURCE_ENUM) ] typedef enum IviRFSigGenDigitalModulationBaseClockSourceEnum { IviRFSigGenDigitalModulationBaseClockSourceInternal = 0, IviRFSigGenDigitalModulationBaseClockSourceExternal = 1, } IviRFSigGenDigitalModulationBaseClockSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenDigitalModulationBaseClockType //-----------------------------------------------------------------------------

IVI-4.10 IviRFSigGen Class Specification

380

IVI Foundation

[ public, v1_enum, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_ENUM) ] typedef enum IviRFSigGenDigitalModulationBaseExternalClockTypeEnum { IviRFSigGenDigitalModulationBaseExternalClockTypeBit = 0, IviRFSigGenDigitalModulationBaseExternalClockTypeSymbol = 1, } IviRFSigGenDigitalModulationBaseExternalClockTypeEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenCDMATriggerSource //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(CDMA_TRIGGER_SOURCE_ENUM) ] typedef enum IviRFSigGenCDMATriggerSourceEnum { IviRFSigGenCDMATriggerSourceImmediate = 0, IviRFSigGenCDMATriggerSourceExternal = 1, IviRFSigGenCDMATriggerSourceSoftware = 2, } IviRFSigGenCDMATriggerSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenCDMAExternalTriggerSlope //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(CDMA_EXTERNAL_TRIGGER_SLOPE_ENUM) ] typedef enum IviRFSigGenCDMAExternalTriggerSlopeEnum { IviRFSigGenCDMAExternalTriggerSlopePositive = 0, IviRFSigGenCDMAExternalTriggerSlopeNegative = 1, } IviRFSigGenCDMAExternalTriggerSlopeEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenCDMAClockSource //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(CDMA_CLOCK_SOURCE_ENUM) ] typedef enum IviRFSigGenCDMAClockSourceEnum { IviRFSigGenCDMAClockSourceInternal = 0, IviRFSigGenCDMAClockSourceExternal = 1, } IviRFSigGenCDMAClockSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenTDMATriggerSource //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(TDMA_TRIGGER_SOURCE_ENUM)

IVI Foundation

381

IVI-4.10 IviRFSigGen Class Specification

] typedef enum IviRFSigGenTDMATriggerSourceEnum { IviRFSigGenTDMATriggerSourceImmediate = 0, IviRFSigGenTDMATriggerSourceExternal = 1, IviRFSigGenTDMATriggerSourceSoftware = 2, } IviRFSigGenTDMATriggerSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenTDMAExternalTriggerSlope //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(TDMA_EXTERNAL_TRIGGER_SLOPE_ENUM) ] typedef enum IviRFSigGenTDMAExternalTriggerSlopeEnum { IviRFSigGenTDMAExternalTriggerSlopePositive = 0, IviRFSigGenTDMAExternalTriggerSlopeNegative = 1, } IviRFSigGenTDMAExternalTriggerSlopeEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenTDMAClockSource //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(TDMA_CLOCK_SOURCE_ENUM) ] typedef enum IviRFSigGenTDMAClockSourceEnum { IviRFSigGenTDMAClockSourceInternal = 0, IviRFSigGenTDMAClockSourceExternal = 1, } IviRFSigGenTDMAClockSourceEnum;

//----------------------------------------------------------------------------// enum: IviRFSigGenTDMAExternalClockType //----------------------------------------------------------------------------[ public, v1_enum, HELP_RFSIGGEN(TDMA_EXTERNAL_CLOCK_TYPE_ENUM) ] typedef enum IviRFSigGenTDMAExternalClockTypeEnum { IviRFSigGenTDMAExternalClockTypeBit = 0, IviRFSigGenTDMAExternalClockTypeSymbol = 1, } IviRFSigGenTDMAExternalClockTypeEnum;

//----------------------------------------------------------------------------// IVI RfSigGen Driver Root Level Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN), HELP_RFSIGGEN(I_IVI_RFSIGGEN), oleautomation, pointer_default(unique) ] interface IIviRFSigGen : IIviDriver

IVI-4.10 IviRFSigGen Class Specification

382

IVI Foundation

{ //----------------------------------------- RF Interface Reference [ propget, HELP_RFSIGGEN(RF) ] HRESULT RF ([out, retval] IIviRFSigGenRF **pVal); //----------------------------------------- ALC Interface Reference [ propget, HELP_RFSIGGEN(ALC) ] HRESULT ALC ([out, retval] IIviRFSigGenALC **pVal); //----------------------------------------- LFGenerator Interface Reference [ propget, HELP_RFSIGGEN(LFGENERATOR) ] HRESULT LFGenerator ([out, retval] IIviRFSigGenLFGenerator **pVal); //----------------------------------------- PulseGenerator Interface Reference [ propget, HELP_RFSIGGEN(PULSE_GENERATOR) ] HRESULT PulseGenerator ([out, retval] IIviRFSigGenPulseGenerator **pVal); //----------------------------------------- Sweep Interface Reference [ propget, HELP_RFSIGGEN(SWEEP) ] HRESULT Sweep ([out, retval] IIviRFSigGenSweep **pVal); //----------------------------------------- ReferenceOscillator Interface Reference [ propget, HELP_RFSIGGEN(REFERENCE_OSCILLATOR) ] HRESULT ReferenceOscillator ([out, retval] IIviRFSigGenReferenceOscillator **pVal); //----------------------------------------- AnalogModulation Interface Reference [ propget, HELP_RFSIGGEN(ANALOG_MODULATION) ] HRESULT AnalogModulation ([out, retval] IIviRFSigGenAnalogModulation **pVal); //----------------------------------------- PulseModulation Interface Reference [ propget, HELP_RFSIGGEN(PULSE_MODULATION) ] HRESULT PulseModulation ([out, retval] IIviRFSigGenPulseModulation **pVal); //----------------------------------------- DigitalModulation Interface Reference [ propget, HELP_RFSIGGEN(DIGITAL_MODULATION) ] HRESULT DigitalModulation ([out, retval] IIviRFSigGenDigitalModulation **pVal); //----------------------------------------- IQ Interface Reference [ propget, HELP_RFSIGGEN(IQ) ] HRESULT IQ ([out, retval] IIviRFSigGenIQ **pVal); //----------------------------------------- SendSoftwareTrigger() [ HELP_RFSIGGEN(SEND_SOFTWARE_TRIGGER) ] HRESULT SendSoftwareTrigger(); };

//----------------------------------------------------------------------------// RF Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_RF), HELP_RFSIGGEN(I_IVI_RFSIGGEN_RF), oleautomation, pointer_default(unique) ] interface IIviRFSigGenRF : IUnknown { //----------------------------------------- Configure() [ HELP_RFSIGGEN(RF_CONFIGURE) ] HRESULT Configure( [in] DOUBLE Frequency, [in] DOUBLE PowerLevel); //----------------------------------------- Frequency [ propput, HELP_RFSIGGEN(FREQUENCY) ]

IVI Foundation

383

IVI-4.10 IviRFSigGen Class Specification

HRESULT Frequency([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(FREQUENCY) ] HRESULT Frequency([out, retval] DOUBLE *pVal); //----------------------------------------- Level [ propput, HELP_RFSIGGEN(LEVEL) ] HRESULT Level([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(LEVEL) ] HRESULT Level([out, retval] DOUBLE *pVal); //----------------------------------------- OutputEnabled [ propput, HELP_RFSIGGEN(OUTPUT_ENABLED) ] HRESULT OutputEnabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(OUTPUT_ENABLED) ] HRESULT OutputEnabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- IsSettled() [ HELP_RFSIGGEN(IS_SETTLED) ] HRESULT IsSettled( [out, retval] VARIANT_BOOL *Done); //----------------------------------------- WaitUntilSettled() [ HELP_RFSIGGEN(WAIT_UNTIL_SETTLED) ] HRESULT WaitUntilSettled( [in] LONG MaxTimeMilliseconds); //----------------------------------------- DisableAllModulation() [ HELP_RFSIGGEN(DISABLE_ALL_MODULATION) ] HRESULT DisableAllModulation(); };

//----------------------------------------------------------------------------// ALC Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_ALC), HELP_RFSIGGEN(I_IVI_RFSIGGEN_ALC), oleautomation, pointer_default(unique) ] interface IIviRFSigGenALC : IUnknown { //----------------------------------------- Configure() [ HELP_RFSIGGEN(ALC_CONFIGURE) ] HRESULT Configure( [in] IviRFSigGenALCSourceEnum Source, [in] DOUBLE Bandwidth); //----------------------------------------- Source [ propput, HELP_RFSIGGEN(ALC_SOURCE) ] HRESULT Source([in] IviRFSigGenALCSourceEnum newVal); [ propget, HELP_RFSIGGEN(ALC_SOURCE) ] HRESULT Source([out, retval] IviRFSigGenALCSourceEnum *pVal); //----------------------------------------- Bandwidth [ propput, HELP_RFSIGGEN(ALC_BANDWIDTH) ] HRESULT Bandwidth([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(ALC_BANDWIDTH) ] HRESULT Bandwidth([out, retval] DOUBLE *pVal);

IVI-4.10 IviRFSigGen Class Specification

384

IVI Foundation

//----------------------------------------- Enabled [ propput, HELP_RFSIGGEN(ALC_ENABLED) ] HRESULT Enabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(ALC_ENABLED) ] HRESULT Enabled([out, retval] VARIANT_BOOL *pVal); };

//----------------------------------------------------------------------------// LFGenerator Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_LFGENERATOR), HELP_RFSIGGEN(I_IVI_RFSIGGEN_LFGENERATOR), oleautomation, pointer_default(unique) ] interface IIviRFSigGenLFGenerator : IUnknown { //----------------------------------------- LFGeneratorOutput Interface Reference [ propget, HELP_RFSIGGEN(LFGENERATOR_OUTPUT) ] HRESULT Output ([out, retval] IIviRFSigGenLFGeneratorOutput **pVal); //----------------------------------------- Configure() [ HELP_RFSIGGEN(LFGENERATOR_CONFIGURE) ] HRESULT Configure( [in] DOUBLE Frequency, [in] IviRFSigGenLFGeneratorWaveformEnum Waveform); //----------------------------------------- Frequency [ propput, HELP_RFSIGGEN(LFGENERATOR_FREQUENCY) ] HRESULT Frequency([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(LFGENERATOR_FREQUENCY) ] HRESULT Frequency([out, retval] DOUBLE *pVal); //----------------------------------------- Waveform [ propput, HELP_RFSIGGEN(LFGENERATOR_WAVEFORM) ] HRESULT Waveform([in] IviRFSigGenLFGeneratorWaveformEnum newVal); [ propget, HELP_RFSIGGEN(LFGENERATOR_WAVEFORM) ] HRESULT Waveform([out, retval] IviRFSigGenLFGeneratorWaveformEnum *pVal); //----------------------------------------- ActiveGenerator [ propget, HELP_RFSIGGEN(ACTIVE_LFGENERATOR) ] HRESULT ActiveLFGenerator([out, retval] BSTR *pVal); [ propput, HELP_RFSIGGEN(ACTIVE_LFGENERATOR) ] HRESULT ActiveLFGenerator([in] BSTR newVal); //----------------------------------------- Count [ propget, HELP_RFSIGGEN(LFGENERATOR_COUNT) ] HRESULT Count ([out, retval] LONG *pVal); //----------------------------------------- Name [ propget, HELP_RFSIGGEN(LFGENERATOR_NAME) ] HRESULT Name ([in] LONG Index, [out, retval] BSTR *pVal); };

//----------------------------------------------------------------------------// LFGeneratorOutput Interface //-----------------------------------------------------------------------------

IVI Foundation

385

IVI-4.10 IviRFSigGen Class Specification

[ object, uuid(UUID_IIVI_RFSIGGEN_LFGENERATOR_OUTPUT), HELP_RFSIGGEN(I_IVI_RFSIGGEN_LFGENERATOR_OUTPUT), oleautomation, pointer_default(unique) ] interface IIviRFSigGenLFGeneratorOutput : IUnknown { //----------------------------------------- Configure() [ HELP_RFSIGGEN(LFGENERATOR_OUTPUT_CONFIGURE) ] HRESULT Configure( [in] DOUBLE Amplitude, [in] VARIANT_BOOL Enabled); //----------------------------------------- Enabled [ propput, HELP_RFSIGGEN(LFGENERATOR_ENABLED) ] HRESULT Enabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(LFGENERATOR_ENABLED) ] HRESULT Enabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- Amplitude [ propput, HELP_RFSIGGEN(LFGENERATOR_AMPLITUDE) ] HRESULT Amplitude([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(LFGENERATOR_AMPLITUDE) ] HRESULT Amplitude([out, retval] DOUBLE *pVal); };

//----------------------------------------------------------------------------// PulseGenerator Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_PULSE_GENERATOR), HELP_RFSIGGEN(I_IVI_RFSIGGEN_PULSE_GENERATOR), oleautomation, pointer_default(unique) ] interface IIviRFSigGenPulseGenerator : IUnknown { //----------------------------------------- PulseGeneratorDouble Interface Reference [ propget, HELP_RFSIGGEN(PULSE_GENERATOR_DOUBLE) ] HRESULT Double ([out, retval] IIviRFSigGenPulseGeneratorDouble **pVal); //----------------------------------------- PulseGeneratorOutput Interface Reference [ propget, HELP_RFSIGGEN(PULSE_GENERATOR_OUTPUT) ] HRESULT Output ([out, retval] IIviRFSigGenPulseGeneratorOutput **pVal); //----------------------------------------- Configure() [ HELP_RFSIGGEN(PULSE_GENERATOR_CONFIGURE) ] HRESULT Configure( [in] IviRFSigGenPulseTriggerSourceEnum PulseTriggerSource, [in] DOUBLE PulseWidth, [in] VARIANT_BOOL GatingEnabled); //----------------------------------------- ConfigureExternalTrigger() [ HELP_RFSIGGEN(PULSE_GENERATOR_CONFIGURE_EXTERNAL_TRIGGER) ] HRESULT ConfigureExternalTrigger( [in] IviRFSigGenPulseExternalTriggerSlopeEnum Slope, [in] DOUBLE Delay); //----------------------------------------- TriggerInternalPeriod [ propput, HELP_RFSIGGEN(PULSE_GENERATOR_INTERNAL_TRIGGER_PERIOD) ] HRESULT InternalTriggerPeriod([in] DOUBLE newVal);

IVI-4.10 IviRFSigGen Class Specification

386

IVI Foundation

[ propget, HELP_RFSIGGEN(PULSE_GENERATOR_INTERNAL_TRIGGER_PERIOD) ] HRESULT InternalTriggerPeriod([out, retval] DOUBLE *pVal); //----------------------------------------- Width [ propput, HELP_RFSIGGEN(PULSE_GENERATOR_WIDTH) ] HRESULT Width([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(PULSE_GENERATOR_WIDTH) ] HRESULT Width([out, retval] DOUBLE *pVal); //----------------------------------------- GatingEnabled [ propput, HELP_RFSIGGEN(PULSE_GENERATOR_GATING_ENABLED) ] HRESULT GatingEnabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(PULSE_GENERATOR_GATING_ENABLED) ] HRESULT GatingEnabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- TriggerSource [ propput, HELP_RFSIGGEN(PULSE_GENERATOR_TRIGGER_SOURCE) ] HRESULT TriggerSource([in] IviRFSigGenPulseTriggerSourceEnum newVal); [ propget, HELP_RFSIGGEN(PULSE_GENERATOR_TRIGGER_SOURCE) ] HRESULT TriggerSource([out, retval] IviRFSigGenPulseTriggerSourceEnum *pVal); //----------------------------------------- ExternalTriggerSlope [ propput, HELP_RFSIGGEN(PULSE_GENERATOR_EXTERNAL_TRIGGER_SLOPE) ] HRESULT ExternalTriggerSlope([in] IviRFSigGenPulseExternalTriggerSlopeEnum newVal); [ propget, HELP_RFSIGGEN(PULSE_GENERATOR_EXTERNAL_TRIGGER_SLOPE) ] HRESULT ExternalTriggerSlope([out, retval] IviRFSigGenPulseExternalTriggerSlopeEnum *pVal); //----------------------------------------- ExternalTriggerDelay [ propput, HELP_RFSIGGEN(PULSE_GENERATOR_EXTERNAL_TRIGGER_DELAY) ] HRESULT ExternalTriggerDelay([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(PULSE_GENERATOR_EXTERNAL_TRIGGER_DELAY) ] HRESULT ExternalTriggerDelay([out, retval] DOUBLE *pVal); };

//----------------------------------------------------------------------------// PulseGeneratorDouble Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_PULSE_GENERATOR_DOUBLE), HELP_RFSIGGEN(I_IVI_RFSIGGEN_PULSE_GENERATOR_DOUBLE), oleautomation, pointer_default(unique) ] interface IIviRFSigGenPulseGeneratorDouble : IUnknown { //----------------------------------------- Configure() [ HELP_RFSIGGEN(PULSE_GENERATOR_DOUBLE_CONFIGURE) ] HRESULT Configure( [in] VARIANT_BOOL Enabled, [in] DOUBLE Delay); //----------------------------------------- Enabled [ propput, HELP_RFSIGGEN(PULSE_GENERATOR_DOUBLE_ENABLED) ] HRESULT Enabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(PULSE_GENERATOR_DOUBLE_ENABLED) ] HRESULT Enabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- Delay

IVI Foundation

387

IVI-4.10 IviRFSigGen Class Specification

[ propput, HELP_RFSIGGEN(PULSE_GENERATOR_DOUBLE_DELAY) ] HRESULT Delay([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(PULSE_GENERATOR_DOUBLE_DELAY) ] HRESULT Delay([out, retval] DOUBLE *pVal); };

//----------------------------------------------------------------------------// PulseGeneratorOutput Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_PULSE_GENERATOR_OUTPUT), HELP_RFSIGGEN(I_IVI_RFSIGGEN_PULSE_GENERATOR_OUTPUT), oleautomation, pointer_default(unique) ] interface IIviRFSigGenPulseGeneratorOutput : IUnknown { //----------------------------------------- Configure() [ HELP_RFSIGGEN(PULSE_GENERATOR_OUTPUT_CONFIGURE) ] HRESULT Configure( [in] IviRFSigGenPulseOutputPolarityEnum Polarity, [in] VARIANT_BOOL Enabled); //----------------------------------------- Polarity [ propput, HELP_RFSIGGEN(PULSE_GENERATOR_OUTPUT_POLARITY) ] HRESULT Polarity([in] IviRFSigGenPulseOutputPolarityEnum newVal); [ propget, HELP_RFSIGGEN(PULSE_GENERATOR_OUTPUT_POLARITY) ] HRESULT Polarity([out, retval] IviRFSigGenPulseOutputPolarityEnum *pVal); //----------------------------------------- Enabled [ propput, HELP_RFSIGGEN(PULSE_GENERATOR_OUTPUT_ENABLED) ] HRESULT Enabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(PULSE_GENERATOR_OUTPUT_ENABLED) ] HRESULT Enabled([out, retval] VARIANT_BOOL *pVal); };

//----------------------------------------------------------------------------// AnalogModulation Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_ANALOG_MODULATION), HELP_RFSIGGEN(I_IVI_RFSIGGEN_ANALOG_MODULATION), oleautomation, pointer_default(unique) ] interface IIviRFSigGenAnalogModulation : IUnknown { //----------------------------------------- AM Interface Reference [ propget, HELP_RFSIGGEN(AM) ] HRESULT AM ([out, retval] IIviRFSigGenAM **pVal); //----------------------------------------- FM Interface Reference [ propget, HELP_RFSIGGEN(FM) ] HRESULT FM ([out, retval] IIviRFSigGenFM **pVal); //----------------------------------------- PM Interface Reference [ propget, HELP_RFSIGGEN(PM) ] HRESULT PM ([out, retval] IIviRFSigGenPM **pVal);

IVI-4.10 IviRFSigGen Class Specification

388

IVI Foundation

//----------------------------------------- Source Interface Reference [ propget, HELP_RFSIGGEN(ANALOG_MODULATION_SOURCE) ] HRESULT Source ([out, retval] IIviRFSigGenAnalogModulationSource **pVal); };

//----------------------------------------------------------------------------// AnalogModulationSource Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_ANALOG_MODULATION_SOURCE), HELP_RFSIGGEN(I_IVI_RFSIGGEN_ANALOG_MODULATION_SOURCE), oleautomation, pointer_default(unique) ] interface IIviRFSigGenAnalogModulationSource : IUnknown { //----------------------------------------- Count [ propget, HELP_RFSIGGEN(ANALOG_MODULATION_SOURCE_COUNT) ] HRESULT Count ([out, retval] LONG *pVal); //----------------------------------------- Name [ propget, HELP_RFSIGGEN(ANALOG_MODULATION_SOURCE_NAME) ] HRESULT Name ([in] LONG Index, [out, retval] BSTR *pVal); }; //----------------------------------------------------------------------------// AM Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_AM), HELP_RFSIGGEN(I_IVI_RFSIGGEN_AM), oleautomation, pointer_default(unique) ] interface IIviRFSigGenAM : IUnknown { //----------------------------------------- Configure() [ HELP_RFSIGGEN(AM_CONFIGURE) ] HRESULT Configure( [in] BSTR Source, [in] IviRFSigGenAMScalingEnum Scaling, [in] DOUBLE Depth); //----------------------------------------- Source [ propput, HELP_RFSIGGEN(AM_SOURCE) ] HRESULT Source([in] BSTR newVal); [ propget, HELP_RFSIGGEN(AM_SOURCE) ] HRESULT Source([out, retval] BSTR *pVal); //----------------------------------------- Scaling [ propput, HELP_RFSIGGEN(AM_SCALING) ] HRESULT Scaling([in] IviRFSigGenAMScalingEnum newVal); [ propget, HELP_RFSIGGEN(AM_SCALING) ] HRESULT Scaling([out, retval] IviRFSigGenAMScalingEnum *pVal); //----------------------------------------- Depth [ propput, HELP_RFSIGGEN(AM_DEPTH) ] HRESULT Depth([in] DOUBLE newVal);

IVI Foundation

389

IVI-4.10 IviRFSigGen Class Specification

[ propget, HELP_RFSIGGEN(AM_DEPTH) ] HRESULT Depth([out, retval] DOUBLE *pVal); //----------------------------------------- NominalVoltage [ propget, HELP_RFSIGGEN(AM_NOMINAL_VOLTAGE) ] HRESULT NominalVoltage([out, retval] DOUBLE *pVal); //----------------------------------------- Enabled [ propput, HELP_RFSIGGEN(AM_ENABLED) ] HRESULT Enabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(AM_ENABLED) ] HRESULT Enabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- ExternalCoupling [ propput, HELP_RFSIGGEN(AM_EXTERNAL_COUPLING) ] HRESULT ExternalCoupling([in] IviRFSigGenAMExternalCouplingEnum newVal); [ propget, HELP_RFSIGGEN(AM_EXTERNAL_COUPLING) ] HRESULT ExternalCoupling([out, retval] IviRFSigGenAMExternalCouplingEnum *pVal); }; //----------------------------------------------------------------------------// FM Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_FM), HELP_RFSIGGEN(I_IVI_RFSIGGEN_FM), oleautomation, pointer_default(unique) ] interface IIviRFSigGenFM : IUnknown { //----------------------------------------- Configure() [ HELP_RFSIGGEN(FM_CONFIGURE) ] HRESULT Configure( [in] BSTR Source, [in] DOUBLE Deviation); //----------------------------------------- Source [ propput, HELP_RFSIGGEN(FM_SOURCE) ] HRESULT Source([in] BSTR newVal); [ propget, HELP_RFSIGGEN(FM_SOURCE) ] HRESULT Source([out, retval] BSTR *pVal); //----------------------------------------- Deviation [ propput, HELP_RFSIGGEN(FM_DEVIATION) ] HRESULT Deviation([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(FM_DEVIATION) ] HRESULT Deviation([out, retval] DOUBLE *pVal); //----------------------------------------- NominalVoltage [ propget, HELP_RFSIGGEN(FM_NOMINAL_VOLTAGE) ] HRESULT NominalVoltage([out, retval] DOUBLE *pVal); //----------------------------------------- Enabled [ propput, HELP_RFSIGGEN(FM_ENABLED) ] HRESULT Enabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(FM_ENABLED) ] HRESULT Enabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- ExternalCoupling [ propput, HELP_RFSIGGEN(FM_EXTERNAL_COUPLING) ]

IVI-4.10 IviRFSigGen Class Specification

390

IVI Foundation

HRESULT ExternalCoupling([in] IviRFSigGenFMExternalCouplingEnum newVal); [ propget, HELP_RFSIGGEN(FM_EXTERNAL_COUPLING) ] HRESULT ExternalCoupling([out, retval] IviRFSigGenFMExternalCouplingEnum *pVal); }; //----------------------------------------------------------------------------// PM Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_PM), HELP_RFSIGGEN(I_IVI_RFSIGGEN_PM), oleautomation, pointer_default(unique) ] interface IIviRFSigGenPM : IUnknown { //----------------------------------------- Configure() [ HELP_RFSIGGEN(PM_CONFIGURE) ] HRESULT Configure( [in] BSTR Source, [in] DOUBLE Deviation); //----------------------------------------- Source [ propput, HELP_RFSIGGEN(PM_SOURCE) ] HRESULT Source([in] BSTR newVal); [ propget, HELP_RFSIGGEN(PM_SOURCE) ] HRESULT Source([out, retval] BSTR *pVal); //----------------------------------------- Deviation [ propput, HELP_RFSIGGEN(PM_DEVIATION) ] HRESULT Deviation([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(PM_DEVIATION) ] HRESULT Deviation([out, retval] DOUBLE *pVal); //----------------------------------------- NominalVoltage [ propget, HELP_RFSIGGEN(PM_NOMINAL_VOLTAGE) ] HRESULT NominalVoltage([out, retval] DOUBLE *pVal); //----------------------------------------- Enabled [ propput, HELP_RFSIGGEN(PM_ENABLED) ] HRESULT Enabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(PM_ENABLED) ] HRESULT Enabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- ExternalCoupling [ propput, HELP_RFSIGGEN(PM_EXTERNAL_COUPLING) ] HRESULT ExternalCoupling([in] IviRFSigGenPMExternalCouplingEnum newVal); [ propget, HELP_RFSIGGEN(PM_EXTERNAL_COUPLING) ] HRESULT ExternalCoupling([out, retval] IviRFSigGenPMExternalCouplingEnum *pVal); }; //----------------------------------------------------------------------------// PulseModulation Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_PULSE_MODULATION), HELP_RFSIGGEN(I_IVI_RFSIGGEN_PULSE_MODULATION), oleautomation,

IVI Foundation

391

IVI-4.10 IviRFSigGen Class Specification

pointer_default(unique) ] interface IIviRFSigGenPulseModulation : IUnknown { //----------------------------------------- Enabled [ propput, HELP_RFSIGGEN(PULSE_MODULATION_ENABLED) ] HRESULT Enabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(PULSE_MODULATION_ENABLED) ] HRESULT Enabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- Source [ propput, HELP_RFSIGGEN(PULSE_MODULATION_SOURCE) ] HRESULT Source([in] IviRFSigGenPulseModulationSourceEnum newVal); [ propget, HELP_RFSIGGEN(PULSE_MODULATION_SOURCE) ] HRESULT Source([out, retval] IviRFSigGenPulseModulationSourceEnum *pVal); //----------------------------------------- ExternalPolarity [ propput, HELP_RFSIGGEN(PULSE_MODULATION_EXTERNAL_POLARITY) ] HRESULT ExternalPolarity([in] IviRFSigGenPulseModulationExternalPolarityEnum newVal); [ propget, HELP_RFSIGGEN(PULSE_MODULATION_EXTERNAL_POLARITY) ] HRESULT ExternalPolarity([out, retval] IviRFSigGenPulseModulationExternalPolarityEnum *pVal); }; //----------------------------------------------------------------------------// ReferenceOscillator Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_REFERENCE_OSCILLATOR), HELP_RFSIGGEN(I_IVI_RFSIGGEN_REFERENCE_OSCILLATOR), oleautomation, pointer_default(unique) ] interface IIviRFSigGenReferenceOscillator : IUnknown { //----------------------------------------- Configure() [ HELP_RFSIGGEN(REFERENCE_OSCILLATOR_CONFIGURE) ] HRESULT Configure( [in] IviRFSigGenReferenceOscillatorSourceEnum Source, [in] DOUBLE Frequency); //----------------------------------------- Source [ propput, HELP_RFSIGGEN(REFERENCE_OSCILLATOR_SOURCE) ] HRESULT Source([in] IviRFSigGenReferenceOscillatorSourceEnum newVal); [ propget, HELP_RFSIGGEN(REFERENCE_OSCILLATOR_SOURCE) ] HRESULT Source([out, retval] IviRFSigGenReferenceOscillatorSourceEnum *pVal); //----------------------------------------- ExternalFrequency [ propput, HELP_RFSIGGEN(REFERENCE_OSCILLATOR_FREQUENCY) ] HRESULT ExternalFrequency([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(REFERENCE_OSCILLATOR_FREQUENCY) ] HRESULT ExternalFrequency([out, retval] DOUBLE *pVal); };

//----------------------------------------------------------------------------// Sweep Interface //----------------------------------------------------------------------------[

IVI-4.10 IviRFSigGen Class Specification

392

IVI Foundation

object, uuid(UUID_IIVI_RFSIGGEN_SWEEP), HELP_RFSIGGEN(I_IVI_RFSIGGEN_SWEEP), oleautomation, pointer_default(unique) ] interface IIviRFSigGenSweep : IUnknown { //----------------------------------------- FrequencySweep Interface Reference [ propget, HELP_RFSIGGEN(FREQUENCY_SWEEP) ] HRESULT FrequencySweep ([out, retval] IIviRFSigGenFrequencySweep **pVal); //----------------------------------------- PowerSweep Interface Reference [ propget, HELP_RFSIGGEN(POWER_SWEEP) ] HRESULT PowerSweep ([out, retval] IIviRFSigGenPowerSweep **pVal); //----------------------------------------- FrequencyStep Interface Reference [ propget, HELP_RFSIGGEN(FREQUENCY_STEP) ] HRESULT FrequencyStep ([out, retval] IIviRFSigGenFrequencyStep **pVal); //----------------------------------------- PowerStep Interface Reference [ propget, HELP_RFSIGGEN(POWER_STEP) ] HRESULT PowerStep ([out, retval] IIviRFSigGenPowerStep **pVal); //----------------------------------------- List Interface Reference [ propget, HELP_RFSIGGEN(LIST) ] HRESULT List ([out, retval] IIviRFSigGenList **pVal); //----------------------------------------- Configure() [ HELP_RFSIGGEN(SWEEP_CONFIGURE) ] HRESULT Configure( [in] IviRFSigGenSweepModeEnum Mode, [in] IviRFSigGenSweepTriggerSourceEnum TriggerSource); //----------------------------------------- Mode [ propput, HELP_RFSIGGEN(SWEEP_MODE) ] HRESULT Mode([in] IviRFSigGenSweepModeEnum newVal); [ propget, HELP_RFSIGGEN(SWEEP_MODE) ] HRESULT Mode([out, retval] IviRFSigGenSweepModeEnum *pVal); //----------------------------------------- TriggerSource [ propput, HELP_RFSIGGEN(SWEEP_TRIGGER_SOURCE) ] HRESULT TriggerSource([in] IviRFSigGenSweepTriggerSourceEnum newVal); [ propget, HELP_RFSIGGEN(SWEEP_TRIGGER_SOURCE) ] HRESULT TriggerSource([out, retval] IviRFSigGenSweepTriggerSourceEnum *pVal); }; //----------------------------------------------------------------------------// FrequencySweep Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_FREQUENCY_SWEEP), HELP_RFSIGGEN(I_IVI_RFSIGGEN_FREQUENCY_SWEEP), oleautomation, pointer_default(unique) ] interface IIviRFSigGenFrequencySweep : IUnknown { //----------------------------------------- ConfigureCenterSpan() [ HELP_RFSIGGEN(FREQUENCY_SWEEP_CONFIGURE_CENTER_SPAN) ] HRESULT ConfigureCenterSpan( [in] DOUBLE Center, [in] DOUBLE Span);

IVI Foundation

393

IVI-4.10 IviRFSigGen Class Specification

//----------------------------------------- ConfigureStartStop() [ HELP_RFSIGGEN(FREQUENCY_SWEEP_CONFIGURE_START_STOP) ] HRESULT ConfigureStartStop( [in] DOUBLE Start, [in] DOUBLE Stop); //----------------------------------------- Start [ propput, HELP_RFSIGGEN(FREQUENCY_SWEEP_START) ] HRESULT Start([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(FREQUENCY_SWEEP_START) ] HRESULT Start([out, retval] DOUBLE *pVal); //----------------------------------------- Stop [ propput, HELP_RFSIGGEN(FREQUENCY_SWEEP_STOP) ] HRESULT Stop([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(FREQUENCY_SWEEP_STOP) ] HRESULT Stop([out, retval] DOUBLE *pVal); //----------------------------------------- Time [ propput, HELP_RFSIGGEN(FREQUENCY_SWEEP_TIME) ] HRESULT Time([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(FREQUENCY_SWEEP_TIME) ] HRESULT Time([out, retval] DOUBLE *pVal); }; //----------------------------------------------------------------------------// PowerSweep Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_POWER_SWEEP), HELP_RFSIGGEN(I_IVI_RFSIGGEN_POWER_SWEEP), oleautomation, pointer_default(unique) ] interface IIviRFSigGenPowerSweep : IUnknown { //----------------------------------------- ConfigureStartStop() [ HELP_RFSIGGEN(POWER_SWEEP_CONFIGURE_START_STOP) ] HRESULT ConfigureStartStop( [in] DOUBLE Start, [in] DOUBLE Stop); //----------------------------------------- Start [ propput, HELP_RFSIGGEN(POWER_SWEEP_START) ] HRESULT Start([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(POWER_SWEEP_START) ] HRESULT Start([out, retval] DOUBLE *pVal); //----------------------------------------- Stop [ propput, HELP_RFSIGGEN(POWER_SWEEP_STOP) ] HRESULT Stop([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(POWER_SWEEP_STOP) ] HRESULT Stop([out, retval] DOUBLE *pVal); //----------------------------------------- Time [ propput, HELP_RFSIGGEN(POWER_SWEEP_TIME) ] HRESULT Time([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(POWER_SWEEP_TIME) ] HRESULT Time([out, retval] DOUBLE *pVal);

IVI-4.10 IviRFSigGen Class Specification

394

IVI Foundation

}; //----------------------------------------------------------------------------// FrequencyStep Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_FREQUENCY_STEP), HELP_RFSIGGEN(I_IVI_RFSIGGEN_FREQUENCY_STEP), oleautomation, pointer_default(unique) ] interface IIviRFSigGenFrequencyStep : IUnknown { //----------------------------------------- ConfigureStartStop() [ HELP_RFSIGGEN(FREQUENCY_STEP_CONFIGURE_START_STOP) ] HRESULT ConfigureStartStop( [in] DOUBLE Start, [in] DOUBLE Stop, [in] IviRFSigGenFrequencyStepScalingEnum Scaling, [in] DOUBLE StepSize); //----------------------------------------- Start [ propput, HELP_RFSIGGEN(FREQUENCY_STEP_START) ] HRESULT Start([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(FREQUENCY_STEP_START) ] HRESULT Start([out, retval] DOUBLE *pVal); //----------------------------------------- Stop [ propput, HELP_RFSIGGEN(FREQUENCY_STEP_STOP) ] HRESULT Stop([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(FREQUENCY_STEP_STOP) ] HRESULT Stop([out, retval] DOUBLE *pVal); //----------------------------------------- Scaling [ propput, HELP_RFSIGGEN(FREQUENCY_STEP_SCALING) ] HRESULT Scaling([in] IviRFSigGenFrequencyStepScalingEnum newVal); [ propget, HELP_RFSIGGEN(FREQUENCY_STEP_SCALING) ] HRESULT Scaling([out, retval] IviRFSigGenFrequencyStepScalingEnum *pVal); //----------------------------------------- Size [ propput, HELP_RFSIGGEN(FREQUENCY_STEP_SIZE) ] HRESULT Size([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(FREQUENCY_STEP_SIZE) ] HRESULT Size([out, retval] DOUBLE *pVal); //----------------------------------------- ConfigureDwell() [ HELP_RFSIGGEN(FREQUENCY_STEP_CONFIGURE_DWELL) ] HRESULT ConfigureDwell( [in] VARIANT_BOOL SingleStepEnabled, [in] DOUBLE Dwell); //----------------------------------------- SingleStepEnabled [ propput, HELP_RFSIGGEN(FREQUENCY_STEP_SINGLE_STEP_ENABLED) ] HRESULT SingleStepEnabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(FREQUENCY_STEP_SINGLE_STEP_ENABLED) ] HRESULT SingleStepEnabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- Dwell [ propput, HELP_RFSIGGEN(FREQUENCY_STEP_DWELL) ] HRESULT Dwell([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(FREQUENCY_STEP_DWELL) ]

IVI Foundation

395

IVI-4.10 IviRFSigGen Class Specification

HRESULT Dwell([out, retval] DOUBLE *pVal); //----------------------------------------- Reset() [ HELP_RFSIGGEN(FREQUENCY_STEP_RESET) ] HRESULT Reset(); }; //----------------------------------------------------------------------------// PowerStep Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_POWER_STEP), HELP_RFSIGGEN(I_IVI_RFSIGGEN_POWER_STEP), oleautomation, pointer_default(unique) ] interface IIviRFSigGenPowerStep : IUnknown { //----------------------------------------- ConfigureStartStop() [ HELP_RFSIGGEN(POWER_STEP_CONFIGURE_START_STOP) ] HRESULT ConfigureStartStop( [in] DOUBLE Start, [in] DOUBLE Stop, [in] DOUBLE StepSize); //----------------------------------------- Start [ propput, HELP_RFSIGGEN(POWER_STEP_START) ] HRESULT Start([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(POWER_STEP_START) ] HRESULT Start([out, retval] DOUBLE *pVal); //----------------------------------------- Stop [ propput, HELP_RFSIGGEN(POWER_STEP_STOP) ] HRESULT Stop([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(POWER_STEP_STOP) ] HRESULT Stop([out, retval] DOUBLE *pVal); //----------------------------------------- Size [ propput, HELP_RFSIGGEN(POWER_STEP_SIZE) ] HRESULT Size([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(POWER_STEP_SIZE) ] HRESULT Size([out, retval] DOUBLE *pVal); //----------------------------------------- ConfigureDwell() [ HELP_RFSIGGEN(POWER_STEP_CONFIGURE_DWELL) ] HRESULT ConfigureDwell( [in] VARIANT_BOOL SingleStepEnabled, [in] DOUBLE Dwell); //----------------------------------------- SingleStepEnabled [ propput, HELP_RFSIGGEN(POWER_STEP_SINGLE_STEP_ENABLED) ] HRESULT SingleStepEnabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(POWER_STEP_SINGLE_STEP_ENABLED) ] HRESULT SingleStepEnabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- Dwell [ propput, HELP_RFSIGGEN(POWER_STEP_DWELL) ] HRESULT Dwell([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(POWER_STEP_DWELL) ] HRESULT Dwell([out, retval] DOUBLE *pVal);

IVI-4.10 IviRFSigGen Class Specification

396

IVI Foundation

//----------------------------------------- Reset() [ HELP_RFSIGGEN(POWER_STEP_RESET) ] HRESULT Reset(); }; //----------------------------------------------------------------------------// List Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_LIST), HELP_RFSIGGEN(I_IVI_RFSIGGEN_LIST), oleautomation, pointer_default(unique) ] interface IIviRFSigGenList : IUnknown { //----------------------------------------- ConfigureDwell() [ HELP_RFSIGGEN(LIST_CONFIGURE_DWELL) ] HRESULT ConfigureDwell( [in] VARIANT_BOOL SingleStepEnabled, [in] DOUBLE Dwell); //----------------------------------------- SingleStepEnabled [ propput, HELP_RFSIGGEN(LIST_SINGLE_STEP_ENABLED) ] HRESULT SingleStepEnabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(LIST_SINGLE_STEP_ENABLED) ] HRESULT SingleStepEnabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- Dwell [ propput, HELP_RFSIGGEN(LIST_DWELL) ] HRESULT Dwell([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(LIST_DWELL) ] HRESULT Dwell([out, retval] DOUBLE *pVal); //----------------------------------------- SelectedName [ propget, HELP_RFSIGGEN(LIST_SELECTED_NAME) ] HRESULT SelectedName([out, retval] BSTR *pVal); [ propput, HELP_RFSIGGEN(LIST_SELECTED_NAME) ] HRESULT SelectedName([in] BSTR newVal); //----------------------------------------- ClearAll() [ HELP_RFSIGGEN(LIST_CLEAR_ALL) ] HRESULT ClearAll(); //----------------------------------------- CreateFrequency() [ HELP_RFSIGGEN(CREATE_FREQUENCY_LIST) ] HRESULT CreateFrequency( [in] BSTR Name, [in] SAFEARRAY (DOUBLE) *Frequency); //----------------------------------------- CreatePower() [ HELP_RFSIGGEN(CREATE_POWER_LIST) ] HRESULT CreatePower( [in] BSTR Name, [in] SAFEARRAY (DOUBLE) *Power); //----------------------------------------- CreateFrequencyPower() [ HELP_RFSIGGEN(CREATE_FREQUENCY_POWER_LIST) ] HRESULT CreateFrequencyPower( [in] BSTR Name, [in] SAFEARRAY (DOUBLE) *Frequency, [in] SAFEARRAY (DOUBLE) *Power);

IVI Foundation

397

IVI-4.10 IviRFSigGen Class Specification

//----------------------------------------- Reset() [ HELP_RFSIGGEN(LIST_RESET) ] HRESULT Reset(); }; //----------------------------------------------------------------------------// IQ Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_IQ), HELP_RFSIGGEN(I_IVI_RFSIGGEN_IQ), oleautomation, pointer_default(unique) ] interface IIviRFSigGenIQ : IUnknown { //----------------------------------------- IQImpairment Interface Reference [ propget, HELP_RFSIGGEN(IQ_IMPAIRMENT) ] HRESULT Impairment ([out, retval] IIviRFSigGenIQImpairment **pVal); //----------------------------------------- Configure() [ HELP_RFSIGGEN(IQ_CONFIGURE) ] HRESULT Configure( [in] IviRFSigGenIQSourceEnum Source, [in] VARIANT_BOOL SwapEnabled); //----------------------------------------- Source [ propput, HELP_RFSIGGEN(IQ_SOURCE) ] HRESULT Source([in] IviRFSigGenIQSourceEnum newVal); [ propget, HELP_RFSIGGEN(IQ_SOURCE) ] HRESULT Source([out, retval] IviRFSigGenIQSourceEnum *pVal); //----------------------------------------- SwapEnabled [ propput, HELP_RFSIGGEN(IQ_SWAP_ENABLED) ] HRESULT SwapEnabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(IQ_SWAP_ENABLED) ] HRESULT SwapEnabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- NominalVoltage [ propget, HELP_RFSIGGEN(IQ_NOMINAL_VOLTAGE) ] HRESULT NominalVoltage([out, retval] DOUBLE *pVal); //----------------------------------------- Enabled [ propput, HELP_RFSIGGEN(IQ_ENABLED) ] HRESULT Enabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(IQ_ENABLED) ] HRESULT Enabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- Calibrate() [ HELP_RFSIGGEN(IQ_CALIBRATE) ] HRESULT Calibrate(); }; //----------------------------------------------------------------------------// IQImpairment Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_IQ_IMPAIRMENT), HELP_RFSIGGEN(I_IVI_RFSIGGEN_IQ_IMPAIRMENT), oleautomation,

IVI-4.10 IviRFSigGen Class Specification

398

IVI Foundation

pointer_default(unique) ] interface IIviRFSigGenIQImpairment : IUnknown { //----------------------------------------- Configure() [ HELP_RFSIGGEN(IQ_IMPAIRMENT_CONFIGURE) ] HRESULT Configure( [in] DOUBLE IOffset, [in] DOUBLE QOffset, [in] DOUBLE Ratio, [in] DOUBLE Skew); //----------------------------------------- Enabled [ propput, HELP_RFSIGGEN(IQ_IMPAIRMENT_ENABLED) ] HRESULT Enabled([in] VARIANT_BOOL newVal); [ propget, HELP_RFSIGGEN(IQ_IMPAIRMENT_ENABLED) ] HRESULT Enabled([out, retval] VARIANT_BOOL *pVal); //----------------------------------------- IOffset [ propput, HELP_RFSIGGEN(IQ_IMPAIRMENT_I_OFFSET) ] HRESULT IOffset([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(IQ_IMPAIRMENT_I_OFFSET) ] HRESULT IOffset([out, retval] DOUBLE *pVal); //----------------------------------------- QOffset [ propput, HELP_RFSIGGEN(IQ_IMPAIRMENT_Q_OFFSET) ] HRESULT QOffset([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(IQ_IMPAIRMENT_Q_OFFSET) ] HRESULT QOffset([out, retval] DOUBLE *pVal); //----------------------------------------- Ratio [ propput, HELP_RFSIGGEN(IQ_IMPAIRMENT_RATIO) ] HRESULT Ratio([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(IQ_IMPAIRMENT_RATIO) ] HRESULT Ratio([out, retval] DOUBLE *pVal); //----------------------------------------- Skew [ propput, HELP_RFSIGGEN(IQ_IMPAIRMENT_SKEW) ] HRESULT Skew([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(IQ_IMPAIRMENT_SKEW) ] HRESULT Skew([out, retval] DOUBLE *pVal); };

//----------------------------------------------------------------------------// DigitalModulation Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_DIGITAL_MODULATION), HELP_RFSIGGEN(I_IVI_RFSIGGEN_DIGITAL_MODULATION), oleautomation, pointer_default(unique) ] interface IIviRFSigGenDigitalModulation : IUnknown { //----------------------------------------- Arb Interface Reference [ propget, HELP_RFSIGGEN(ARB) ] HRESULT Arb ([out, retval] IIviRFSigGenArb **pVal); //----------------------------------------- DigitalModulationBase Interface Reference [ propget, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE) ]

IVI Foundation

399

IVI-4.10 IviRFSigGen Class Specification

HRESULT Base ([out, retval] IIviRFSigGenDigitalModulationBase **pVal); //----------------------------------------- TDMA Interface Reference [ propget, HELP_RFSIGGEN(TDMA) ] HRESULT TDMA ([out, retval] IIviRFSigGenTDMA **pVal); //----------------------------------------- CDMA Interface Reference [ propget, HELP_RFSIGGEN(CDMA) ] HRESULT CDMA ([out, retval] IIviRFSigGenCDMA **pVal); }; //----------------------------------------------------------------------------// Arb Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_ARB), HELP_RFSIGGEN(I_IVI_RFSIGGEN_ARB), oleautomation, pointer_default(unique) ] interface IIviRFSigGenArb : IUnknown { //----------------------------------------- Configure() [ HELP_RFSIGGEN(ARB_CONFIGURE) ] HRESULT Configure( [in] DOUBLE ClockFrequency, [in] DOUBLE FilterFrequency); //----------------------------------------- WriteWaveform() [ HELP_RFSIGGEN(ARB_WRITE_WAVEFORM) ] HRESULT WriteWaveform( [in] BSTR Name, [in] SAFEARRAY (DOUBLE) *IData, [in] SAFEARRAY (DOUBLE) *QData, [in] VARIANT_BOOL MoreDataPending); //----------------------------------------- ClearAllWaveforms() [ HELP_RFSIGGEN(ARB_CLEAR_ALL_WAVEFORMS) ] HRESULT ClearAllWaveforms(); //----------------------------------------- QueryWaveformCapabilities() [ HELP_RFSIGGEN(ARB_QUERY_WAVEFORM_CAPABILITIES) ] HRESULT QueryWaveformCapabilities( [in, out] LONG *MaxNumberWaveforms, [in, out] LONG *WaveformQuantum, [in, out] LONG *MinWaveformSize, [in, out] LONG *MaxWaveformSize); //----------------------------------------- SelectedWaveform [ propput, HELP_RFSIGGEN(ARB_SELECTED_WAVEFORM) ] HRESULT SelectedWaveform([in] BSTR newVal); [ propget, HELP_RFSIGGEN(ARB_SELECTED_WAVEFORM) ] HRESULT SelectedWaveform([out, retval] BSTR *pVal); //----------------------------------------- ClockFrequency [ propput, HELP_RFSIGGEN(ARB_CLOCK_FREQUENCY) ] HRESULT ClockFrequency([in] DOUBLE newVal); [ propget, HELP_RFSIGGEN(ARB_CLOCK_FREQUENCY) ] HRESULT ClockFrequency([out, retval] DOUBLE *pVal); //----------------------------------------- FilterFrequency [ propput, HELP_RFSIGGEN(ARB_FILTER_FREQUENCY) ] HRESULT FilterFrequency([in] DOUBLE newVal);

IVI-4.10 IviRFSigGen Class Specification

400

IVI Foundation

[ propget, HELP_RFSIGGEN(ARB_FILTER_FREQUENCY) ] HRESULT FilterFrequency([out, retval] DOUBLE *pVal); //----------------------------------------- MaxNumberWaveforms [ propget, HELP_RFSIGGEN(ARB_MAX_NUMBER_WAVEFORMS) ] HRESULT MaxNumberWaveforms([out, retval] LONG *pVal); //----------------------------------------- WaveformQuantum [ propget, HELP_RFSIGGEN(ARB_WAVEFORM_QUANTUM) ] HRESULT WaveformQuantum([out, retval] LONG *pVal); //----------------------------------------- WaveformSizeMin [ propget, HELP_RFSIGGEN(ARB_WAVEFORM_SIZE_MIN) ] HRESULT WaveformSizeMin([out, retval] LONG *pVal); //----------------------------------------- WaveformSizeMax [ propget, HELP_RFSIGGEN(ARB_WAVEFORM_SIZE_MAX) ] HRESULT WaveformSizeMax([out, retval] LONG *pVal); //----------------------------------------- TriggerSource [ propput, HELP_RFSIGGEN(ARB_TRIGGER_SOURCE) ] HRESULT TriggerSource([in] IviRFSigGenArbTriggerSourceEnum newVal); [ propget, HELP_RFSIGGEN(ARB_TRIGGER_SOURCE) ] HRESULT TriggerSource([out, retval] IviRFSigGenArbTriggerSourceEnum *pVal); //----------------------------------------- ExternalTriggerSlope [ propput, HELP_RFSIGGEN(ARB_TRIGGER_EXTERNAL_SLOPE) ] HRESULT ExternalTriggerSlope([in] IviRFSigGenArbExternalTriggerSlopeEnum newVal); [ propget, HELP_RFSIGGEN(ARB_TRIGGER_EXTERNAL_SLOPE) ] HRESULT ExternalTriggerSlope([out, retval] IviRFSigGenArbExternalTriggerSlopeEnum *pVal); };

//----------------------------------------------------------------------------// DigitalModulationBase Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_DIGITAL_MODULATION_BASE), HELP_RFSIGGEN(I_IVI_RFSIGGEN_DIGITAL_MODULATION_BASE), oleautomation, pointer_default(unique) ] interface IIviRFSigGenDigitalModulationBase : IUnknown { //----------------------------------------- ConfigureClockSource() [ HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_CONFIGURE_CLOCK_SOURCE) ] HRESULT ConfigureClockSource( [in] IviRFSigGenDigitalModulationBaseClockSourceEnum Source, [in] IviRFSigGenDigitalModulationBaseExternalClockTypeEnum Type); //----------------------------------------- WriteBitSequence() [ HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_WRITE_BIT_SEQUENCE) ] HRESULT WriteBitSequence( [in] BSTR Name, [in] LONG BitCount, [in] SAFEARRAY (BYTE) *Sequence, [in] VARIANT_BOOL MoreDataPending); //----------------------------------------- ClearAllBitSequences() [ HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_CLEAR_ALL_BIT_SEQUENCES) ] HRESULT ClearAllBitSequences(); //----------------------------------------- StandardName [ propget, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_STANDARD_NAME) ]

IVI Foundation

401

IVI-4.10 IviRFSigGen Class Specification

HRESULT StandardName([in] LONG Index, [out, retval] BSTR *pVal); //----------------------------------------- StandardCount [ propget, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_STANDARD_COUNT) ] HRESULT StandardCount([out, retval] LONG *pVal); //----------------------------------------- SelectedStandard [ propput, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_SELECTED_STANDARD) ] HRESULT SelectedStandard([in] BSTR newVal); [ propget, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_SELECTED_STANDARD) ] HRESULT SelectedStandard([out, retval] BSTR *pVal); //----------------------------------------- DataSource [ propput, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_DATA_SOURCE) ] HRESULT DataSource([in] IviRFSigGenDigitalModulationBaseDataSourceEnum newVal); [ propget, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_DATA_SOURCE) ] HRESULT DataSource([out, retval] IviRFSigGenDigitalModulationBaseDataSourceEnum *pVal); //----------------------------------------- PRBSType [ propput, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_PRBS_TYPE) ] HRESULT PRBSType([in] IviRFSigGenDigitalModulationBasePRBSTypeEnum newVal); [ propget, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_PRBS_TYPE) ] HRESULT PRBSType([out, retval] IviRFSigGenDigitalModulationBasePRBSTypeEnum *pVal); //----------------------------------------- SelectedBitSequence [ propput, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_SELECTED_BIT_SEQUENCE) ] HRESULT SelectedBitSequence([in] BSTR newVal); [ propget, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_SELECTED_BIT_SEQUENCE) ] HRESULT SelectedBitSequence([out, retval] BSTR *pVal); //----------------------------------------- ClockSource [ propput, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_CLOCK_SOURCE) ] HRESULT ClockSource([in] IviRFSigGenDigitalModulationBaseClockSourceEnum newVal); [ propget, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_CLOCK_SOURCE) ] HRESULT ClockSource([out, retval] IviRFSigGenDigitalModulationBaseClockSourceEnum *pVal); //----------------------------------------- ExternalClockType [ propput, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE) ] HRESULT ExternalClockType([in] IviRFSigGenDigitalModulationBaseExternalClockTypeEnum newVal); [ propget, HELP_RFSIGGEN(DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE) ] HRESULT ExternalClockType([out, retval] IviRFSigGenDigitalModulationBaseExternalClockTypeEnum *pVal); };

//----------------------------------------------------------------------------// CDMA Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_CDMA), HELP_RFSIGGEN(I_IVI_RFSIGGEN_CDMA), oleautomation, pointer_default(unique) ] interface IIviRFSigGenCDMA : IUnknown { //----------------------------------------- StandardName [ propget, HELP_RFSIGGEN(CDMA_STANDARD_NAME) ] HRESULT StandardName([in] LONG Index, [out, retval] BSTR *pVal);

IVI-4.10 IviRFSigGen Class Specification

402

IVI Foundation

//----------------------------------------- StandardCount [ propget, HELP_RFSIGGEN(CDMA_STANDARD_COUNT) ] HRESULT StandardCount([out, retval] LONG *pVal); //----------------------------------------- SelectedStandard [ propput, HELP_RFSIGGEN(CDMA_SELECTED_STANDARD) ] HRESULT SelectedStandard([in] BSTR newVal); [ propget, HELP_RFSIGGEN(CDMA_SELECTED_STANDARD) ] HRESULT SelectedStandard([out, retval] BSTR *pVal); //----------------------------------------- TestModelName [ propget, HELP_RFSIGGEN(CDMA_TEST_MODEL_NAME) ] HRESULT TestModelName([in] LONG Index, [out, retval] BSTR *pVal); //----------------------------------------- TestModelCount [ propget, HELP_RFSIGGEN(CDMA_TEST_MODEL_COUNT) ] HRESULT TestModelCount([out, retval] LONG *pVal); //----------------------------------------- SelectedTestModel [ propput, HELP_RFSIGGEN(CDMA_SELECTED_TEST_MODEL) ] HRESULT SelectedTestModel([in] BSTR newVal); [ propget, HELP_RFSIGGEN(CDMA_SELECTED_TEST_MODEL) ] HRESULT SelectedTestModel([out, retval] BSTR *pVal); //----------------------------------------- TriggerSource [ propput, HELP_RFSIGGEN(CDMA_TRIGGER_SOURCE) ] HRESULT TriggerSource([in] IviRFSigGenCDMATriggerSourceEnum newVal); [ propget, HELP_RFSIGGEN(CDMA_TRIGGER_SOURCE) ] HRESULT TriggerSource([out, retval] IviRFSigGenCDMATriggerSourceEnum *pVal); //----------------------------------------- ExternalTriggerSlope [ propput, HELP_RFSIGGEN(CDMA_EXTERNAL_TRIGGER_SLOPE) ] HRESULT ExternalTriggerSlope([in] IviRFSigGenCDMAExternalTriggerSlopeEnum newVal); [ propget, HELP_RFSIGGEN(CDMA_EXTERNAL_TRIGGER_SLOPE) ] HRESULT ExternalTriggerSlope([out, retval] IviRFSigGenCDMAExternalTriggerSlopeEnum *pVal); //----------------------------------------- ClockSource [ propput, HELP_RFSIGGEN(CDMA_CLOCK_SOURCE) ] HRESULT ClockSource([in] IviRFSigGenCDMAClockSourceEnum newVal); [ propget, HELP_RFSIGGEN(CDMA_CLOCK_SOURCE) ] HRESULT ClockSource([out, retval] IviRFSigGenCDMAClockSourceEnum *pVal); };

//----------------------------------------------------------------------------// TDMA Interface //----------------------------------------------------------------------------[ object, uuid(UUID_IIVI_RFSIGGEN_TDMA), HELP_RFSIGGEN(I_IVI_RFSIGGEN_TDMA), oleautomation, pointer_default(unique) ] interface IIviRFSigGenTDMA : IUnknown { //----------------------------------------- ConfigureClockSource() [ HELP_RFSIGGEN(TDMA_CONFIGURE_CLOCK_SOURCE) ] HRESULT ConfigureClockSource( [in] IviRFSigGenTDMAClockSourceEnum Source, [in] IviRFSigGenTDMAExternalClockTypeEnum Type);

IVI Foundation

403

IVI-4.10 IviRFSigGen Class Specification

//----------------------------------------- StandardName [ propget, HELP_RFSIGGEN(TDMA_STANDARD_NAME) ] HRESULT StandardName([in] LONG Index, [out, retval] BSTR *pVal); //----------------------------------------- StandardCount [ propget, HELP_RFSIGGEN(TDMA_STANDARD_COUNT) ] HRESULT StandardCount([out, retval] LONG *pVal); //----------------------------------------- SelectedStandard [ propput, HELP_RFSIGGEN(TDMA_SELECTED_STANDARD) ] HRESULT SelectedStandard([in] BSTR newVal); [ propget, HELP_RFSIGGEN(TDMA_SELECTED_STANDARD) ] HRESULT SelectedStandard([out, retval] BSTR *pVal); //----------------------------------------- FrameName [ propget, HELP_RFSIGGEN(TDMA_FRAME_NAME) ] HRESULT FrameName([in] LONG Index, [out, retval] BSTR *pVal); //----------------------------------------- FrameCount [ propget, HELP_RFSIGGEN(TDMA_FRAME_COUNT) ] HRESULT FrameCount([out, retval] LONG *pVal); //----------------------------------------- SelectedFrame [ propput, HELP_RFSIGGEN(TDMA_SELECTED_FRAME) ] HRESULT SelectedFrame([in] BSTR newVal); [ propget, HELP_RFSIGGEN(TDMA_SELECTED_FRAME) ] HRESULT SelectedFrame([out, retval] BSTR *pVal); //----------------------------------------- TriggerSource [ propput, HELP_RFSIGGEN(TDMA_TRIGGER_SOURCE) ] HRESULT TriggerSource([in] IviRFSigGenTDMATriggerSourceEnum newVal); [ propget, HELP_RFSIGGEN(TDMA_TRIGGER_SOURCE) ] HRESULT TriggerSource([out, retval] IviRFSigGenTDMATriggerSourceEnum *pVal); //----------------------------------------- ExternalTriggerSlope [ propput, HELP_RFSIGGEN(TDMA_EXTERNAL_TRIGGER_SLOPE) ] HRESULT ExternalTriggerSlope([in] IviRFSigGenTDMAExternalTriggerSlopeEnum newVal); [ propget, HELP_RFSIGGEN(TDMA_EXTERNAL_TRIGGER_SLOPE) ] HRESULT ExternalTriggerSlope([out, retval] IviRFSigGenTDMAExternalTriggerSlopeEnum *pVal); //----------------------------------------- ClockSource [ propput, HELP_RFSIGGEN(TDMA_CLOCK_SOURCE) ] HRESULT ClockSource([in] IviRFSigGenTDMAClockSourceEnum newVal); [ propget, HELP_RFSIGGEN(TDMA_CLOCK_SOURCE) ] HRESULT ClockSource([out, retval] IviRFSigGenTDMAClockSourceEnum *pVal); //----------------------------------------- ExternalClockType [ propput, HELP_RFSIGGEN(TDMA_EXTERNAL_CLOCK_TYPE) ] HRESULT ExternalClockType([in] IviRFSigGenTDMAExternalClockTypeEnum newVal); [ propget, HELP_RFSIGGEN(TDMA_EXTERNAL_CLOCK_TYPE) ] HRESULT ExternalClockType([out, retval] IviRFSigGenTDMAExternalClockTypeEnum *pVal); }; #endif // !defined(IVI_RFSIGGEN_IDL_INCLUDED_)

D.3 IviRFSigGenEnglish.idl #if !defined(IVI_RFSIGGEN_IDL_ENGLISH_INCLUDED_) #define IVI_RFSIGGEN_IDL_ENGLISH_INCLUDED_

IVI-4.10 IviRFSigGen Class Specification

404

IVI Foundation

/***************************************************************************** * * (C) COPYRIGHT INTERCHANGEABLE VIRTUAL INSTRUMENTS FOUNDATION, 2001,2002 * All rights reserved. * * * FILENAME: IviRFSigGen.idl * * STATUS: APPROVED. * COMPILER: MSVC++ 6.0 MIDL compiler * CONTENT: IVI RfSigGen Standard IDL * help context IDs and help strings * *****************************************************************************/

#define HC_RFSIGGEN_BASE

1300

//------------------------------------------------------------------------// TYPEDEF ENUMS //------------------------------------------------------------------------#define HC_RFSIGGEN_HRESULTS #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define

HC_RFSIGGEN_BASE + 0

HC_RFSIGGEN_MAX_TIME_MILLISECONDS_ENUM HC_RFSIGGEN_BASE + 1 HC_RFSIGGEN_ALC_SOURCE_ENUM HC_RFSIGGEN_BASE + 2 HC_RFSIGGEN_REFERENCE_OSCILLATOR_SOURCE_ENUM HC_RFSIGGEN_BASE + 3 HC_RFSIGGEN_LFGENERATOR_WAVEFORM_ENUM HC_RFSIGGEN_BASE + 4 HC_RFSIGGEN_PULSE_EXTERNAL_POLARITY_ENUM HC_RFSIGGEN_BASE + 5 HC_RFSIGGEN_PULSE_OUTPUT_POLARITY_ENUM HC_RFSIGGEN_BASE + 6 HC_RFSIGGEN_PULSE_MODULATION_SOURCE_ENUM HC_RFSIGGEN_BASE + 7 HC_RFSIGGEN_PULSE_TRIGGER_SOURCE_ENUM HC_RFSIGGEN_BASE + 8 HC_RFSIGGEN_PULSE_EXTERNAL_TRIGGER_SLOPE_ENUM HC_RFSIGGEN_BASE + 9 HC_RFSIGGEN_SWEEP_MODE_ENUM HC_RFSIGGEN_BASE + 10 HC_RFSIGGEN_SWEEP_TRIGGER_SOURCE_ENUM HC_RFSIGGEN_BASE + 11 HC_RFSIGGEN_FREQUENCY_STEP_SCALING_ENUM HC_RFSIGGEN_BASE + 12 HC_RFSIGGEN_AM_SCALING_ENUM HC_RFSIGGEN_BASE + 13 HC_RFSIGGEN_AM_EXTERNAL_COUPLING_ENUM HC_RFSIGGEN_BASE + 14 HC_RFSIGGEN_FM_EXTERNAL_COUPLING_ENUM HC_RFSIGGEN_BASE + 15 HC_RFSIGGEN_PM_EXTERNAL_COUPLING_ENUM HC_RFSIGGEN_BASE + 16 HC_RFSIGGEN_IQ_SOURCE_ENUM HC_RFSIGGEN_BASE + 17 HC_RFSIGGEN_ARB_TRIGGER_SOURCE_ENUM HC_RFSIGGEN_BASE + 18 HC_RFSIGGEN_ARB_EXTERNAL_TRIGGER_SLOPE_ENUM HC_RFSIGGEN_BASE + 19 HC_RFSIGGEN_DIGITAL_MODULATION_BASE_DATA_SOURCE_ENUM HC_RFSIGGEN_BASE + 20 HC_RFSIGGEN_DIGITAL_MODULATION_BASE_PRBS_TYPE_ENUM HC_RFSIGGEN_BASE + 21 HC_RFSIGGEN_DIGITAL_MODULATION_BASE_CLOCK_SOURCE_ENUM HC_RFSIGGEN_BASE + 22 HC_RFSIGGEN_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_ENUM HC_RFSIGGEN_BASE + 23 HC_RFSIGGEN_CDMA_TRIGGER_SOURCE_ENUM HC_RFSIGGEN_BASE + 24 HC_RFSIGGEN_CDMA_EXTERNAL_TRIGGER_SLOPE_ENUM HC_RFSIGGEN_BASE + 25 HC_RFSIGGEN_CDMA_CLOCK_SOURCE_ENUM HC_RFSIGGEN_BASE + 26 HC_RFSIGGEN_TDMA_TRIGGER_SOURCE_ENUM HC_RFSIGGEN_BASE + 27 HC_RFSIGGEN_TDMA_EXTERNAL_TRIGGER_SLOPE_ENUM HC_RFSIGGEN_BASE + 28 HC_RFSIGGEN_TDMA_CLOCK_SOURCE_ENUM HC_RFSIGGEN_BASE + 29 HC_RFSIGGEN_TDMA_EXTERNAL_CLOCK_TYPE_ENUM HC_RFSIGGEN_BASE + 30

//----------------------------------------------------------------------------// IVI RFSigGen Driver Root Level Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN

HC_RFSIGGEN_BASE + 31

#define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_RF HC_RFSIGGEN_ALC HC_RFSIGGEN_LFGENERATOR HC_RFSIGGEN_PULSE_GENERATOR HC_RFSIGGEN_SWEEP HC_RFSIGGEN_REFERENCE_OSCILLATOR HC_RFSIGGEN_ANALOG_MODULATION

IVI Foundation

405

+ + + + + + +

32 33 34 35 36 37 38

IVI-4.10 IviRFSigGen Class Specification

#define HC_RFSIGGEN_PULSE_MODULATION #define HC_RFSIGGEN_DIGITAL_MODULATION #define HC_RFSIGGEN_SEND_SOFTWARE_TRIGGER

HC_RFSIGGEN_BASE + 39 HC_RFSIGGEN_BASE + 40 HC_RFSIGGEN_BASE + 41

//----------------------------------------------------------------------------// RF Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_RF

HC_RFSIGGEN_BASE + 42

#define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_RF_CONFIGURE HC_RFSIGGEN_FREQUENCY HC_RFSIGGEN_LEVEL HC_RFSIGGEN_OUTPUT_ENABLED HC_RFSIGGEN_IS_SETTLED HC_RFSIGGEN_WAIT_UNTIL_SETTLED HC_RFSIGGEN_DISABLE_ALL_MODULATION

+ + + + + + +

43 44 45 46 47 48 49

//----------------------------------------------------------------------------// ALC Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_ALC

HC_RFSIGGEN_BASE + 50

#define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_ALC_CONFIGURE HC_RFSIGGEN_ALC_SOURCE HC_RFSIGGEN_ALC_BANDWIDTH HC_RFSIGGEN_ALC_ENABLED

+ + + +

51 52 53 54

//----------------------------------------------------------------------------// LFGenerator Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_LFGENERATOR

HC_RFSIGGEN_BASE + 55

#define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_LFGENERATOR_OUTPUT HC_RFSIGGEN_LFGENERATOR_CONFIGURE HC_RFSIGGEN_LFGENERATOR_FREQUENCY HC_RFSIGGEN_LFGENERATOR_WAVEFORM HC_RFSIGGEN_ACTIVE_LFGENERATOR HC_RFSIGGEN_LFGENERATOR_COUNT HC_RFSIGGEN_LFGENERATOR_NAME

+ + + + + + +

56 57 58 59 60 61 62

//----------------------------------------------------------------------------// LFGeneratorOutput Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_LFGENERATOR_OUTPUT

HC_RFSIGGEN_BASE + 63

#define HC_RFSIGGEN_LFGENERATOR_OUTPUT_CONFIGURE #define HC_RFSIGGEN_LFGENERATOR_ENABLED #define HC_RFSIGGEN_LFGENERATOR_AMPLITUDE

HC_RFSIGGEN_BASE + 64 HC_RFSIGGEN_BASE + 65 HC_RFSIGGEN_BASE + 66

//----------------------------------------------------------------------------// PulseGenerator Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_PULSE_GENERATOR #define #define #define #define #define #define #define #define #define #define

HC_RFSIGGEN_BASE + 67

HC_RFSIGGEN_PULSE_GENERATOR_DOUBLE HC_RFSIGGEN_BASE + 68 HC_RFSIGGEN_PULSE_GENERATOR_OUTPUT HC_RFSIGGEN_BASE + 69 HC_RFSIGGEN_PULSE_GENERATOR_CONFIGURE HC_RFSIGGEN_BASE + 70 HC_RFSIGGEN_PULSE_GENERATOR_CONFIGURE_EXTERNAL_TRIGGER HC_RFSIGGEN_BASE + 71 HC_RFSIGGEN_PULSE_GENERATOR_INTERNAL_TRIGGER_PERIOD HC_RFSIGGEN_BASE + 72 HC_RFSIGGEN_PULSE_GENERATOR_WIDTH HC_RFSIGGEN_BASE + 73 HC_RFSIGGEN_PULSE_GENERATOR_GATING_ENABLED HC_RFSIGGEN_BASE + 74 HC_RFSIGGEN_PULSE_GENERATOR_TRIGGER_SOURCE HC_RFSIGGEN_BASE + 75 HC_RFSIGGEN_PULSE_GENERATOR_EXTERNAL_TRIGGER_SLOPE HC_RFSIGGEN_BASE + 76 HC_RFSIGGEN_PULSE_GENERATOR_EXTERNAL_TRIGGER_DELAY HC_RFSIGGEN_BASE + 77

IVI-4.10 IviRFSigGen Class Specification

406

IVI Foundation

//----------------------------------------------------------------------------// PulseGeneratorDouble Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_PULSE_GENERATOR_DOUBLE

HC_RFSIGGEN_BASE + 78

#define HC_RFSIGGEN_PULSE_GENERATOR_DOUBLE_CONFIGURE #define HC_RFSIGGEN_PULSE_GENERATOR_DOUBLE_ENABLED #define HC_RFSIGGEN_PULSE_GENERATOR_DOUBLE_DELAY

HC_RFSIGGEN_BASE + 79 HC_RFSIGGEN_BASE + 80 HC_RFSIGGEN_BASE + 81

//----------------------------------------------------------------------------// PulseGeneratorOutput Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_PULSE_GENERATOR_OUTPUT

HC_RFSIGGEN_BASE + 82

#define HC_RFSIGGEN_PULSE_GENERATOR_OUTPUT_CONFIGURE #define HC_RFSIGGEN_PULSE_GENERATOR_OUTPUT_ENABLED #define HC_RFSIGGEN_PULSE_GENERATOR_OUTPUT_POLARITY

HC_RFSIGGEN_BASE + 83 HC_RFSIGGEN_BASE + 84 HC_RFSIGGEN_BASE + 85

//----------------------------------------------------------------------------// AnalogModulation Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_ANALOG_MODULATION

HC_RFSIGGEN_BASE + 86

#define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_AM HC_RFSIGGEN_FM HC_RFSIGGEN_PM HC_RFSIGGEN_ANALOG_MODULATION_SOURCE

+ + + +

87 88 89 90

//----------------------------------------------------------------------------// AnalogModulationSource Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_ANALOG_MODULATION_SOURCE

HC_RFSIGGEN_BASE + 91

#define HC_RFSIGGEN_ANALOG_MODULATION_SOURCE_COUNT #define HC_RFSIGGEN_ANALOG_MODULATION_SOURCE_NAME

HC_RFSIGGEN_BASE + 92 HC_RFSIGGEN_BASE + 93

//----------------------------------------------------------------------------// AM Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_AM

HC_RFSIGGEN_BASE + 94

#define #define #define #define #define #define #define

HC_RFSIGGEN_BASE + HC_RFSIGGEN_BASE + HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE + HC_RFSIGGEN_BASE + HC_RFSIGGEN_BASE + HC_RFSIGGEN_BASE +

HC_RFSIGGEN_AM_CONFIGURE HC_RFSIGGEN_AM_SOURCE HC_RFSIGGEN_AM_SCALING HC_RFSIGGEN_AM_DEPTH HC_RFSIGGEN_AM_NOMINAL_VOLTAGE HC_RFSIGGEN_AM_ENABLED HC_RFSIGGEN_AM_EXTERNAL_COUPLING

95 96 + 97 98 99 100 101

//----------------------------------------------------------------------------// FM Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_FM

HC_RFSIGGEN_BASE + 102

#define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_FM_CONFIGURE HC_RFSIGGEN_FM_SOURCE HC_RFSIGGEN_FM_DEVIATION HC_RFSIGGEN_FM_NOMINAL_VOLTAGE HC_RFSIGGEN_FM_ENABLED HC_RFSIGGEN_FM_EXTERNAL_COUPLING

+ + + + + +

103 104 105 106 107 108

//-----------------------------------------------------------------------------

IVI Foundation

407

IVI-4.10 IviRFSigGen Class Specification

// PM Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_PM

HC_RFSIGGEN_BASE + 109

#define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_PM_CONFIGURE HC_RFSIGGEN_PM_SOURCE HC_RFSIGGEN_PM_DEVIATION HC_RFSIGGEN_PM_NOMINAL_VOLTAGE HC_RFSIGGEN_PM_ENABLED HC_RFSIGGEN_PM_EXTERNAL_COUPLING

+ + + + + +

110 111 112 113 114 115

//----------------------------------------------------------------------------// PulseModulation Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_PULSE_MODULATION

HC_RFSIGGEN_BASE + 116

#define HC_RFSIGGEN_PULSE_MODULATION_ENABLED #define HC_RFSIGGEN_PULSE_MODULATION_SOURCE #define HC_RFSIGGEN_PULSE_MODULATION_EXTERNAL_POLARITY

HC_RFSIGGEN_BASE + 117 HC_RFSIGGEN_BASE + 118 HC_RFSIGGEN_BASE + 119

//----------------------------------------------------------------------------// ReferenceOscillator Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_REFERENCE_OSCILLATOR

HC_RFSIGGEN_BASE + 120

#define HC_RFSIGGEN_REFERENCE_OSCILLATOR_CONFIGURE #define HC_RFSIGGEN_REFERENCE_OSCILLATOR_SOURCE #define HC_RFSIGGEN_REFERENCE_OSCILLATOR_FREQUENCY

HC_RFSIGGEN_BASE + 121 HC_RFSIGGEN_BASE + 122 HC_RFSIGGEN_BASE + 123

//----------------------------------------------------------------------------// Sweep Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_SWEEP

HC_RFSIGGEN_BASE + 124

#define #define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_FREQUENCY_SWEEP HC_RFSIGGEN_POWER_STEP HC_RFSIGGEN_FREQUENCY_STEP HC_RFSIGGEN_POWER_SWEEP HC_RFSIGGEN_LIST HC_RFSIGGEN_SWEEP_CONFIGURE HC_RFSIGGEN_SWEEP_MODE HC_RFSIGGEN_SWEEP_TRIGGER_SOURCE

+ + + + + + + +

125 126 127 128 129 130 131 132

//----------------------------------------------------------------------------// FrequencySweep Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_FREQUENCY_SWEEP

HC_RFSIGGEN_BASE + 133

#define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_FREQUENCY_SWEEP_CONFIGURE_CENTER_SPAN HC_RFSIGGEN_FREQUENCY_SWEEP_CONFIGURE_START_STOP HC_RFSIGGEN_FREQUENCY_SWEEP_START HC_RFSIGGEN_FREQUENCY_SWEEP_STOP HC_RFSIGGEN_FREQUENCY_SWEEP_TIME

+ + + + +

134 135 136 137 138

//----------------------------------------------------------------------------// PowerSweep Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_POWER_SWEEP

HC_RFSIGGEN_BASE + 139

#define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_POWER_SWEEP_CONFIGURE_START_STOP HC_RFSIGGEN_POWER_SWEEP_START HC_RFSIGGEN_POWER_SWEEP_STOP HC_RFSIGGEN_POWER_SWEEP_TIME

IVI-4.10 IviRFSigGen Class Specification

408

+ + + +

140 141 142 143

IVI Foundation

//----------------------------------------------------------------------------// FrequencyStep Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_FREQUENCY_STEP

HC_RFSIGGEN_BASE + 144

#define #define #define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_FREQUENCY_STEP_CONFIGURE_START_STOP HC_RFSIGGEN_FREQUENCY_STEP_RESET HC_RFSIGGEN_FREQUENCY_STEP_START HC_RFSIGGEN_FREQUENCY_STEP_STOP HC_RFSIGGEN_FREQUENCY_STEP_SCALING HC_RFSIGGEN_FREQUENCY_STEP_SIZE HC_RFSIGGEN_FREQUENCY_STEP_CONFIGURE_DWELL HC_RFSIGGEN_FREQUENCY_STEP_SINGLE_STEP_ENABLED HC_RFSIGGEN_FREQUENCY_STEP_DWELL

+ + + + + + + + +

145 146 147 148 149 150 151 152 153

//----------------------------------------------------------------------------// PowerStep Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_POWER_STEP

HC_RFSIGGEN_BASE + 154

#define #define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_POWER_STEP_CONFIGURE_START_STOP HC_RFSIGGEN_POWER_STEP_RESET HC_RFSIGGEN_POWER_STEP_START HC_RFSIGGEN_POWER_STEP_STOP HC_RFSIGGEN_POWER_STEP_SIZE HC_RFSIGGEN_POWER_STEP_CONFIGURE_DWELL HC_RFSIGGEN_POWER_STEP_SINGLE_STEP_ENABLED HC_RFSIGGEN_POWER_STEP_DWELL

+ + + + + + + +

155 156 157 158 159 160 161 162

//----------------------------------------------------------------------------// List Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_LIST

HC_RFSIGGEN_BASE + 163

#define #define #define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_LIST_CONFIGURE_DWELL HC_RFSIGGEN_LIST_RESET HC_RFSIGGEN_LIST_SINGLE_STEP_ENABLED HC_RFSIGGEN_LIST_DWELL HC_RFSIGGEN_LIST_SELECTED_NAME HC_RFSIGGEN_LIST_CLEAR_ALL HC_RFSIGGEN_CREATE_FREQUENCY_LIST HC_RFSIGGEN_CREATE_POWER_LIST HC_RFSIGGEN_CREATE_FREQUENCY_POWER_LIST

+ + + + + + + + +

164 165 166 167 168 169 170 171 172

//----------------------------------------------------------------------------// IQ Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_IQ

HC_RFSIGGEN_BASE + 173

#define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_IQ_IMPAIRMENT HC_RFSIGGEN_IQ_CONFIGURE HC_RFSIGGEN_IQ_SOURCE HC_RFSIGGEN_IQ_SWAP_ENABLED HC_RFSIGGEN_IQ_NOMINAL_VOLTAGE HC_RFSIGGEN_IQ_ENABLED HC_RFSIGGEN_IQ_CALIBRATE

+ + + + + + +

174 175 176 177 178 179 180

//----------------------------------------------------------------------------// IQ Impairment Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_IQ_IMPAIRMENT

HC_RFSIGGEN_BASE + 181

#define HC_RFSIGGEN_IQ_IMPAIRMENT_CONFIGURE

HC_RFSIGGEN_BASE + 182

IVI Foundation

409

IVI-4.10 IviRFSigGen Class Specification

#define #define #define #define #define

HC_RFSIGGEN_IQ_IMPAIRMENT_ENABLED HC_RFSIGGEN_IQ_IMPAIRMENT_I_OFFSET HC_RFSIGGEN_IQ_IMPAIRMENT_Q_OFFSET HC_RFSIGGEN_IQ_IMPAIRMENT_RATIO HC_RFSIGGEN_IQ_IMPAIRMENT_SKEW

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

+ + + + +

183 184 185 186 187

//----------------------------------------------------------------------------// DigitalModulation Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_DIGITAL_MODULATION

HC_RFSIGGEN_BASE + 188

#define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_IQ HC_RFSIGGEN_ARB HC_RFSIGGEN_DIGITAL_MODULATION_BASE HC_RFSIGGEN_TDMA HC_RFSIGGEN_CDMA

+ + + + +

189 190 191 192 193

//----------------------------------------------------------------------------// Arb Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_ARB

HC_RFSIGGEN_BASE + 194

#define #define #define #define #define #define #define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_ARB_CONFIGURE HC_RFSIGGEN_ARB_WRITE_WAVEFORM HC_RFSIGGEN_ARB_CLEAR_ALL_WAVEFORMS HC_RFSIGGEN_ARB_QUERY_WAVEFORM_CAPABILITIES HC_RFSIGGEN_ARB_SELECTED_WAVEFORM HC_RFSIGGEN_ARB_CLOCK_FREQUENCY HC_RFSIGGEN_ARB_FILTER_FREQUENCY HC_RFSIGGEN_ARB_MAX_NUMBER_WAVEFORMS HC_RFSIGGEN_ARB_WAVEFORM_QUANTUM HC_RFSIGGEN_ARB_WAVEFORM_SIZE_MIN HC_RFSIGGEN_ARB_WAVEFORM_SIZE_MAX HC_RFSIGGEN_ARB_TRIGGER_SOURCE HC_RFSIGGEN_ARB_TRIGGER_EXTERNAL_SLOPE

+ + + + + + + + + + + + +

195 196 197 198 199 200 201 202 203 204 205 206 207

//----------------------------------------------------------------------------// DigitalModulationBase Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_DIGITAL_MODULATION_BASE

HC_RFSIGGEN_BASE + 208

#define #define #define #define #define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_DIGITAL_MODULATION_BASE_CONFIGURE_CLOCK_SOURCE HC_RFSIGGEN_DIGITAL_MODULATION_BASE_WRITE_BIT_SEQUENCE HC_RFSIGGEN_DIGITAL_MODULATION_BASE_CLEAR_ALL_BIT_SEQUENCES HC_RFSIGGEN_DIGITAL_MODULATION_BASE_STANDARD_NAME HC_RFSIGGEN_DIGITAL_MODULATION_BASE_STANDARD_COUNT HC_RFSIGGEN_DIGITAL_MODULATION_BASE_SELECTED_STANDARD HC_RFSIGGEN_DIGITAL_MODULATION_BASE_DATA_SOURCE HC_RFSIGGEN_DIGITAL_MODULATION_BASE_PRBS_TYPE HC_RFSIGGEN_DIGITAL_MODULATION_BASE_SELECTED_BIT_SEQUENCE HC_RFSIGGEN_DIGITAL_MODULATION_BASE_CLOCK_SOURCE HC_RFSIGGEN_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE

+ + + + + + + + + + +

209 210 211 212 213 214 215 216 217 218 219

//----------------------------------------------------------------------------// CDMA Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_CDMA

HC_RFSIGGEN_BASE + 220

#define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_CDMA_STANDARD_NAME HC_RFSIGGEN_CDMA_STANDARD_COUNT HC_RFSIGGEN_CDMA_SELECTED_STANDARD HC_RFSIGGEN_CDMA_TRIGGER_SOURCE HC_RFSIGGEN_CDMA_EXTERNAL_TRIGGER_SLOPE HC_RFSIGGEN_CDMA_TEST_MODEL_NAME HC_RFSIGGEN_CDMA_TEST_MODEL_COUNT

IVI-4.10 IviRFSigGen Class Specification

410

+ + + + + + +

221 222 223 224 225 226 227

IVI Foundation

#define HC_RFSIGGEN_CDMA_SELECTED_TEST_MODEL #define HC_RFSIGGEN_CDMA_CLOCK_SOURCE

HC_RFSIGGEN_BASE + 228 HC_RFSIGGEN_BASE + 229

//----------------------------------------------------------------------------// TDMA Interface //----------------------------------------------------------------------------#define HC_RFSIGGEN_I_IVI_RFSIGGEN_TDMA

HC_RFSIGGEN_BASE + 230

#define #define #define #define #define #define #define #define #define #define #define

HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE HC_RFSIGGEN_BASE

HC_RFSIGGEN_TDMA_CONFIGURE_CLOCK_SOURCE HC_RFSIGGEN_TDMA_STANDARD_NAME HC_RFSIGGEN_TDMA_STANDARD_COUNT HC_RFSIGGEN_TDMA_SELECTED_STANDARD HC_RFSIGGEN_TDMA_TRIGGER_SOURCE HC_RFSIGGEN_TDMA_EXTERNAL_TRIGGER_SLOPE HC_RFSIGGEN_TDMA_FRAME_NAME HC_RFSIGGEN_TDMA_FRAME_COUNT HC_RFSIGGEN_TDMA_SELECTED_FRAME HC_RFSIGGEN_TDMA_CLOCK_SOURCE HC_RFSIGGEN_TDMA_EXTERNAL_CLOCK_TYPE

+ + + + + + + + + + +

231 232 233 234 235 236 237 238 239 240 241

//----------------------------------------------------------------------------// Help Strings //----------------------------------------------------------------------------//------------------------------------------------------------------------// TYPEDEF ENUMS //------------------------------------------------------------------------#define HS_RFSIGGEN_HRESULTS \ "IVI RFSigGen class defined HRESULTS" #define HS_RFSIGGEN_MAX_TIME_MILLISECONDS_ENUM \ "IVI RFSigGen class defined values for MaxTimeMilliseconds." #define HS_RFSIGGEN_ALC_SOURCE_ENUM \ "Values for the ALC source." #define HS_RFSIGGEN_REFERENCE_OSCILLATOR_SOURCE_ENUM \ "Values for the reference oscillator source." #define HS_RFSIGGEN_LFGENERATOR_WAVEFORM_ENUM \ "Values for the LFGenerator waveform." #define HS_RFSIGGEN_PULSE_EXTERNAL_POLARITY_ENUM \ "Values for the pulse modulation external polarity." #define HS_RFSIGGEN_PULSE_OUTPUT_POLARITY_ENUM \ "Values for the pulse output polarity." #define HS_RFSIGGEN_PULSE_MODULATION_SOURCE_ENUM \ "Values for the pulse modulation source." #define HS_RFSIGGEN_PULSE_TRIGGER_SOURCE_ENUM \ "Values for the pulse generator trigger source." #define HS_RFSIGGEN_PULSE_EXTERNAL_TRIGGER_SLOPE_ENUM \ "Values for the pulse generator external trigger slope." #define HS_RFSIGGEN_SWEEP_MODE_ENUM \ "Values for the sweep mode." #define HS_RFSIGGEN_SWEEP_TRIGGER_SOURCE_ENUM \ "Values for the sweep trigger source." #define HS_RFSIGGEN_FREQUENCY_STEP_SCALING_ENUM \ "Values for the frequency step scaling mode." #define HS_RFSIGGEN_AM_SCALING_ENUM \ "Values for the AM scaling mode." #define HS_RFSIGGEN_AM_EXTERNAL_COUPLING_ENUM \ "Values for the AM external coupling." #define HS_RFSIGGEN_FM_EXTERNAL_COUPLING_ENUM \ "Values for the FM external coupling." #define HS_RFSIGGEN_PM_EXTERNAL_COUPLING_ENUM \ "Values for the PM external coupling." #define HS_RFSIGGEN_IQ_SOURCE_ENUM \ "Values for the IQ modulation source." #define HS_RFSIGGEN_ARB_TRIGGER_SOURCE_ENUM \ "Values for the Arb generator trigger source." #define HS_RFSIGGEN_ARB_EXTERNAL_TRIGGER_SLOPE_ENUM \ "Values for the Arb generator external trigger slope."

IVI Foundation

411

IVI-4.10 IviRFSigGen Class Specification

#define "Values #define "Values #define "Values #define "Values #define "Values #define "Values #define "Values #define "Values #define "Values #define "Values #define "Values

HS_RFSIGGEN_DIGITAL_MODULATION_BASE_DATA_SOURCE_ENUM \ for digital modulation base data source." HS_RFSIGGEN_DIGITAL_MODULATION_BASE_PRBS_TYPE_ENUM \ for digital base modulation PRBS type." HS_RFSIGGEN_DIGITAL_MODULATION_BASE_CLOCK_SOURCE_ENUM \ for the digital modulation base clock source." HS_RFSIGGEN_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE_ENUM \ for digital base modulation clock type." HS_RFSIGGEN_CDMA_TRIGGER_SOURCE_ENUM \ for the CDMA trigger source." HS_RFSIGGEN_CDMA_EXTERNAL_TRIGGER_SLOPE_ENUM \ for the CDMA external trigger slope." HS_RFSIGGEN_CDMA_CLOCK_SOURCE_ENUM \ for the CDMA clock source." HS_RFSIGGEN_TDMA_TRIGGER_SOURCE_ENUM \ for the TDMA trigger source." HS_RFSIGGEN_TDMA_EXTERNAL_TRIGGER_SLOPE_ENUM \ for the TDMA external trigger slope." HS_RFSIGGEN_TDMA_CLOCK_SOURCE_ENUM \ for the TDMA clock source." HS_RFSIGGEN_TDMA_EXTERNAL_CLOCK_TYPE_ENUM \ for TDMA clock type."

//----------------------------------------------------------------------------// IVI RFSigGen Driver Root Level Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN \ "IVI RFSigGen class-compliant root interface" #define HS_RFSIGGEN_RF \ "Pointer to the class-compliant IIviRFSigGenRF interface" #define HS_RFSIGGEN_ALC \ "Pointer to the class-compliant IIviRFSigGenALC interface" #define HS_RFSIGGEN_LFGENERATOR \ "Pointer to the class-compliant IIviRFSigGenLFGenerator interface" #define HS_RFSIGGEN_PULSE_GENERATOR \ "Pointer to the class-compliant IIviRFSigGenPulseGenerator interface" #define HS_RFSIGGEN_SWEEP \ "Pointer to the class-compliant IIviRFSigGenSweep interface" #define HS_RFSIGGEN_REFERENCE_OSCILLATOR \ "Pointer to the class-compliant IIviRFSigGenReferenceOscillator interface" #define HS_RFSIGGEN_ANALOG_MODULATION \ "Pointer to the class-compliant IIviRFSigGenAnalogModulation interface" #define HS_RFSIGGEN_PULSE_MODULATION \ "Pointer to the class-compliant IIviRFSigGenPulseModulation interface" #define HS_RFSIGGEN_DIGITAL_MODULATION \ "Pointer to the class-compliant IIviRFSigGenDigitalModulation interface" #define HS_RFSIGGEN_IQ \ "Pointer to the class-compliant IIviRFSigGenIQ interface" #define HS_RFSIGGEN_SEND_SOFTWARE_TRIGGER \ "Sends a software trigger, which will cause the signal generator to \ start signal generation." //----------------------------------------------------------------------------// RF Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_RF \ "IVI RFSigGen class-compliant RF interface" #define HS_RFSIGGEN_RF_CONFIGURE \ "This function configures the frequency and the power level of the RF output \ signal." #define HS_RFSIGGEN_FREQUENCY \ "Specifies the frequency of the generated RF output signal." #define HS_RFSIGGEN_LEVEL \ "Specifies the amplitude (power/level) of the RF output signal." #define HS_RFSIGGEN_OUTPUT_ENABLED \

IVI-4.10 IviRFSigGen Class Specification

412

IVI Foundation

"Enables or disables the RF output signal." #define HS_RFSIGGEN_IS_SETTLED \ "This function queries the state of the RF output signal." #define HS_RFSIGGEN_WAIT_UNTIL_SETTLED \ "This function returns if the state of the RF output signal has settled." #define HS_RFSIGGEN_DISABLE_ALL_MODULATION \ "This function disables all currently enabled modulations." //----------------------------------------------------------------------------// ALC Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_ALC \ "IVI RFSigGen class-compliant Automatic Level Control (ALC) interface" #define HS_RFSIGGEN_ALC_CONFIGURE \ "This function configures the ALC (Automatic Level Control) of the signal \ generator's RF output." #define HS_RFSIGGEN_ALC_SOURCE \ "Specifies the ALC (Automatic Level Control) source." #define HS_RFSIGGEN_ALC_BANDWIDTH \ "Specifies the ALC (Automatic Level Control) bandwidth." #define HS_RFSIGGEN_ALC_ENABLED \ "Enables or disables the Automatic Level Control (ALC)." //----------------------------------------------------------------------------// LFGenerator Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_LFGENERATOR \ "IVI RFSigGen class-compliant LF generator interface" #define HS_RFSIGGEN_LFGENERATOR_OUTPUT \ "Pointer to the class-compliant IIviRFSigGenLFGeneratorOutput interface" #define HS_RFSIGGEN_LFGENERATOR_CONFIGURE \ "This function configures the LF generator output frequency and waveform." #define HS_RFSIGGEN_LFGENERATOR_FREQUENCY \ "Specifies the frequency of the active LF generator." #define HS_RFSIGGEN_LFGENERATOR_WAVEFORM \ "Specifies the waveform of the active LF generator." #define HS_RFSIGGEN_ACTIVE_LFGENERATOR \ "Selects the generator that is used as the modulating signal or for LF output." #define HS_RFSIGGEN_LFGENERATOR_COUNT \ "Returns the number of LF generators." #define HS_RFSIGGEN_LFGENERATOR_NAME \ "Returns the LF generator name for a given index." //----------------------------------------------------------------------------// LFGeneratorOutput Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_LFGENERATOR_OUTPUT \ "IVI RFSigGen class-compliant LF generator output interface" #define HS_RFSIGGEN_LFGENERATOR_OUTPUT_CONFIGURE \ "This function configures the attributes of the LF generator output (within the \ RF signal generator)." #define HS_RFSIGGEN_LFGENERATOR_ENABLED \ "Enables or disables the external LF generator output." #define HS_RFSIGGEN_LFGENERATOR_AMPLITUDE \ "Specifies the output voltage of the LF generator." //----------------------------------------------------------------------------// PulseGenerator Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_PULSE_GENERATOR \ "IVI RFSigGen class-compliant pulse generator interface"

IVI Foundation

413

IVI-4.10 IviRFSigGen Class Specification

#define HS_RFSIGGEN_PULSE_GENERATOR_DOUBLE \ "Pointer to the class-compliant IIviRFSigGenPulseGeneratorDouble interface" #define HS_RFSIGGEN_PULSE_GENERATOR_OUTPUT \ "Pointer to the class-compliant IIviRFSigGenPulseGeneratorOutput interface" #define HS_RFSIGGEN_PULSE_GENERATOR_CONFIGURE \ "This function configures the pulse generator within the RF signal generator." #define HS_RFSIGGEN_PULSE_GENERATOR_CONFIGURE_EXTERNAL_TRIGGER \ "This function configures the external trigger for the pulse generator." #define HS_RFSIGGEN_PULSE_GENERATOR_INTERNAL_TRIGGER_PERIOD \ "Specifies the period of the pulse generator's output signal." #define HS_RFSIGGEN_PULSE_GENERATOR_WIDTH \ "Specifies the width of the output pulse." #define HS_RFSIGGEN_PULSE_GENERATOR_GATING_ENABLED \ "Enables or disables trigger gating." #define HS_RFSIGGEN_PULSE_GENERATOR_TRIGGER_SOURCE \ "Specifies the source of the signal the pulse generator uses to generate one \ pulse." #define HS_RFSIGGEN_PULSE_GENERATOR_EXTERNAL_TRIGGER_SLOPE \ "Specifies whether the event occurs on the rising or falling edge of \ the trigger input signal." #define HS_RFSIGGEN_PULSE_GENERATOR_EXTERNAL_TRIGGER_DELAY \ "Specifies the delay for starting the output signal with respect to the trigger input." //----------------------------------------------------------------------------// PulseGeneratorDouble Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_PULSE_GENERATOR_DOUBLE \ "IVI RFSigGen class-compliant pulse double generator interface" #define HS_RFSIGGEN_PULSE_GENERATOR_DOUBLE_CONFIGURE \ "This function configures the double pulse state and delay." #define HS_RFSIGGEN_PULSE_GENERATOR_DOUBLE_ENABLED \ "Turns double pulse mode on/off." #define HS_RFSIGGEN_PULSE_GENERATOR_DOUBLE_DELAY \ "Specifies the delay of the second pulse." //----------------------------------------------------------------------------// PulseGeneratorOutput Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_PULSE_GENERATOR_OUTPUT \ "IVI RFSigGen class-compliant pulse generator output interface" #define HS_RFSIGGEN_PULSE_GENERATOR_OUTPUT_CONFIGURE \ "This function configures the output and polarity of the pulse generator." #define HS_RFSIGGEN_PULSE_GENERATOR_OUTPUT_ENABLED \ "Enables or disables the pulse generator external output." #define HS_RFSIGGEN_PULSE_GENERATOR_OUTPUT_POLARITY \ "Specifies the polarity of the output signal." //----------------------------------------------------------------------------// AnalogModulation Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_ANALOG_MODULATION \ "IVI RFSigGen class-compliant analog modulation interface" #define HS_RFSIGGEN_AM \ "Pointer to the class-compliant IIviRFSigGenAM interface" #define HS_RFSIGGEN_FM \ "Pointer to the class-compliant IIviRFSigGenFM interface" #define HS_RFSIGGEN_PM \ "Pointer to the class-compliant IIviRFSigGenPM interface" #define HS_RFSIGGEN_ANALOG_MODULATION_SOURCE \ "Pointer to the class-compliant IIviRFSigGenAnalogModulationSource interface" //----------------------------------------------------------------------------// AnalogModulationSource Interface //-----------------------------------------------------------------------------

IVI-4.10 IviRFSigGen Class Specification

414

IVI Foundation

#define HS_RFSIGGEN_I_IVI_RFSIGGEN_ANALOG_MODULATION_SOURCE \ "IVI RFSigGen class-compliant modulation source interface" #define HS_RFSIGGEN_ANALOG_MODULATION_SOURCE_COUNT \ "Specifies how many modulation sources are available." #define HS_RFSIGGEN_ANALOG_MODULATION_SOURCE_NAME \ "Returns the name of a particular modulation source." //----------------------------------------------------------------------------// AM Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_AM \ "IVI RFSigGen class-compliant analog modulation interface" #define HS_RFSIGGEN_AM_CONFIGURE \ "This function configures the attributes that control the signal generator's \ amplitude modulation." #define HS_RFSIGGEN_AM_SOURCE \ "Specifies the source of the signal that is used as the modulating signal." #define HS_RFSIGGEN_AM_SCALING \ "Specifies linear or logarithmic attenuation for amplitude modulation." #define HS_RFSIGGEN_AM_DEPTH \ "Specifies the extent of modulation the signal generator applies to the RF-signal." #define HS_RFSIGGEN_AM_NOMINAL_VOLTAGE \ "Returns the voltage at which the instrument achieves the amount of modulation \ specified by the AM Depth attribute." #define HS_RFSIGGEN_AM_ENABLED \ "Specifies whether the signal generator enables or disables amplitude modulation of \ the RF output signal." #define HS_RFSIGGEN_AM_EXTERNAL_COUPLING \ "Specifies the coupling of the external source of the modulating signal." //----------------------------------------------------------------------------// FM Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_FM \ "IVI RFSigGen class-compliant frequency modulation interface" #define HS_RFSIGGEN_FM_CONFIGURE \ "This function configures the attributes that control the signal generator's \ frequency modulation." #define HS_RFSIGGEN_FM_SOURCE \ "Specifies the source of the signal that is used as the modulating signal." #define HS_RFSIGGEN_FM_DEVIATION \ "Specifies the extent of modulation (peak frequency deviation) the signal generator \ applies to the RF-signal." #define HS_RFSIGGEN_FM_NOMINAL_VOLTAGE \ "Returns the voltage at which the instrument achieves the amount of modulation \ specified by the FM Deviation attribute." #define HS_RFSIGGEN_FM_ENABLED \ "Specifies whether the signal generator enables or disables frequency modulation of \ the RF output signal." #define HS_RFSIGGEN_FM_EXTERNAL_COUPLING \ "Specifies the coupling of the external source of the modulating signal." //----------------------------------------------------------------------------// PM Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_PM \ "IVI RFSigGen class-compliant phase modulation interface" #define HS_RFSIGGEN_PM_CONFIGURE \ "This function configures the attributes that control the signal generator's \ phase modulation." #define HS_RFSIGGEN_PM_SOURCE \

IVI Foundation

415

IVI-4.10 IviRFSigGen Class Specification

"Specifies the source of the signal that is used as the modulating signal." #define HS_RFSIGGEN_PM_DEVIATION \ "Specifies the extent of modulation (peak phase deviation) the signal generator \ applies to the RF-signal." #define HS_RFSIGGEN_PM_NOMINAL_VOLTAGE \ "Returns the voltage at which the instrument achieves the amount of modulation \ specified by the PM Deviation attribute." #define HS_RFSIGGEN_PM_ENABLED \ "Specifies whether the signal generator enables or disables phase modulation of \ the RF output signal." #define HS_RFSIGGEN_PM_EXTERNAL_COUPLING \ "Specifies the coupling of the external source of the modulating signal." //----------------------------------------------------------------------------// PulseModulation Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_PULSE_MODULATION \ "IVI RFSigGen class-compliant pulse modulation interface" #define HS_RFSIGGEN_PULSE_MODULATION_ENABLED \ "Enables or disables pulse modulation of the RF output signal." #define HS_RFSIGGEN_PULSE_MODULATION_SOURCE \ "Specifies the source of the signal that is used as the modulating signal." #define HS_RFSIGGEN_PULSE_MODULATION_EXTERNAL_POLARITY \ "Specifies the polarity of the external source signal." //----------------------------------------------------------------------------// ReferenceOscillator Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_REFERENCE_OSCILLATOR \ "IVI RFSigGen class-compliant reference oscillator interface" #define HS_RFSIGGEN_REFERENCE_OSCILLATOR_CONFIGURE \ "This function configures the signal generator's reference oscillator." #define HS_RFSIGGEN_REFERENCE_OSCILLATOR_SOURCE \ "Specifies the reference oscillator source." #define HS_RFSIGGEN_REFERENCE_OSCILLATOR_FREQUENCY \ "Specifies the frequency of the external signal, which is used as reference \ for internal RF frequency generation." //----------------------------------------------------------------------------// Sweep Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_SWEEP \ "IVI RFSigGen class-compliant sweep interface" #define HS_RFSIGGEN_FREQUENCY_SWEEP \ "Pointer to the class-compliant IIviRFSigGenFrequencySweep interface" #define HS_RFSIGGEN_POWER_SWEEP \ "Pointer to the class-compliant IIviRFSigGenPowerSweep interface" #define HS_RFSIGGEN_FREQUENCY_STEP \ "Pointer to the class-compliant IIviRFSigGenFrequencyStep interface" #define HS_RFSIGGEN_POWER_STEP \ "Pointer to the class-compliant IIviRFSigGenPowerStep interface" #define HS_RFSIGGEN_LIST \ "Pointer to the class-compliant IIviRFSigGenList interface" #define HS_RFSIGGEN_SWEEP_CONFIGURE \ "This function configures the signal generator whether the RF output signal is a \ continuous wave or the frequency, the power level or both are swept or stepped." #define HS_RFSIGGEN_SWEEP_MODE \ "Specifies whether the RF output signal is a continuous wave or the frequency, \ the power level or both are swept or stepped." #define HS_RFSIGGEN_SWEEP_TRIGGER_SOURCE \ "Specifies the way to start the sweep or run the sweep continuously." //-----------------------------------------------------------------------------

IVI-4.10 IviRFSigGen Class Specification

416

IVI Foundation

// FrequencySweep Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_FREQUENCY_SWEEP \ "IVI RFSigGen class-compliant frequency sweep interface" #define HS_RFSIGGEN_FREQUENCY_SWEEP_CONFIGURE_CENTER_SPAN \ "This function configures the center frequency and the frequency span for the sweep." #define HS_RFSIGGEN_FREQUENCY_SWEEP_CONFIGURE_START_STOP \ "This function configures the start and the stop frequency for the sweep." #define HS_RFSIGGEN_FREQUENCY_SWEEP_START \ "Specifies the start frequency of the sweep." #define HS_RFSIGGEN_FREQUENCY_SWEEP_STOP \ "Specifies the stop frequency of the sweep." #define HS_RFSIGGEN_FREQUENCY_SWEEP_TIME \ "Specifies the duration of one sweep from start to stop frequency." //----------------------------------------------------------------------------// PowerSweep Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_POWER_SWEEP \ "IVI RFSigGen class-compliant power sweep interface" #define HS_RFSIGGEN_POWER_SWEEP_CONFIGURE_START_STOP \ "This function configures the start and the stop power for the sweep." #define HS_RFSIGGEN_POWER_SWEEP_START \ "Specifies the start power of the sweep." #define HS_RFSIGGEN_POWER_SWEEP_STOP \ "Specifies the stop power of the sweep." #define HS_RFSIGGEN_POWER_SWEEP_TIME \ "Specifies the duration of one sweep from start to stop power." //----------------------------------------------------------------------------// FrequencyStep Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_FREQUENCY_STEP \ "IVI RFSigGen class-compliant frequency step interface" #define HS_RFSIGGEN_FREQUENCY_STEP_CONFIGURE_START_STOP \ "This function configures the attributes that control the step frequencies \ of the generator's RF output signal." #define HS_RFSIGGEN_FREQUENCY_STEP_RESET \ "This function resets the stepping if single step is enabled." #define HS_RFSIGGEN_FREQUENCY_STEP_START \ "Specifies the start frequency of the stepped sweep." #define HS_RFSIGGEN_FREQUENCY_STEP_STOP \ "Specifies the stop frequency of the stepped sweep." #define HS_RFSIGGEN_FREQUENCY_STEP_SCALING \ "Specifies the spacing of the steps." #define HS_RFSIGGEN_FREQUENCY_STEP_SIZE \ "Specifies the step size." #define HS_RFSIGGEN_FREQUENCY_STEP_CONFIGURE_DWELL \ "This function configures the attributes that control the stepping." #define HS_RFSIGGEN_FREQUENCY_STEP_SINGLE_STEP_ENABLED \ "Turns single step on/off." #define HS_RFSIGGEN_FREQUENCY_STEP_DWELL \ "Specifies the duration of one step." //----------------------------------------------------------------------------// PowerStep Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_POWER_STEP \ "IVI RFSigGen class-compliant power step interface" #define HS_RFSIGGEN_POWER_STEP_CONFIGURE_START_STOP \ "This function configures the attributes that control the power steps \

IVI Foundation

417

IVI-4.10 IviRFSigGen Class Specification

of the generator's RF output signal." #define HS_RFSIGGEN_POWER_STEP_RESET \ "This function resets the stepping if single step is enabled." #define HS_RFSIGGEN_POWER_STEP_START \ "Specifies the start power of the stepped sweep." #define HS_RFSIGGEN_POWER_STEP_STOP \ "Specifies the stop power of the stepped sweep." #define HS_RFSIGGEN_POWER_STEP_SIZE \ "Specifies the step size." #define HS_RFSIGGEN_POWER_STEP_CONFIGURE_DWELL \ "This function configures the attributes that control the stepping." #define HS_RFSIGGEN_POWER_STEP_SINGLE_STEP_ENABLED \ "Turns single step on/off." #define HS_RFSIGGEN_POWER_STEP_DWELL \ "Specifies the duration of one step." //----------------------------------------------------------------------------// List Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_LIST \ "IVI RFSigGen class-compliant sweep list interface" #define HS_RFSIGGEN_LIST_CONFIGURE_DWELL \ "This function configures the attributes that control the stepping." #define HS_RFSIGGEN_LIST_RESET \ "This function resets the stepping if single step is enabled." #define HS_RFSIGGEN_LIST_SINGLE_STEP_ENABLED \ "Turns single step on/off." #define HS_RFSIGGEN_LIST_DWELL \ "Specifies the duration of one step." #define HS_RFSIGGEN_LIST_SELECTED_NAME \ "Specifies the name of the selected list to become active." #define HS_RFSIGGEN_LIST_CLEAR_ALL \ "This function deletes all lists from the pool of lists." #define HS_RFSIGGEN_CREATE_FREQUENCY_LIST \ "This function creates a named list of frequency values." #define HS_RFSIGGEN_CREATE_POWER_LIST \ "This function creates a named list of power values." #define HS_RFSIGGEN_CREATE_FREQUENCY_POWER_LIST \ "This function creates a named list of frequency and power value pairs." //----------------------------------------------------------------------------// IQ Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_IQ \ "IVI RFSigGen class-compliant IQ modulation interface" #define HS_RFSIGGEN_IQ_IMPAIRMENT \ "Pointer to the class-compliant IIviRFSigGenIQImpairment interface" #define HS_RFSIGGEN_IQ_CONFIGURE \ "This function configures the attributes that control the signal generator's \ IQ modulation." #define HS_RFSIGGEN_IQ_SOURCE \ "Specifies the source of the signal that the signal generator uses for IQ \ modulation." #define HS_RFSIGGEN_IQ_SWAP_ENABLED \ "Enables or disables the inverse phase rotation of the IQ signal by swapping the \ I and Q inputs." #define HS_RFSIGGEN_IQ_NOMINAL_VOLTAGE \ "Returns the voltage at which the instrument achieves full modulation." #define HS_RFSIGGEN_IQ_ENABLED \ "Enables or disables IQ (vector) modulation of the RF output signal." #define HS_RFSIGGEN_IQ_CALIBRATE \ "This function performs a calibration of the IQ modulator." //----------------------------------------------------------------------------// IQImpairment Interface

IVI-4.10 IviRFSigGen Class Specification

418

IVI Foundation

//----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_IQ_IMPAIRMENT \ "IVI RFSigGen class-compliant IQ modulation impairment interface" #define HS_RFSIGGEN_IQ_IMPAIRMENT_CONFIGURE \ "This function configures the attributes that simulate or correct impairment \ for the signal generator's IQ (vector) modulation." #define HS_RFSIGGEN_IQ_IMPAIRMENT_ENABLED \ "Enables or disables impairment attributes." #define HS_RFSIGGEN_IQ_IMPAIRMENT_I_OFFSET \ "Specifies an origin offset voltage to the I signal." #define HS_RFSIGGEN_IQ_IMPAIRMENT_Q_OFFSET \ "Specifies an origin offset voltage to the Q signal." #define HS_RFSIGGEN_IQ_IMPAIRMENT_RATIO \ "Specifies the gain imbalance between the I and Q channels." #define HS_RFSIGGEN_IQ_IMPAIRMENT_SKEW \ "Specifies the adjustment of the phase angle between the I and Q vectors." //----------------------------------------------------------------------------// DigitalModulation Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_DIGITAL_MODULATION \ "IVI RFSigGen class-compliant digital modulation interface" #define HS_RFSIGGEN_ARB \ "Pointer to the class-compliant IIviRFSigGenArb interface" #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE \ "Pointer to the class-compliant IIviRFSigGenDigitalModulationBase interface" #define HS_RFSIGGEN_TDMA \ "Pointer to the class-compliant IIviRFSigGenTDMA interface" #define HS_RFSIGGEN_CDMA \ "Pointer to the class-compliant IIviRFSigGenCDMA interface" //----------------------------------------------------------------------------// Arb Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_ARB \ "IVI RFSigGen class-compliant ARB generator interface" #define HS_RFSIGGEN_ARB_CONFIGURE \ "This function configures the ARB generator." #define HS_RFSIGGEN_ARB_WRITE_WAVEFORM \ "This function stores the waveform in the driver's or instrument's memory." #define HS_RFSIGGEN_ARB_CLEAR_ALL_WAVEFORMS \ "This function deletes all waveforms from the pool of waveforms." #define HS_RFSIGGEN_ARB_QUERY_WAVEFORM_CAPABILITIES \ "This function returns the capabilities of the ARB generator." #define HS_RFSIGGEN_ARB_SELECTED_WAVEFORM \ "Specifies the selected waveform from the pool of available waveforms." #define HS_RFSIGGEN_ARB_CLOCK_FREQUENCY \ "Specifies the sample frequency." #define HS_RFSIGGEN_ARB_FILTER_FREQUENCY \ "Specifies the cut off frequency of the low pass filter." #define HS_RFSIGGEN_ARB_MAX_NUMBER_WAVEFORMS \ "Specifies the maximum number of waveforms the instrument can hold in memory." #define HS_RFSIGGEN_ARB_WAVEFORM_QUANTUM \ "The waveform length must be a multiple of this quantum." #define HS_RFSIGGEN_ARB_WAVEFORM_SIZE_MIN \ "The waveform length must be equal or greater than min size." #define HS_RFSIGGEN_ARB_WAVEFORM_SIZE_MAX \ "The waveform length must be equal or less than max size." #define HS_RFSIGGEN_ARB_TRIGGER_SOURCE \ "Specifies the trigger source for the ARB waveform." #define HS_RFSIGGEN_ARB_TRIGGER_EXTERNAL_SLOPE \ "Specifies whether the trigger event occurs on the rising or falling edge of \ the input signal."

IVI Foundation

419

IVI-4.10 IviRFSigGen Class Specification

//----------------------------------------------------------------------------// DigitalModulationBase Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_DIGITAL_MODULATION_BASE \ "IVI RFSigGen class-compliant digital modulation base interface" #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE_CONFIGURE_CLOCK_SOURCE \ "This function configures the clock source." #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE_WRITE_BIT_SEQUENCE \ "This function writes the bit sequence used as data for the digital \ base modulation." #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE_CLEAR_ALL_BIT_SEQUENCES \ "This function deletes all named bit sequences." #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE_STANDARD_NAME \ "Returns the standard name for the given index. (??)" #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE_STANDARD_COUNT \ "Returns the count of available standards for digital base modulation." #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE_SELECTED_STANDARD \ "Specifies the actual standard used by the instrument." #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE_DATA_SOURCE \ "Specifies the source of data for digital base modulation." #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE_PRBS_TYPE \ "Specifies the type of PRBS for digital base modulation." #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE_SELECTED_BIT_SEQUENCE \ "Specifies name of bit sequence used as data for digital modulation." #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE_CLOCK_SOURCE \ "Specifies the source of the clock signal used to generate the digital modulation \ according to the selected standard." #define HS_RFSIGGEN_DIGITAL_MODULATION_BASE_EXTERNAL_CLOCK_TYPE \ "Specifies the type of the external clock signal used to generate the digital \ modulation." //----------------------------------------------------------------------------// CDMA Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_CDMA \ "IVI RFSigGen class-compliant CDMA base interface" #define HS_RFSIGGEN_CDMA_STANDARD_NAME \ "Returns the standard name for the given index." #define HS_RFSIGGEN_CDMA_STANDARD_COUNT \ "Returns the count of available standards for CDMA modulation." #define HS_RFSIGGEN_CDMA_SELECTED_STANDARD \ "Specifies the actual standard used by the instrument." #define HS_RFSIGGEN_CDMA_TRIGGER_SOURCE \ "Specifies the trigger source for starting the signal generation." #define HS_RFSIGGEN_CDMA_EXTERNAL_TRIGGER_SLOPE \ "Specifies whether the trigger event occurs on the rising or falling edge of \ the input signal." #define HS_RFSIGGEN_CDMA_TEST_MODEL_NAME \ "Returns the selected test model name. (??)" #define HS_RFSIGGEN_CDMA_TEST_MODEL_COUNT \ "Returns the count of available test models." #define HS_RFSIGGEN_CDMA_SELECTED_TEST_MODEL \ "Specifies the actual test model used by the instrument." #define HS_RFSIGGEN_CDMA_CLOCK_SOURCE \ "Specifies the source of the clock signal used to generate the digital modulation." //----------------------------------------------------------------------------// TDMA Interface //----------------------------------------------------------------------------#define HS_RFSIGGEN_I_IVI_RFSIGGEN_TDMA \ "IVI RFSigGen class-compliant TDMA base interface" #define HS_RFSIGGEN_TDMA_CONFIGURE_CLOCK_SOURCE \

IVI-4.10 IviRFSigGen Class Specification

420

IVI Foundation

"This function configures the clock source." #define HS_RFSIGGEN_TDMA_STANDARD_NAME \ "Returns the standard name for the given index." #define HS_RFSIGGEN_TDMA_STANDARD_COUNT \ "Returns the count of available standards for TDMA modulation." #define HS_RFSIGGEN_TDMA_SELECTED_STANDARD \ "Specifies the actual standard used by the instrument." #define HS_RFSIGGEN_TDMA_TRIGGER_SOURCE \ "Specifies the source of the trigger signal starting the generation of the \ frame/slot." #define HS_RFSIGGEN_TDMA_EXTERNAL_TRIGGER_SLOPE \ "Specifies whether the trigger event occurs on the rising or falling edge of \ the input signal." #define HS_RFSIGGEN_TDMA_FRAME_NAME \ "Returns the frame name for the given index (??)." #define HS_RFSIGGEN_TDMA_FRAME_COUNT \ "Returns the count of available frame names." #define HS_RFSIGGEN_TDMA_SELECTED_FRAME \ "Specifies the actual frame/slot used by the instrument." #define HS_RFSIGGEN_TDMA_CLOCK_SOURCE \ "Specifies the source of the clock signal used to generate the digital modulation \ according to the selected standard." #define HS_RFSIGGEN_TDMA_EXTERNAL_CLOCK_TYPE \ "Specifies the type of the external clock signal used to generate the digital \ modulation."

#endif // !defined(IVI_RFSIGGEN_IDL_ENGLISH_INCLUDED_)

IVI Foundation

421

IVI-4.10 IviRFSigGen Class Specification

Related Documents

Ivi-4.10 Rfsiggen V1
November 2019 3
V1
May 2020 25
V1
May 2020 18
V1
July 2020 13
V1
June 2020 17
V1
May 2020 15