Skip to content

Instant Camera#

Instant Camera classes make it possible to grab images with a few lines of code reducing the programming effort to a minimum. More…

Modules#

Name
Universal Instant Camera for All Basler Devices
The Universal Instant Camera for All Basler Devices extends the Instant Camera.

Classes#

Name
class Pylon::CAcquireContinuousConfiguration
Changes the configuration of the camera to free-running continuous acquisition.
class Pylon::CAcquireSingleFrameConfiguration
An instant camera configuration for single frame acquisition, Use together with CInstantCamera::GrabOne() only.
class Pylon::CCameraEventHandler
The camera event handler base class.
class Pylon::CConfigurationEventHandler
The configuration event handler base class.
class Pylon::CConfigurationHelper
Helper functions for different camera configuration classes.
class Pylon::CGrabResultData
Makes the data for one grabbed buffer available.
class Pylon::CGrabResultPtr
A smart pointer holding a reference to grab result data.
class Pylon::CImageEventHandler
The image event handler base class.
class Pylon::CInstantCamera
Provides convenient access to a camera device.
class Pylon::CInstantCameraArray
Supports grabbing with multiple camera devices.
class Pylon::CSoftwareTriggerConfiguration
Changes the configuration of the camera so that the acquisition of frames is triggered by software trigger.
class Pylon::IBufferFactory
Usable to create a custom buffer factory when needed.

Types#

Name
enum ECleanup { Cleanup_None, Cleanup_Delete}
Defines who deletes a passed object if it is not needed anymore.
enum ERegistrationMode { RegistrationMode_Append, RegistrationMode_ReplaceAll}
Defines how to register an item.
enum ETimeoutHandling { TimeoutHandling_Return, TimeoutHandling_ThrowException}
Defines how to handle a timeout for a method.
enum EGrabStrategy { GrabStrategy_OneByOne, GrabStrategy_LatestImageOnly, GrabStrategy_LatestImages, GrabStrategy_UpcomingImage}
Lists the possible grab strategies.
enum EGrabLoop { GrabLoop_ProvidedByInstantCamera, GrabLoop_ProvidedByUser}
Defines the use of an additional grab loop thread.
enum ECameraEventAvailability { CameraEventAvailability_Mandatory, CameraEventAvailability_Optional}
Defines how to register a camera event handler.
enum EPayloadType { PayloadType_Undefined = -1, PayloadType_Image, PayloadType_RawData, PayloadType_File, PayloadType_ChunkData, PayloadType_GenDC, PayloadType_DeviceSpecific = 0x8000}
Possible payload type values.

Functions#

Name
const VersionInfo Sfnc_VersionUndefined(0 , 0 , 0 )
Constant for undefined SFNC version.
const VersionInfo Sfnc_1_2_1(1 , 2 , 1 )
Constant for SFNC version 1.2.1.
const VersionInfo Sfnc_1_3_0(1 , 3 , 0 )
Constant for SFNC version 1.3.0.
const VersionInfo Sfnc_1_4_0(1 , 4 , 0 )
Constant for SFNC version 1.4.0.
const VersionInfo Sfnc_1_5_0(1 , 5 , 0 )
Constant for SFNC version 1.5.0.
const VersionInfo Sfnc_1_5_1(1 , 5 , 1 )
Constant for SFNC version 1.5.1.
const VersionInfo Sfnc_2_0_0(2 , 0 , 0 )
Constant for SFNC version 2.0.0. This version or a later version is used by USB camera devices.
const VersionInfo Sfnc_2_1_0(2 , 1 , 0 )
Constant for SFNC version 2.1.0.
const VersionInfo Sfnc_2_2_0(2 , 2 , 0 )
Constant for SFNC version 2.2.0.
const VersionInfo Sfnc_2_3_0(2 , 3 , 0 )
Constant for SFNC version 2.3.0.
const VersionInfo Sfnc_2_4_0(2 , 4 , 0 )
Constant for SFNC version 2.4.0.
const VersionInfo Sfnc_2_5_0(2 , 5 , 0 )
Constant for SFNC version 2.5.0.

Detailed Description#

Instant Camera classes make it possible to grab images with a few lines of code reducing the programming effort to a minimum.

You can find more information here:

Types Documentation#

enum ECleanup#

Enumerator Value Description
Cleanup_None The caller is responsible for deleting the passed object. The object needs to be detached or deregistered before deletion.
Cleanup_Delete The passed object is deleted if it is not needed anymore.

Defines who deletes a passed object if it is not needed anymore.

enum ERegistrationMode#

Enumerator Value Description
RegistrationMode_Append The item is appended to the list of registered items.
RegistrationMode_ReplaceAll The item replaces all other registered items.

Defines how to register an item.

enum ETimeoutHandling#

Enumerator Value Description
TimeoutHandling_Return The method returns on timeout. What data is returned can be found in the documentation of the method.
TimeoutHandling_ThrowException An exception is thrown on timeout.

