public static VehicleScapeAPI.Result Generate(GenerateParameters parameters, uint daqHandle, uint deviceHandle) { if (daqHandle == 0 || deviceHandle == 0) { return(VehicleScapeAPI.Result.ResultInvalidHandle); } // Set up our DAQ VehicleScapeAPI.DAQ daq = GetDAQByHandle(daqHandle); VehicleScapeAPI.SetDAQProperties(ref daq); // Set up our collection List <VehicleScapeAPI.DAQCollection> cols = GetDAQCollections(daqHandle); if (cols.Count == 0) { return(VehicleScapeAPI.Result.ResultUnableToSetupForCompile); } VehicleScapeAPI.DAQCollection col = cols[0]; col.fileName = parameters.Name; col.stopNumMessages.numMessages = parameters.NumberOfMessagesToCollect; col.collectionType = VehicleScapeAPI.CollectionType.StartImmediatelyStopNumMessage; VehicleScapeAPI.SetDAQCollectionProperties(ref col); List <uint> channelHandles = new List <uint>(); channelHandles.AddRange(parameters.MessageHandles); channelHandles.AddRange(parameters.SignalHandles); List <VehicleScapeAPI.DAQChannel> channels = new List <VehicleScapeAPI.DAQChannel>(); // Set up our channels foreach (uint handle in channelHandles) { VehicleScapeAPI.DAQChannel channel = new VehicleScapeAPI.DAQChannel(); channel.signalHandle = handle; VehicleScapeAPI.AddDAQChannel(daqHandle, handle, ref channel); VehicleScapeAPI.SetAlwaysCollectDAQChannel(handle); channels.Add(channel); } VehicleScapeAPI.Result retv = VehicleScapeAPI.GenerateCoreMini(daqHandle, deviceHandle); // Clear out the channels foreach (VehicleScapeAPI.DAQChannel channel in channels) { VehicleScapeAPI.RemoveDAQChannel(channel.signalHandle); } return(retv); }
private void GenerateButton_Click(object sender, EventArgs e) { if (GetSelectedDAQHandle() == 0 || GetSelectedDeviceHandle() == 0) { MessageBox.Show("You must select a DAQ and a device to generate a CoreMini."); return; } UpdateDAQ(); List <uint> messageHandles = new List <uint>(); List <uint> signalHandles = new List <uint>(); foreach (ListViewItem item in SelectedChannelsListView.Items) { TagMetadata metadata = (TagMetadata)item.Tag; if (metadata.Type == TagMetadata.MetadataType.Message) { messageHandles.Add(metadata.Handle); } else { signalHandles.Add(metadata.Handle); } } GenerateParameters parameters = new GenerateParameters( messageHandles, signalHandles, CollectionNameTextBox.Text, int.Parse(MessageCountTextBox.Text), SleepMode, WakeMode, double.Parse(BusActivityThresholdTextBox.Text), RemoteWakeupCheckBox.Checked, StartNewFileOnWakeupCheckBox.Checked, double.Parse(OverallTimeoutTextBox.Text), double.Parse(ConnectionTimeoutTextBox.Text), double.Parse(VoltageCutoffTextBox.Text)); Log("Generating CoreMini."); VehicleScapeAPI.Result result = VehicleScapeInterface.Generate(parameters, GetSelectedDAQHandle(), GetSelectedDeviceHandle()); Log("Result: " + VehicleScapeAPI.ResultToString(result)); }