Agilent Technologies 86038A User Manual page 162

Optical dispersion analyzer
Table of Contents

Advertisement

Remote Operation
162
Complete source code
Option Explicit
' Declare the odaClient.
Private WithEvents odaClient As RemoteClient.Communicator
Private Sub Form_Load()
' Instantiate the odaClient
Set odaClient = New RemoteClient.Communicator
End Sub
Private Sub Form_Unload(Cancel As Integer)
' Disconnect from ODA and clean up on our side
odaClient.Connectivity.Disconnect
odaClient.Connectivity.TerminateSession
End Sub
Private Sub odaClient_NewStatus(ByVal Message As String, ByVal Mes-
sageType As InstrumentObjects.eEventLogType)
' Let the user know something happened
lblStatus.Caption = Message
End Sub
Private Sub odaClient_TriggerProgress(ByVal progress As InstrumentOb-
jects.enumStatus, ByVal eTriggerMode As InstrumentObjects.enumAcqui-
sitionMode)
If eTriggerMode = enumAcquisitionMode_eMeasurement Then
If progress = enumStatus_COMPLETE Then
sendDataToFile ("c:\mydata.txt")
End If
End If
End Sub
Private Sub sendDataToFile(ByVal fileName As String)
Dim gainData() As Double
Dim xStart As Double
Dim xStop As Double
Dim xStep As Double
Dim npoin As Integer
Dim cnt As Integer
Dim idx As Integer
Dim buf As String
' Get the data and figure out the wavelength axis
gainData = odaClient.Results.YData _
(eMeasurementType_Gain,eODAPort_One)
npoin = UBound(gainData) - LBound(gainData)+1
xStart = odaClient.Results.xStart(eMeasurementType_Gain)
xStop = odaClient.Results.xStop(eMeasurementType_Gain)
xStep = (xStop - xStart) / (npoin - 1)
' Open the file and write the data
Dim outputFileNum As Integer
outputFileNum = 123
Open fileName For Output As outputFileNum
Write #outputFileNum, "Sample ODA File written from VB 6.0"
Write #outputFileNum, Now
Write #outputFileNum, "Wavelength (nm)", "Gain (dB)"
idx = 0
For cnt = LBound(gainData) To UBound(gainData)
buf = CStr(xStart + xStep * idx) + "," + CStr(gainData(cnt))
Write #outputFileNum, xStart + xStep * idx, gainData(cnt)
idx = idx + 1
Example 1: Simple Application for Controlling the ODA
Agilent 86038A Optical Dispersion Analyzer, Third Edition

Advertisement

Table of Contents
loading

Table of Contents