Defines how to handle a timeout for a method.

enum EGrabStrategy#

Enumerator Value Description
GrabStrategy_OneByOne The images are processed in the order of their arrival. This is the default grab strategy.
GrabStrategy_LatestImageOnly Only the latest image is kept in the output queue, all other grabbed images are skipped. If no image is in the output queue when retrieving an image with CInstantCamera::RetrieveResult(), the processing waits for the upcoming image.
GrabStrategy_LatestImages This strategy can be used to grab images while keeping only the latest images. If the application does not retrieve all images in time, all other grabbed images are skipped. The CInstantCamera::OutputQueueSize parameter can be used to control how many images can be queued in the output queue. When setting the output queue size to 1, this strategy is equivalent to GrabStrategy_LatestImageOnly grab strategy. When setting the output queue size to CInstantCamera::MaxNumBuffer, this strategy is equivalent to GrabStrategy_OneByOne.
GrabStrategy_UpcomingImage The input buffer queue is kept empty. This prevents grabbing. However, when retrieving an image with a call to the CInstantCamera::RetrieveResult() method a buffer is queued into the input queue and then the call waits for the upcoming image. The buffer is removed from the queue on timeout. Hence after the call to the CInstantCamera::RetrieveResult() method the input buffer queue is empty again. The upcoming image grab strategy cannot be used together with USB or GenTL-based camera devices. See the advanced topics section of the pylon Programmer's Guide for more information.

Lists the possible grab strategies.

enum EGrabLoop#

Enumerator Value Description
GrabLoop_ProvidedByInstantCamera The grab loop thread is provided by the Instant Camera. It calls RetrieveResult() in a loop. Grabbed images are processed by registered image event handlers. The grab loop thread is started when the grab starts.
GrabLoop_ProvidedByUser The user code calls RetrieveResult() in a loop to process grabbed images and camera events.

Defines the use of an additional grab loop thread.

enum ECameraEventAvailability#

Enumerator Value Description
CameraEventAvailability_Mandatory The camera event must be provided by the camera, otherwise an exception is thrown.
CameraEventAvailability_Optional The camera event handler is not used if the camera does not support the camera event.

Defines how to register a camera event handler.

enum EPayloadType#

Enumerator Value Description
PayloadType_Undefined -1 Undefined payload.
PayloadType_Image The buffer contains image data.
PayloadType_RawData The buffer contains raw data.
PayloadType_File The buffer contains file data.
PayloadType_ChunkData The buffer contains chunk data.
PayloadType_GenDC The buffer contains GenDC container.
PayloadType_DeviceSpecific 0x8000 The buffer contains device specific data.

Possible payload type values.

Functions Documentation#

function Sfnc_VersionUndefined#

static const VersionInfo Sfnc_VersionUndefined(
    0 ,
    0 ,
    0 
)

Constant for undefined SFNC version.

function Sfnc_1_2_1#

static const VersionInfo Sfnc_1_2_1(
    1 ,
    2 ,
    1 
)

Constant for SFNC version 1.2.1.

function Sfnc_1_3_0#

static const VersionInfo Sfnc_1_3_0(
    1 ,
    3 ,
    0 
)

Constant for SFNC version 1.3.0.

function Sfnc_1_4_0#

static const VersionInfo Sfnc_1_4_0(
    1 ,
    4 ,
    0 
)

Constant for SFNC version 1.4.0.

function Sfnc_1_5_0#

static const VersionInfo Sfnc_1_5_0(
    1 ,
    5 ,
    0 
)

Constant for SFNC version 1.5.0.

function Sfnc_1_5_1#

static const VersionInfo Sfnc_1_5_1(
    1 ,
    5 ,
    1 
)

Constant for SFNC version 1.5.1.

function Sfnc_2_0_0#

static const VersionInfo Sfnc_2_0_0(
    2 ,
    0 ,
    0 
)

Constant for SFNC version 2.0.0. This version or a later version is used by USB camera devices.

function Sfnc_2_1_0#

static const VersionInfo Sfnc_2_1_0(
    2 ,
    1 ,
    0 
)

Constant for SFNC version 2.1.0.

function Sfnc_2_2_0#

static const VersionInfo Sfnc_2_2_0(
    2 ,
    2 ,
    0 
)

Constant for SFNC version 2.2.0.

function Sfnc_2_3_0#

static const VersionInfo Sfnc_2_3_0(
    2 ,
    3 ,
    0 
)

Constant for SFNC version 2.3.0.

function Sfnc_2_4_0#

static const VersionInfo Sfnc_2_4_0(
    2 ,
    4 ,
    0 
)

Constant for SFNC version 2.4.0.

function Sfnc_2_5_0#

static const VersionInfo Sfnc_2_5_0(
    2 ,
    5 ,
    0 
)

Constant for SFNC version 2.5.0.