Common Vision Blox 15.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Friends Modules Pages
ImageManager/Cvb.Net/SimpleStreamingGen3

This example program is located in your CVB installation under %CVB%Tutorial/ImageManager/Cvb.Net/SimpleStreamingGen3.

Program.cs:

// Example for simple streaming with the 3rd generation acquisition stack.

using System;
namespace SimpleStreamingGen3
{
class SimpleStreamingGen3
{
static void Main(string[] args)
{
using (var devices = DeviceFactory.Discover(DiscoverFlags.IgnoreVins))
{
using (var device = DeviceFactory.Open(devices[0], AcquisitionStack.GenTL))
{
var stream = ((GenICamDevice)device).GetStream<CompositeStream>(0);
stream.Start();
for (int i = 0; i < 10; i++)
{
WaitStatus status;
using (var composite = stream.Wait(out status))
{
using (var nodeMaps = NodeMapDictionary.FromComposite(composite))
{
Console.WriteLine($"Acquired image: {i}");
if (composite.Purpose == CompositePurpose.Image)
Console.WriteLine("is image");
else if (composite.Purpose == CompositePurpose.ImageList)
Console.WriteLine("is image list");
else if (composite.Purpose == CompositePurpose.MultiAoi)
Console.WriteLine("is multi aoi");
else if (composite.Purpose == CompositePurpose.RangeMap)
Console.WriteLine("is range map");
else if (composite.Purpose == CompositePurpose.PointCloud)
Console.WriteLine("is point cloud");
else if (composite.Purpose == CompositePurpose.ImageCube)
Console.WriteLine("is image cube");
else if (composite.Purpose == CompositePurpose.Custom)
Console.WriteLine("is custom");
else
Console.WriteLine("is something else");
}
}
}
stream.Abort();
}
}
}
}
}
static Device Open(DiscoveryInformation info, AcquisitionStack acquisitionStack=AcquisitionStack.PreferVin)
static DiscoveryInformationList Discover()
static NodeMapDictionary FromComposite(Composite composite)