static void Main(string[] args) { ZenClientHandle_t zenHandle = new ZenClientHandle_t(); OpenZen.ZenInit(zenHandle); ExThread obj = new ExThread(zenHandle); // Creating thread // Using thread class Thread thr = new Thread(new ThreadStart(obj.sensorEventThread)); thr.Start(); // start sensor listing, new sensors will be reported as Events in our event thread OpenZen.ZenListSensorsAsync(zenHandle); while (!obj.mSearchDone) { Console.WriteLine("Searching for sensors ..."); Thread.Sleep(1000); } if (obj.mFoundSensors.Count == 0) { Console.WriteLine("No sensor found on the system"); OpenZen.ZenShutdown(zenHandle); thr.Abort(); return; } ZenSensorInitError sensorInitError = ZenSensorInitError.ZenSensorInitError_Max; // try three connection attempts for (int i = 0; i < 3; i++) { ZenSensorHandle_t sensorHandle = new ZenSensorHandle_t(); sensorInitError = OpenZen.ZenObtainSensor(zenHandle, obj.mFoundSensors[0], sensorHandle); Console.WriteLine("Connecting to sensor " + obj.mFoundSensors[0].identifier + " on IO interface " + obj.mFoundSensors[0].ioType); if (sensorInitError == ZenSensorInitError.ZenSensorInitError_None) { Console.WriteLine("Succesfully connected to sensor"); break; } } if (sensorInitError != ZenSensorInitError.ZenSensorInitError_None) { Console.WriteLine("Could not connect to sensor"); System.Environment.Exit(1); } // stream some data Thread.Sleep(5000); OpenZen.ZenShutdown(zenHandle); thr.Abort(); }
public static void main() { // Start of Code ZenClientHandle_t zenHandle = new ZenClientHandle_t(); OpenZen.ZenInit(zenHandle); ExThread obj = new ExThread(zenHandle); // Creating thread // Using thread class thr = new Thread(new ThreadStart(obj.sensorEventThread)); thr.Start(); // start sensor listing, new sensors will be reported as Events in our event thread OpenZen.ZenListSensorsAsync(zenHandle); while (!obj.mSearchDone) { Console.WriteLine("Searching for sensors ..."); Thread.Sleep(1000); } ZenSensorInitError sensorInitError = ZenSensorInitError.ZenSensorInitError_Max; // try three connection attempts for (int i = 0; i < 10; i++) { ZenSensorHandle_t sensorHandle = new ZenSensorHandle_t(); sensorInitError = OpenZen.ZenObtainSensor(zenHandle, obj.mFoundSensors[0], sensorHandle); if (sensorInitError == ZenSensorInitError.ZenSensorInitError_None) { Console.WriteLine("Succesfully connected to sensor"); break; } } if (sensorInitError != ZenSensorInitError.ZenSensorInitError_None) { Console.WriteLine("Could not connect to sensor"); System.Environment.Exit(1); } }
private void retrieve_Port_Click(object sender, EventArgs e) { foundSensors.Clear(); device_List1.Items.Clear(); device_List2.Items.Clear(); device_List3.Items.Clear(); device_List4.Items.Clear(); OpenZen.ZenInit(zenHandle); ZenEvent zenEvent = new ZenEvent(); Boolean searchDone = false; // start sensor listing, new sensors will be reported as Events in our event thread OpenZen.ZenListSensorsAsync(zenHandle); // Searching for device while (searchDone == false) { if (OpenZen.ZenWaitForNextEvent(zenHandle, zenEvent) && zenEvent.component.handle == 0) { // Handle Event switch (zenEvent.eventType) { case (int)ZenSensorEvent.ZenSensorEvent_SensorFound: //MessageBox.Show("Device : " + zenEvent.data.sensorFound.name); ZenSensorDesc sensor = new ZenSensorDesc(); sensor.identifier = zenEvent.data.sensorFound.identifier; sensor.baudRate = zenEvent.data.sensorFound.baudRate; sensor.ioType = zenEvent.data.sensorFound.ioType; sensor.name = zenEvent.data.sensorFound.name; sensor.serialNumber = zenEvent.data.sensorFound.serialNumber; foundSensors.Add(sensor); break; case (int)ZenSensorEvent.ZenSensorEvent_SensorListingProgress: if (zenEvent.data.sensorListingProgress.progress == 1.0) { searchDone = true; } break; } } } // Listing Connected Device if (foundSensors.Count > 0) { for (int i = 0; i < foundSensors.Count; i++) { device_List1.Items.Add(foundSensors[i].name); device_List2.Items.Add(foundSensors[i].name); device_List3.Items.Add(foundSensors[i].name); device_List4.Items.Add(foundSensors[i].name); } device_List1.SelectedIndex = 0; device_List2.SelectedIndex = 0; device_List3.SelectedIndex = 0; device_List4.SelectedIndex = 0; } else { MessageBox.Show("No Sensor Device is found"); } }