Software Components

This page should give you a quick overview of the EnsensoSDK software components and how they interact.

Dependency Overview

EnsensoSDKComponents

Libraries

NxLib

This is the core library containing all the stereo processing and camera interface functionality. It uses the uEye API or the built-in GigE Vision transport layer interface for hardware access to the cameras.

NxLibRemote

This DLL provides remote access to the parameter tree inside a loaded NxLib instance. The connection to a running instance is established via TCP. Items of the parameter tree can be read, modified and created using the same functions as in NxLib itself. Since each XR camera runs its own NxLib instance, NxLibRemote can also connect directly to an XR camera.

Halcon Interface (hAcqEnsenso-NxLib.dll)

This library provides access to the normal NxLib API from within Halcon and HDevelop. It simply wraps the tree access functions of NxLib to Halcons get_ and set_framegrabber_param functions.

Tools

NxView

nxview_apples

This is the central application demonstrating the most important features contained in NxLib. NxView provides hints on almost all GUI elements with links into this manual to give you a quick idea how every function is implemented. The source code is also available and can be found in the installation folder.

NxTreeEdit

nxtreeedit

This application allows you to spy on and alter the current API state. NxView will by default open a TCP port, so that you can use NxTreeEdit to connect to it. To simply play with the API you can open a camera in NxView, and then use NxTreeEdit to look at it’s parameter tree. You might start by just altering the AutoExposure and Exposure settings of the opened camera and see what’s happening to the images in NxView.

NxProfiler

nxprofiler

NxProfiler is a tool to visualize and filter NxLib debug data. Please read the topic Exporting Debug Information for further details on how to write compatible debug files.

NxCalTab

nxcaltab

This is a standalone utility that allows you to generate calibration patterns of arbitrary size in the PDF file format. It can encode the spacing of the pattern dots and the pattern thickness into the pattern. This information can then be used when detecting the pattern with NxLib to directly identify the real world pattern size and thickness of the substrate.