org.bytedeco.javacpp.FlyCapture2_C Maven / Gradle / Ivy
The newest version!
// Targeted by JavaCPP version 1.4.4: DO NOT EDIT THIS FILE
package org.bytedeco.javacpp;
import java.nio.*;
import org.bytedeco.javacpp.*;
import org.bytedeco.javacpp.annotation.*;
public class FlyCapture2_C extends org.bytedeco.javacpp.presets.FlyCapture2_C {
static { Loader.load(); }
// Parsed from
//=============================================================================
// Copyright (c) 2001-2018 FLIR Systems, Inc. All Rights Reserved.
//
// This software is the confidential and proprietary information of FLIR
// Integrated Imaging Solutions, Inc. ("Confidential Information"). You
// shall not disclose such Confidential Information and shall use it only in
// accordance with the terms of the license agreement you entered into
// with FLIR Integrated Imaging Solutions, Inc. (FLIR).
//
// FLIR MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE
// SOFTWARE, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE, OR NON-INFRINGEMENT. FLIR SHALL NOT BE LIABLE FOR ANY DAMAGES
// SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
// THIS SOFTWARE OR ITS DERIVATIVES.
//=============================================================================
// #ifndef FLIR_FLYCAPTURE2DEFS_C_H
// #define FLIR_FLYCAPTURE2DEFS_C_H
// #include
//=============================================================================
// Definitions header file for FlyCapture2 C API.
//
// Holds enumerations, typedefs and structures that are used across the
// FlyCapture2 C API wrapper.
//
// Please see FlyCapture2Defs.h or the API documentation for full details
// of the various enumerations and structures.
//=============================================================================
// #ifdef __cplusplus
// #endif
/**
* \defgroup CTypeDefs TypeDefs
*/
/*@{*/
// #ifndef FALSE
public static final int FALSE = 0;
// #endif
// #ifndef TRUE
public static final int TRUE = 1;
// #endif
// #ifndef FULL_32BIT_VALUE
public static final int FULL_32BIT_VALUE = 0x7FFFFFFF;
// #endif
public static final int MAX_STRING_LENGTH = 512;
/**
* A context to the FlyCapture2 C library. It must be created before
* performing any calls to the library.
*/
@Namespace @Name("void") @Opaque public static class fc2Context extends Pointer {
/** Empty constructor. Calls {@code super((Pointer)null)}. */
public fc2Context() { super((Pointer)null); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2Context(Pointer p) { super(p); }
}
/**
* A context to the FlyCapture2 C GUI library. It must be created before
* performing any calls to the library.
*/
@Namespace @Name("void") @Opaque public static class fc2GuiContext extends Pointer {
/** Empty constructor. Calls {@code super((Pointer)null)}. */
public fc2GuiContext() { super((Pointer)null); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2GuiContext(Pointer p) { super(p); }
}
/**
* An internal pointer used in the fc2Image structure.
*/
@Namespace @Name("void") @Opaque public static class fc2ImageImpl extends Pointer {
/** Empty constructor. Calls {@code super((Pointer)null)}. */
public fc2ImageImpl() { super((Pointer)null); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2ImageImpl(Pointer p) { super(p); }
}
/**
* A context referring to the ImageStatistics object.
*/
@Namespace @Name("void") @Opaque public static class fc2ImageStatisticsContext extends Pointer {
/** Empty constructor. Calls {@code super((Pointer)null)}. */
public fc2ImageStatisticsContext() { super((Pointer)null); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2ImageStatisticsContext(Pointer p) { super(p); }
}
/**
* A context referring to the TopologyNode object.
*/
@Namespace @Name("void") @Opaque public static class fc2TopologyNodeContext extends Pointer {
/** Empty constructor. Calls {@code super((Pointer)null)}. */
public fc2TopologyNodeContext() { super((Pointer)null); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2TopologyNodeContext(Pointer p) { super(p); }
}
/**
* A GUID to the camera. It is used to uniquely identify a camera.
*/
public static class fc2PGRGuid extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2PGRGuid() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2PGRGuid(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2PGRGuid(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2PGRGuid position(long position) {
return (fc2PGRGuid)super.position(position);
}
public native @Cast("unsigned int") int value(int i); public native fc2PGRGuid value(int i, int value);
@MemberGetter public native @Cast("unsigned int*") IntPointer value();
}
/*@}*/
/**
* \defgroup CEnumerations Enumerations
*/
/*@{*/
/** The error types returned by functions. */
/** enum _fc2Error */
public static final int
/** Undefined */
FC2_ERROR_UNDEFINED = -1,
/** Function returned with no errors. */
FC2_ERROR_OK = 0,
/** General failure. */
FC2_ERROR_FAILED = 1,
/** Function has not been implemented. */
FC2_ERROR_NOT_IMPLEMENTED = 2,
/** Could not connect to Bus Master. */
FC2_ERROR_FAILED_BUS_MASTER_CONNECTION = 3,
/** Camera has not been connected. */
FC2_ERROR_NOT_CONNECTED = 4,
/** Initialization failed. */
FC2_ERROR_INIT_FAILED = 5,
/** Camera has not been initialized. */
FC2_ERROR_NOT_INTITIALIZED = 6,
/** Invalid parameter passed to function. */
FC2_ERROR_INVALID_PARAMETER = 7,
/** Setting set to camera is invalid. */
FC2_ERROR_INVALID_SETTINGS = 8,
/** Invalid Bus Manager object. */
FC2_ERROR_INVALID_BUS_MANAGER = 9,
/** Could not allocate memory. */
FC2_ERROR_MEMORY_ALLOCATION_FAILED = 10,
/** Low level error. */
FC2_ERROR_LOW_LEVEL_FAILURE = 11,
/** Device not found. */
FC2_ERROR_NOT_FOUND = 12,
/** GUID failure. */
FC2_ERROR_FAILED_GUID = 13,
/** Packet size set to camera is invalid. */
FC2_ERROR_INVALID_PACKET_SIZE = 14,
/** Invalid mode has been passed to function. */
FC2_ERROR_INVALID_MODE = 15,
/** Error due to not being in Format7. */
FC2_ERROR_NOT_IN_FORMAT7 = 16,
/** This feature is unsupported. */
FC2_ERROR_NOT_SUPPORTED = 17,
/** Timeout error. */
FC2_ERROR_TIMEOUT = 18,
/** Bus Master Failure. */
FC2_ERROR_BUS_MASTER_FAILED = 19,
/** Generation Count Mismatch. */
FC2_ERROR_INVALID_GENERATION = 20,
/** Look Up Table failure. */
FC2_ERROR_LUT_FAILED = 21,
/** IIDC failure. */
FC2_ERROR_IIDC_FAILED = 22,
/** Strobe failure. */
FC2_ERROR_STROBE_FAILED = 23,
/** Trigger failure. */
FC2_ERROR_TRIGGER_FAILED = 24,
/** Property failure. */
FC2_ERROR_PROPERTY_FAILED = 25,
/** Property is not present. */
FC2_ERROR_PROPERTY_NOT_PRESENT = 26,
/** Register access failed. */
FC2_ERROR_REGISTER_FAILED = 27,
/** Register read failed. */
FC2_ERROR_READ_REGISTER_FAILED = 28,
/** Register write failed. */
FC2_ERROR_WRITE_REGISTER_FAILED = 29,
/** Isochronous failure. */
FC2_ERROR_ISOCH_FAILED = 30,
/** Isochronous transfer has already been started. */
FC2_ERROR_ISOCH_ALREADY_STARTED = 31,
/** Isochronous transfer has not been started. */
FC2_ERROR_ISOCH_NOT_STARTED = 32,
/** Isochronous start failed. */
FC2_ERROR_ISOCH_START_FAILED = 33,
/** Isochronous retrieve buffer failed. */
FC2_ERROR_ISOCH_RETRIEVE_BUFFER_FAILED = 34,
/** Isochronous stop failed. */
FC2_ERROR_ISOCH_STOP_FAILED = 35,
/** Isochronous image synchronization failed. */
FC2_ERROR_ISOCH_SYNC_FAILED = 36,
/** Isochronous bandwidth exceeded. */
FC2_ERROR_ISOCH_BANDWIDTH_EXCEEDED = 37,
/** Image conversion failed. */
FC2_ERROR_IMAGE_CONVERSION_FAILED = 38,
/** Image library failure. */
FC2_ERROR_IMAGE_LIBRARY_FAILURE = 39,
/** Buffer is too small. */
FC2_ERROR_BUFFER_TOO_SMALL = 40,
/** There is an image consistency error. */
FC2_ERROR_IMAGE_CONSISTENCY_ERROR = 41,
/** The installed driver is not compatible with the library. */
FC2_ERROR_INCOMPATIBLE_DRIVER = 42,
FC2_ERROR_FORCE_32BITS = FULL_32BIT_VALUE;
/** The type of bus callback to register a callback function for. */
/** enum _fc2BusCallbackType */
public static final int
/** Register for all bus events. */
FC2_BUS_RESET = 0,
/** Register for arrivals only. */
FC2_ARRIVAL = 1,
/** Register for removals only. */
FC2_REMOVAL = 2,
FC2_CALLBACK_TYPE_FORCE_32BITS = FULL_32BIT_VALUE;
/**
* The grab strategy employed during image transfer. This type controls
* how images that stream off the camera accumulate in a user buffer
* for handling.
*/
/*
@remark Unlike earlier versions of the FlyCapture SDK, it is no longer
* necessary to explicitly start the image grabbing process before
* specifying an image grabbing mode.
*/
/** enum _fc2GrabMode */
public static final int
/**
* Grabs the newest image in the user buffer each time the
* RetrieveBuffer() function is called. Older images are dropped
* instead of accumulating in the user buffer. Grabbing blocks if the
* camera has not finished transmitting the next available image. If
* the camera is transmitting images faster than the application can
* grab them, images may be dropped and only the most recent image
* is stored for grabbing. Note that this mode is the equivalent of
* flycaptureLockLatest in earlier versions of the FlyCapture SDK.
*/
FC2_DROP_FRAMES = 0,
/**
* Images accumulate in the user buffer, and the oldest image is
* grabbed for handling before being discarded. This member can be
* used to guarantee that each image is seen. However, image processing
* time must not exceed transmission time from the camera to the
* buffer. Grabbing blocks if the camera has not finished transmitting
* the next available image. The buffer size is controlled by the
* numBuffers parameter in the FC2Config struct. Note that this mode is
* the equivalent of flycaptureLockNext in earlier versions of the
* FlyCapture SDK.
*/
FC2_BUFFER_FRAMES = 1,
/**
* Unspecified grab mode.
*/
FC2_UNSPECIFIED_GRAB_MODE = 2,
FC2_GRAB_MODE_FORCE_32BITS = FULL_32BIT_VALUE;
/** Timeout options for grabbing images. */
/** enum _fc2GrabTimeout */
public static final int
/** Non-blocking wait. */
FC2_TIMEOUT_NONE = 0,
/** Wait indefinitely. */
FC2_TIMEOUT_INFINITE = -1,
/** Unspecified timeout setting. */
FC2_TIMEOUT_UNSPECIFIED = -2,
FC2_GRAB_TIMEOUT_FORCE_32BITS = FULL_32BIT_VALUE;
/** Bandwidth allocation options for 1394 devices. */
/** enum _fc2BandwidthAllocation */
public static final int
/** Do not allocate bandwidth. */
FC2_BANDWIDTH_ALLOCATION_OFF = 0,
/** Allocate bandwidth. This is the default setting. */
FC2_BANDWIDTH_ALLOCATION_ON = 1,
/**
* Bandwidth allocation is not supported by either the camera or
* operating system.
*/
FC2_BANDWIDTH_ALLOCATION_UNSUPPORTED = 2,
/** Not specified. This leaves the current setting unchanged. */
FC2_BANDWIDTH_ALLOCATION_UNSPECIFIED = 3,
FC2_BANDWIDTH_ALLOCATION_FORCE_32BITS = FULL_32BIT_VALUE;
/** Interfaces that a camera may use to communicate with a host. */
/** enum _fc2InterfaceType */
public static final int
/** IEEE-1394 (Includes 1394a and 1394b). */
FC2_INTERFACE_IEEE1394 = 0,
/** USB 2.0. */
FC2_INTERFACE_USB_2 = 1,
/** USB 3.0. */
FC2_INTERFACE_USB_3 = 2,
/** GigE. */
FC2_INTERFACE_GIGE = 3,
/** Unknown interface. */
FC2_INTERFACE_UNKNOWN = 4,
FC2_INTERFACE_TYPE_FORCE_32BITS = FULL_32BIT_VALUE;
/**
* Camera properties. Not all properties may be supported, depending
* on the camera model.
*/
/** enum _fc2PropertyType */
public static final int
FC2_BRIGHTNESS = 0,
FC2_AUTO_EXPOSURE = 1,
FC2_SHARPNESS = 2,
FC2_WHITE_BALANCE = 3,
FC2_HUE = 4,
FC2_SATURATION = 5,
FC2_GAMMA = 6,
FC2_IRIS = 7,
FC2_FOCUS = 8,
FC2_ZOOM = 9,
FC2_PAN = 10,
FC2_TILT = 11,
FC2_SHUTTER = 12,
FC2_GAIN = 13,
FC2_TRIGGER_MODE = 14,
FC2_TRIGGER_DELAY = 15,
FC2_FRAME_RATE = 16,
FC2_TEMPERATURE = 17,
FC2_UNSPECIFIED_PROPERTY_TYPE = 18,
FC2_PROPERTY_TYPE_FORCE_32BITS = FULL_32BIT_VALUE;
/** Frame rates in frames per second. */
/** enum _fc2FrameRate */
public static final int
/** 1.875 fps. */
FC2_FRAMERATE_1_875 = 0,
/** 3.75 fps. */
FC2_FRAMERATE_3_75 = 1,
/** 7.5 fps. */
FC2_FRAMERATE_7_5 = 2,
/** 15 fps. */
FC2_FRAMERATE_15 = 3,
/** 30 fps. */
FC2_FRAMERATE_30 = 4,
/** 60 fps. */
FC2_FRAMERATE_60 = 5,
/** 120 fps. */
FC2_FRAMERATE_120 = 6,
/** 240 fps. */
FC2_FRAMERATE_240 = 7,
/** Custom frame rate for Format7 functionality. */
FC2_FRAMERATE_FORMAT7 = 8,
/** Number of possible camera frame rates. */
FC2_NUM_FRAMERATES = 9,
FC2_FRAMERATE_FORCE_32BITS = FULL_32BIT_VALUE;
/** DCAM video modes. */
/** enum _fc2VideoMode */
public static final int
/** 160x120 YUV444. */
FC2_VIDEOMODE_160x120YUV444 = 0,
/** 320x240 YUV422. */
FC2_VIDEOMODE_320x240YUV422 = 1,
/** 640x480 YUV411. */
FC2_VIDEOMODE_640x480YUV411 = 2,
/** 640x480 YUV422. */
FC2_VIDEOMODE_640x480YUV422 = 3,
/** 640x480 24-bit RGB. */
FC2_VIDEOMODE_640x480RGB = 4,
/** 640x480 8-bit. */
FC2_VIDEOMODE_640x480Y8 = 5,
/** 640x480 16-bit. */
FC2_VIDEOMODE_640x480Y16 = 6,
/** 800x600 YUV422. */
FC2_VIDEOMODE_800x600YUV422 = 7,
/** 800x600 RGB. */
FC2_VIDEOMODE_800x600RGB = 8,
/** 800x600 8-bit. */
FC2_VIDEOMODE_800x600Y8 = 9,
/** 800x600 16-bit. */
FC2_VIDEOMODE_800x600Y16 = 10,
/** 1024x768 YUV422. */
FC2_VIDEOMODE_1024x768YUV422 = 11,
/** 1024x768 RGB. */
FC2_VIDEOMODE_1024x768RGB = 12,
/** 1024x768 8-bit. */
FC2_VIDEOMODE_1024x768Y8 = 13,
/** 1024x768 16-bit. */
FC2_VIDEOMODE_1024x768Y16 = 14,
/** 1280x960 YUV422. */
FC2_VIDEOMODE_1280x960YUV422 = 15,
/** 1280x960 RGB. */
FC2_VIDEOMODE_1280x960RGB = 16,
/** 1280x960 8-bit. */
FC2_VIDEOMODE_1280x960Y8 = 17,
/** 1280x960 16-bit. */
FC2_VIDEOMODE_1280x960Y16 = 18,
/** 1600x1200 YUV422. */
FC2_VIDEOMODE_1600x1200YUV422 = 19,
/** 1600x1200 RGB. */
FC2_VIDEOMODE_1600x1200RGB = 20,
/** 1600x1200 8-bit. */
FC2_VIDEOMODE_1600x1200Y8 = 21,
/** 1600x1200 16-bit. */
FC2_VIDEOMODE_1600x1200Y16 = 22,
/** Custom video mode for Format7 functionality. */
FC2_VIDEOMODE_FORMAT7 = 23,
/** Number of possible video modes. */
FC2_NUM_VIDEOMODES = 24,
FC2_VIDEOMODE_FORCE_32BITS = FULL_32BIT_VALUE;
/** Camera modes for DCAM formats as well as Format7. */
/** enum _fc2Mode */
public static final int
FC2_MODE_0 = 0,
FC2_MODE_1 = 1,
FC2_MODE_2 = 2,
FC2_MODE_3 = 3,
FC2_MODE_4 = 4,
FC2_MODE_5 = 5,
FC2_MODE_6 = 6,
FC2_MODE_7 = 7,
FC2_MODE_8 = 8,
FC2_MODE_9 = 9,
FC2_MODE_10 = 10,
FC2_MODE_11 = 11,
FC2_MODE_12 = 12,
FC2_MODE_13 = 13,
FC2_MODE_14 = 14,
FC2_MODE_15 = 15,
FC2_MODE_16 = 16,
FC2_MODE_17 = 17,
FC2_MODE_18 = 18,
FC2_MODE_19 = 19,
FC2_MODE_20 = 20,
FC2_MODE_21 = 21,
FC2_MODE_22 = 22,
FC2_MODE_23 = 23,
FC2_MODE_24 = 24,
FC2_MODE_25 = 25,
FC2_MODE_26 = 26,
FC2_MODE_27 = 27,
FC2_MODE_28 = 28,
FC2_MODE_29 = 29,
FC2_MODE_30 = 30,
FC2_MODE_31 = 31,
/** Number of modes */
FC2_NUM_MODES = 32,
FC2_MODE_FORCE_32BITS = FULL_32BIT_VALUE;
/** Pixel formats available for Format7 modes. */
/** enum _fc2PixelFormat */
public static final int
/** 8 bits of mono information. */
FC2_PIXEL_FORMAT_MONO8 = 0x80000000,
/** YUV 4:1:1. */
FC2_PIXEL_FORMAT_411YUV8 = 0x40000000,
/** YUV 4:2:2. */
FC2_PIXEL_FORMAT_422YUV8 = 0x20000000,
/** YUV 4:4:4. */
FC2_PIXEL_FORMAT_444YUV8 = 0x10000000,
/** R = G = B = 8 bits. */
FC2_PIXEL_FORMAT_RGB8 = 0x08000000,
/** 16 bits of mono information. */
FC2_PIXEL_FORMAT_MONO16 = 0x04000000,
/** R = G = B = 16 bits. */
FC2_PIXEL_FORMAT_RGB16 = 0x02000000,
/** 16 bits of signed mono information. */
FC2_PIXEL_FORMAT_S_MONO16 = 0x01000000,
/** R = G = B = 16 bits signed. */
FC2_PIXEL_FORMAT_S_RGB16 = 0x00800000,
/** 8 bit raw data output of sensor. */
FC2_PIXEL_FORMAT_RAW8 = 0x00400000,
/** 16 bit raw data output of sensor. */
FC2_PIXEL_FORMAT_RAW16 = 0x00200000,
/** 12 bits of mono information. */
FC2_PIXEL_FORMAT_MONO12 = 0x00100000,
/** 12 bit raw data output of sensor. */
FC2_PIXEL_FORMAT_RAW12 = 0x00080000,
/** 24 bit BGR. */
FC2_PIXEL_FORMAT_BGR = 0x80000008,
/** 32 bit BGRU. */
FC2_PIXEL_FORMAT_BGRU = 0x40000008,
/** 24 bit RGB. */
FC2_PIXEL_FORMAT_RGB = FC2_PIXEL_FORMAT_RGB8,
/** 32 bit RGBU. */
FC2_PIXEL_FORMAT_RGBU = 0x40000002,
/** R = G = B = 16 bits. */
FC2_PIXEL_FORMAT_BGR16 = 0x02000001,
/** 64 bit BGRU. */
FC2_PIXEL_FORMAT_BGRU16 = 0x02000002,
/** JPEG compressed stream. */
FC2_PIXEL_FORMAT_422YUV8_JPEG = 0x40000001,
/** Number of pixel formats. */
FC2_NUM_PIXEL_FORMATS = 20,
/** Unspecified pixel format. */
FC2_UNSPECIFIED_PIXEL_FORMAT = 0;
/** Bus speeds. */
/** enum _fc2BusSpeed */
public static final int
/** 100Mbits/sec. */
FC2_BUSSPEED_S100 = 0,
/** 200Mbits/sec. */
FC2_BUSSPEED_S200 = 1,
/** 400Mbits/sec. */
FC2_BUSSPEED_S400 = 2,
/** 480Mbits/sec. Only for USB2 cameras. */
FC2_BUSSPEED_S480 = 3,
/** 800Mbits/sec. */
FC2_BUSSPEED_S800 = 4,
/** 1600Mbits/sec. */
FC2_BUSSPEED_S1600 = 5,
/** 3200Mbits/sec. */
FC2_BUSSPEED_S3200 = 6,
/** 5000Mbits/sec. Only for USB3 cameras. */
FC2_BUSSPEED_S5000 = 7,
/** 10Base-T. Only for GigE cameras. */
FC2_BUSSPEED_10BASE_T = 8,
/** 100Base-T. Only for GigE cameras.*/
FC2_BUSSPEED_100BASE_T = 9,
/** 1000Base-T (Gigabit Ethernet). Only for GigE cameras. */
FC2_BUSSPEED_1000BASE_T = 10,
/** 10000Base-T. Only for GigE cameras. */
FC2_BUSSPEED_10000BASE_T = 11,
/** The fastest speed available. */
FC2_BUSSPEED_S_FASTEST = 12,
/** Any speed that is available. */
FC2_BUSSPEED_ANY = 13,
/** Unknown bus speed. */
FC2_BUSSPEED_SPEED_UNKNOWN = -1,
FC2_BUSSPEED_FORCE_32BITS = FULL_32BIT_VALUE;
/** enum _fc2PCIeBusSpeed */
public static final int
FC2_PCIE_BUSSPEED_2_5 = 0, /** 2.5 Gb/s */
FC2_PCIE_BUSSPEED_5_0 = 1, /** 5.0 Gb/s */
FC2_PCIE_BUSSPEED_UNKNOWN = -1, /** Speed is unknown */
FC2_PCIE_BUSSPEED_FORCE_32BITS = FULL_32BIT_VALUE;
/** Types of low level drivers that FlyCapture uses. */
/** enum _fc2DriverType */
public static final int
/** PGRCam.sys. */
FC2_DRIVER_1394_CAM = 0,
/** PGR1394.sys. */
FC2_DRIVER_1394_PRO = 1,
/** firewire_core. */
FC2_DRIVER_1394_JUJU = 2,
/** video1394. */
FC2_DRIVER_1394_VIDEO1394 = 3,
/** raw1394. */
FC2_DRIVER_1394_RAW1394 = 4,
/** No usb driver used just BSD stack. (Linux only) */
FC2_DRIVER_USB_NONE = 5,
/** PGRUsbCam.sys. */
FC2_DRIVER_USB_CAM = 6,
/** PGRXHCI.sys. */
FC2_DRIVER_USB3_PRO = 7,
/** no GigE drivers used, MS/BSD stack. */
FC2_DRIVER_GIGE_NONE = 8,
/** PGRGigE.sys. */
FC2_DRIVER_GIGE_FILTER = 9,
/** PGRGigEPro.sys. */
FC2_DRIVER_GIGE_PRO = 10,
/** PgrLwf.sys. */
FC2_DRIVER_GIGE_LWF = 11,
/** Unknown driver type. */
FC2_DRIVER_UNKNOWN = -1,
FC2_DRIVER_FORCE_32BITS = FULL_32BIT_VALUE;
/**
* Color processing algorithms. Please refer to our knowledge base at
* article at http://www.ptgrey.com/support/kb/index.asp?a=4&q=33 for
* complete details for each algorithm.
*/
/** enum _fc2ColorProcessingAlgorithm */
public static final int
/** Default method. */
FC2_DEFAULT = 0,
/** No color processing. */
FC2_NO_COLOR_PROCESSING = 1,
/**
* Fastest but lowest quality. Equivalent to
* FLYCAPTURE_NEAREST_NEIGHBOR_FAST in FlyCapture.
*/
FC2_NEAREST_NEIGHBOR_FAST = 2,
/** Weights surrounding pixels based on localized edge orientation. */
FC2_EDGE_SENSING = 3,
/** Well-balanced speed and quality. */
FC2_HQ_LINEAR = 4,
/** Slowest but produces good results. */
FC2_RIGOROUS = 5,
/** Multithreaded with similar results to edge sensing. */
FC2_IPP = 6,
/** Best quality but much faster than rigorous. */
FC2_DIRECTIONAL = 7,
/** Weighted pixel average from different directions*/
FC2_WEIGHTED_DIRECTIONAL = 8,
FC2_COLOR_PROCESSING_ALGORITHM_FORCE_32BITS = FULL_32BIT_VALUE;
/** Bayer tile formats. */
/** enum _fc2BayerTileFormat */
public static final int
/** No bayer tile format. */
FC2_BT_NONE = 0,
/** Red-Green-Green-Blue. */
FC2_BT_RGGB = 1,
/** Green-Red-Blue-Green. */
FC2_BT_GRBG = 2,
/** Green-Blue-Red-Green. */
FC2_BT_GBRG = 3,
/** Blue-Green-Green-Red. */
FC2_BT_BGGR = 4,
FC2_BT_FORCE_32BITS = FULL_32BIT_VALUE;
/** File formats to be used for saving images to disk. */
/** enum _fc2ImageFileFormat */
public static final int
/** Determine file format from file extension. */
FC2_FROM_FILE_EXT = -1,
/** Portable gray map. */
FC2_PGM = 0,
/** Portable pixmap. */
FC2_PPM = 1,
/** Bitmap. */
FC2_BMP = 2,
/** JPEG. */
FC2_JPEG = 3,
/** JPEG 2000. */
FC2_JPEG2000 = 4,
/** Tagged image file format. */
FC2_TIFF = 5,
/** Portable network graphics. */
FC2_PNG = 6,
/** Raw data. */
FC2_RAW = 7,
FC2_IMAGE_FILE_FORMAT_FORCE_32BITS = FULL_32BIT_VALUE;
/*@}*/
/**
* \defgroup CGigEEnums GigE specific enumerations
*
* These enumerations are specific to GigE camera operation only.
*/
/*@{*/
/** Possible properties that can be queried from the camera. */
/** enum _fc2GigEPropertyType */
public static final int
FC2_HEARTBEAT = 0,
FC2_HEARTBEAT_TIMEOUT = 1,
PACKET_SIZE = 2,
PACKET_DELAY = 3;
/*@}*/
/**
* Channels that allow statistics to be calculated.
*/
/** enum _fc2StatisticsChannel */
public static final int
FC2_STATISTICS_GREY = 0,
FC2_STATISTICS_RED = 1,
FC2_STATISTICS_GREEN = 2,
FC2_STATISTICS_BLUE = 3,
FC2_STATISTICS_HUE = 4,
FC2_STATISTICS_SATURATION = 5,
FC2_STATISTICS_LIGHTNESS = 6,
FC2_STATISTICS_FORCE_32BITS = FULL_32BIT_VALUE;
/** Possible operating systems. */
/** enum _fc2OSType */
public static final int
/** All Windows 32-bit variants. */
FC2_WINDOWS_X86 = 0,
/** All Windows 64-bit variants. */
FC2_WINDOWS_X64 = 1,
/** All Linux 32-bit variants. */
FC2_LINUX_X86 = 2,
/** All Linux 32-bit variants. */
FC2_LINUX_X64 = 3,
/** Mac OSX. */
FC2_MAC = 4,
/** Unknown operating system. */
FC2_UNKNOWN_OS = 5,
FC2_OSTYPE_FORCE_32BITS = FULL_32BIT_VALUE;
/** Possible byte orders. */
/** enum _fc2ByteOrder */
public static final int
FC2_BYTE_ORDER_LITTLE_ENDIAN = 0,
FC2_BYTE_ORDER_BIG_ENDIAN = 1,
FC2_BYTE_ORDER_FORCE_32BITS = FULL_32BIT_VALUE;
/**
* Possible states of a port on a node.
*/
/** enum _fc2PortType */
public static final int
NOT_CONNECTED = 1,
CONNECTED_TO_PARENT = 2,
CONNECTED_TO_CHILD = 3;
/**
* Type of node.
*/
/** enum _fc2NodeType */
public static final int
COMPUTER = 0,
BUS = 1,
CAMERA = 2,
NODE = 3;
/**
* \defgroup CStructures Structures
*/
/*@{*/
//
// Description:
// An image. It is comparable to the Image class in the C++ library.
// The fields in this structure should be considered read only.
//
public static class fc2Image extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2Image() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2Image(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2Image(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2Image position(long position) {
return (fc2Image)super.position(position);
}
public native @Cast("unsigned int") int rows(); public native fc2Image rows(int rows);
public native @Cast("unsigned int") int cols(); public native fc2Image cols(int cols);
public native @Cast("unsigned int") int stride(); public native fc2Image stride(int stride);
public native @Cast("unsigned char*") BytePointer pData(); public native fc2Image pData(BytePointer pData);
public native @Cast("unsigned int") int dataSize(); public native fc2Image dataSize(int dataSize);
public native @Cast("unsigned int") int receivedDataSize(); public native fc2Image receivedDataSize(int receivedDataSize);
public native @Cast("fc2PixelFormat") int format(); public native fc2Image format(int format);
public native @Cast("fc2BayerTileFormat") int bayerFormat(); public native fc2Image bayerFormat(int bayerFormat);
public native fc2ImageImpl imageImpl(); public native fc2Image imageImpl(fc2ImageImpl imageImpl);
}
/** Description of the system. */
public static class fc2SystemInfo extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2SystemInfo() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2SystemInfo(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2SystemInfo(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2SystemInfo position(long position) {
return (fc2SystemInfo)super.position(position);
}
/** Operating system type as described by OSType. */
public native @Cast("fc2OSType") int osType(); public native fc2SystemInfo osType(int osType);
/** Detailed description of the operating system. */
public native @Cast("char") byte osDescription(int i); public native fc2SystemInfo osDescription(int i, byte osDescription);
@MemberGetter public native @Cast("char*") BytePointer osDescription();
/** Byte order of the system. */
public native @Cast("fc2ByteOrder") int byteOrder(); public native fc2SystemInfo byteOrder(int byteOrder);
/** Amount of memory available on the system. */
public native @Cast("size_t") long sysMemSize(); public native fc2SystemInfo sysMemSize(long sysMemSize);
/** Detailed description of the CPU. */
public native @Cast("char") byte cpuDescription(int i); public native fc2SystemInfo cpuDescription(int i, byte cpuDescription);
@MemberGetter public native @Cast("char*") BytePointer cpuDescription();
/** Number of cores on all CPUs on the system. */
public native @Cast("size_t") long numCpuCores(); public native fc2SystemInfo numCpuCores(long numCpuCores);
/** List of drivers used. */
public native @Cast("char") byte driverList(int i); public native fc2SystemInfo driverList(int i, byte driverList);
@MemberGetter public native @Cast("char*") BytePointer driverList();
/** List of libraries used. */
public native @Cast("char") byte libraryList(int i); public native fc2SystemInfo libraryList(int i, byte libraryList);
@MemberGetter public native @Cast("char*") BytePointer libraryList();
/** Detailed description of the GPU. */
public native @Cast("char") byte gpuDescription(int i); public native fc2SystemInfo gpuDescription(int i, byte gpuDescription);
@MemberGetter public native @Cast("char*") BytePointer gpuDescription();
/** Screen resolution width in pixels. */
public native @Cast("size_t") long screenWidth(); public native fc2SystemInfo screenWidth(long screenWidth);
/** Screen resolution height in pixels. */
public native @Cast("size_t") long screenHeight(); public native fc2SystemInfo screenHeight(long screenHeight);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2SystemInfo reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** The current version of the library. */
public static class fc2Version extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2Version() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2Version(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2Version(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2Version position(long position) {
return (fc2Version)super.position(position);
}
/** Major version number. */
public native @Cast("unsigned int") int major(); public native fc2Version major(int major);
/** Minor version number. */
public native @Cast("unsigned int") int minor(); public native fc2Version minor(int minor);
/** Type version number. */
public native @Cast("unsigned int") int type(); public native fc2Version type(int type);
/** Build version number. */
public native @Cast("unsigned int") int build(); public native fc2Version build(int build);
}
/**
* \defgroup CGigEStructures GigE specific structures
*
* These structures are specific to GigE camera operation only.
*/
/*@{*/
/** IPv4 address. */
public static class fc2IPAddress extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2IPAddress() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2IPAddress(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2IPAddress(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2IPAddress position(long position) {
return (fc2IPAddress)super.position(position);
}
public native @Cast("unsigned char") byte octets(int i); public native fc2IPAddress octets(int i, byte octets);
@MemberGetter public native @Cast("unsigned char*") BytePointer octets();
}
/** MAC address. */
public static class fc2MACAddress extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2MACAddress() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2MACAddress(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2MACAddress(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2MACAddress position(long position) {
return (fc2MACAddress)super.position(position);
}
public native @Cast("unsigned char") byte octets(int i); public native fc2MACAddress octets(int i, byte octets);
@MemberGetter public native @Cast("unsigned char*") BytePointer octets();
}
/** A GigE property. */
public static class fc2GigEProperty extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2GigEProperty() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2GigEProperty(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2GigEProperty(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2GigEProperty position(long position) {
return (fc2GigEProperty)super.position(position);
}
/** The type of property. */
public native @Cast("fc2GigEPropertyType") int propType(); public native fc2GigEProperty propType(int propType);
/**
* Whether the property is readable. If this is false, then
* no other value in this structure is valid.
*/
public native @Cast("BOOL") int isReadable(); public native fc2GigEProperty isReadable(int isReadable);
/** Whether the property is writable. */
public native @Cast("BOOL") int isWritable(); public native fc2GigEProperty isWritable(int isWritable);
/** Minimum value. */
public native @Cast("unsigned int") int min(); public native fc2GigEProperty min(int min);
/** Maximum value. */
public native @Cast("unsigned int") int max(); public native fc2GigEProperty max(int max);
/** Current value. */
public native @Cast("unsigned int") int value(); public native fc2GigEProperty value(int value);
public native @Cast("unsigned int") int reserved(int i); public native fc2GigEProperty reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Information about a single GigE stream channel. */
public static class fc2GigEStreamChannel extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2GigEStreamChannel() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2GigEStreamChannel(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2GigEStreamChannel(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2GigEStreamChannel position(long position) {
return (fc2GigEStreamChannel)super.position(position);
}
/** Network interface index used (or to use). */
public native @Cast("unsigned int") int networkInterfaceIndex(); public native fc2GigEStreamChannel networkInterfaceIndex(int networkInterfaceIndex);
/** Host port on the PC where the camera will send the data stream. */
public native @Cast("unsigned int") int hostPort(); public native fc2GigEStreamChannel hostPort(int hostPort);
/** Disable IP fragmentation of packets. */
public native @Cast("BOOL") int doNotFragment(); public native fc2GigEStreamChannel doNotFragment(int doNotFragment);
/** Packet size, in bytes. */
public native @Cast("unsigned int") int packetSize(); public native fc2GigEStreamChannel packetSize(int packetSize);
/** Inter packet delay, in timestamp counter units. */
public native @Cast("unsigned int") int interPacketDelay(); public native fc2GigEStreamChannel interPacketDelay(int interPacketDelay);
/** Destination IP address. It can be a multicast or unicast address. */
public native @ByRef fc2IPAddress destinationIpAddress(); public native fc2GigEStreamChannel destinationIpAddress(fc2IPAddress destinationIpAddress);
/** Source UDP port of the stream channel. Read only. */
public native @Cast("unsigned int") int sourcePort(); public native fc2GigEStreamChannel sourcePort(int sourcePort);
public native @Cast("unsigned int") int reserved(int i); public native fc2GigEStreamChannel reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/**
* Configuration for a GigE camera. These options are options that are
* generally should be set before starting isochronous transfer.
*/
public static class fc2GigEConfig extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2GigEConfig() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2GigEConfig(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2GigEConfig(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2GigEConfig position(long position) {
return (fc2GigEConfig)super.position(position);
}
/** Turn on/off packet resend functionality */
public native @Cast("BOOL") int enablePacketResend(); public native fc2GigEConfig enablePacketResend(int enablePacketResend);
/**
* Number of retries to perform when a register read/write timeout
* is received by the library. The default value is 0.
*/
public native @Cast("unsigned int") int registerTimeoutRetries(); public native fc2GigEConfig registerTimeoutRetries(int registerTimeoutRetries);
/**
* Register read/write timeout value, in microseconds.
* The default value is dependent on the interface type.
*/
public native @Cast("unsigned int") int registerTimeout(); public native fc2GigEConfig registerTimeout(int registerTimeout);
public native @Cast("unsigned int") int reserved(int i); public native fc2GigEConfig reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Format 7 information for a single mode. */
public static class fc2GigEImageSettingsInfo extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2GigEImageSettingsInfo() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2GigEImageSettingsInfo(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2GigEImageSettingsInfo(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2GigEImageSettingsInfo position(long position) {
return (fc2GigEImageSettingsInfo)super.position(position);
}
/** Maximum image width. */
public native @Cast("unsigned int") int maxWidth(); public native fc2GigEImageSettingsInfo maxWidth(int maxWidth);
/** Maximum image height. */
public native @Cast("unsigned int") int maxHeight(); public native fc2GigEImageSettingsInfo maxHeight(int maxHeight);
/** Horizontal step size for the offset. */
public native @Cast("unsigned int") int offsetHStepSize(); public native fc2GigEImageSettingsInfo offsetHStepSize(int offsetHStepSize);
/** Vertical step size for the offset. */
public native @Cast("unsigned int") int offsetVStepSize(); public native fc2GigEImageSettingsInfo offsetVStepSize(int offsetVStepSize);
/** Horizontal step size for the image. */
public native @Cast("unsigned int") int imageHStepSize(); public native fc2GigEImageSettingsInfo imageHStepSize(int imageHStepSize);
/** Vertical step size for the image. */
public native @Cast("unsigned int") int imageVStepSize(); public native fc2GigEImageSettingsInfo imageVStepSize(int imageVStepSize);
/** Supported pixel formats in a bit field. */
public native @Cast("unsigned int") int pixelFormatBitField(); public native fc2GigEImageSettingsInfo pixelFormatBitField(int pixelFormatBitField);
/** Vendor unique pixel formats in a bit field. */
public native @Cast("unsigned int") int vendorPixelFormatBitField(); public native fc2GigEImageSettingsInfo vendorPixelFormatBitField(int vendorPixelFormatBitField);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2GigEImageSettingsInfo reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Image settings for a GigE camera. */
public static class fc2GigEImageSettings extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2GigEImageSettings() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2GigEImageSettings(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2GigEImageSettings(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2GigEImageSettings position(long position) {
return (fc2GigEImageSettings)super.position(position);
}
/** Horizontal image offset. */
public native @Cast("unsigned int") int offsetX(); public native fc2GigEImageSettings offsetX(int offsetX);
/** Vertical image offset. */
public native @Cast("unsigned int") int offsetY(); public native fc2GigEImageSettings offsetY(int offsetY);
/** Width of image. */
public native @Cast("unsigned int") int width(); public native fc2GigEImageSettings width(int width);
/** Height of image. */
public native @Cast("unsigned int") int height(); public native fc2GigEImageSettings height(int height);
/** Pixel format of image. */
public native @Cast("fc2PixelFormat") int pixelFormat(); public native fc2GigEImageSettings pixelFormat(int pixelFormat);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2GigEImageSettings reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/*@}*/
/**
* \defgroup CIIDCStructures IIDC specific structures
*
* These structures are specific to IIDC camera operation only.
*/
/*@{*/
/** Format 7 image settings. */
public static class fc2Format7ImageSettings extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2Format7ImageSettings() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2Format7ImageSettings(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2Format7ImageSettings(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2Format7ImageSettings position(long position) {
return (fc2Format7ImageSettings)super.position(position);
}
/** Format 7 mode. */
public native @Cast("fc2Mode") int mode(); public native fc2Format7ImageSettings mode(int mode);
/** Horizontal image offset. */
public native @Cast("unsigned int") int offsetX(); public native fc2Format7ImageSettings offsetX(int offsetX);
/** Vertical image offset. */
public native @Cast("unsigned int") int offsetY(); public native fc2Format7ImageSettings offsetY(int offsetY);
/** Width of image. */
public native @Cast("unsigned int") int width(); public native fc2Format7ImageSettings width(int width);
/** Height of image. */
public native @Cast("unsigned int") int height(); public native fc2Format7ImageSettings height(int height);
/** Pixel format of image. */
public native @Cast("fc2PixelFormat") int pixelFormat(); public native fc2Format7ImageSettings pixelFormat(int pixelFormat);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2Format7ImageSettings reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Format 7 information for a single mode. */
public static class fc2Format7Info extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2Format7Info() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2Format7Info(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2Format7Info(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2Format7Info position(long position) {
return (fc2Format7Info)super.position(position);
}
/** Format 7 mode. */
public native @Cast("fc2Mode") int mode(); public native fc2Format7Info mode(int mode);
/** Maximum image width. */
public native @Cast("unsigned int") int maxWidth(); public native fc2Format7Info maxWidth(int maxWidth);
/** Maximum image height. */
public native @Cast("unsigned int") int maxHeight(); public native fc2Format7Info maxHeight(int maxHeight);
/** Horizontal step size for the offset. */
public native @Cast("unsigned int") int offsetHStepSize(); public native fc2Format7Info offsetHStepSize(int offsetHStepSize);
/** Vertical step size for the offset. */
public native @Cast("unsigned int") int offsetVStepSize(); public native fc2Format7Info offsetVStepSize(int offsetVStepSize);
/** Horizontal step size for the image. */
public native @Cast("unsigned int") int imageHStepSize(); public native fc2Format7Info imageHStepSize(int imageHStepSize);
/** Vertical step size for the image. */
public native @Cast("unsigned int") int imageVStepSize(); public native fc2Format7Info imageVStepSize(int imageVStepSize);
/** Supported pixel formats in a bit field. */
public native @Cast("unsigned int") int pixelFormatBitField(); public native fc2Format7Info pixelFormatBitField(int pixelFormatBitField);
/** Vendor unique pixel formats in a bit field. */
public native @Cast("unsigned int") int vendorPixelFormatBitField(); public native fc2Format7Info vendorPixelFormatBitField(int vendorPixelFormatBitField);
/** Current packet size in bytes. */
public native @Cast("unsigned int") int packetSize(); public native fc2Format7Info packetSize(int packetSize);
/** Minimum packet size in bytes for current mode. */
public native @Cast("unsigned int") int minPacketSize(); public native fc2Format7Info minPacketSize(int minPacketSize);
/** Maximum packet size in bytes for current mode. */
public native @Cast("unsigned int") int maxPacketSize(); public native fc2Format7Info maxPacketSize(int maxPacketSize);
/** Current packet size as a percentage of maximum packet size. */
public native float percentage(); public native fc2Format7Info percentage(float percentage);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2Format7Info reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Format 7 packet information. */
public static class fc2Format7PacketInfo extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2Format7PacketInfo() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2Format7PacketInfo(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2Format7PacketInfo(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2Format7PacketInfo position(long position) {
return (fc2Format7PacketInfo)super.position(position);
}
/** Recommended bytes per packet. */
public native @Cast("unsigned int") int recommendedBytesPerPacket(); public native fc2Format7PacketInfo recommendedBytesPerPacket(int recommendedBytesPerPacket);
/** Maximum bytes per packet. */
public native @Cast("unsigned int") int maxBytesPerPacket(); public native fc2Format7PacketInfo maxBytesPerPacket(int maxBytesPerPacket);
/** Minimum bytes per packet. */
public native @Cast("unsigned int") int unitBytesPerPacket(); public native fc2Format7PacketInfo unitBytesPerPacket(int unitBytesPerPacket);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2Format7PacketInfo reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/*@}*/
/**
* Configuration for a camera. These options are options that are
* generally should be set before starting isochronous transfer.
*/
public static class fc2Config extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2Config() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2Config(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2Config(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2Config position(long position) {
return (fc2Config)super.position(position);
}
/** Number of buffers used by the FlyCapture2 library to grab images. */
public native @Cast("unsigned int") int numBuffers(); public native fc2Config numBuffers(int numBuffers);
/**
* Number of notifications per image. This value should only be set
* after the image settings to be used is set to the camera.
* The default number of notifications is 1.
*
* There are 4 general scenarios:
* - 1 notification - End of image
* - 2 notifications - After first packet and end of image
* - 3 notifications - After first packet, middle of image, end of image
* - x notifications - After first packet, (x -2) spread evenly, end of image
*
* Specifying zero for the number of notifications will be ignored (the current value
* will not be modified).
*
* Note that the event numbers start at 0. Ex. when 3 notifications are
* used, the three events will be 0, 1 and 2.
*/
public native @Cast("unsigned int") int numImageNotifications(); public native fc2Config numImageNotifications(int numImageNotifications);
/**
* Minimum number of notifications needed for the current image
* settings on the camera. Read-only value.
*/
public native @Cast("unsigned int") int minNumImageNotifications(); public native fc2Config minNumImageNotifications(int minNumImageNotifications);
/**
* Time in milliseconds that RetrieveBuffer() and WaitForBufferEvent()
* will wait for an image before timing out and returning.
*/
public native int grabTimeout(); public native fc2Config grabTimeout(int grabTimeout);
/** Grab mode for the camera. The default is DROP_FRAMES. */
public native @Cast("fc2GrabMode") int grabMode(); public native fc2Config grabMode(int grabMode);
/** This parameter enables RetrieveBuffer to run in high
* performance mode. This means that any interaction
* with the camera, other than grabbing the image is disabled.
* Currently Retrieve buffer reads registers on the camera to
* determine which embedded image information settings have been
* enabled, and it reads what the bayer tile is currently set to.
* When High Performance mode is on, these reads are disabled. This
* means that any changes to the Bayer Tile or to the Embedded image
* info after StartCapture() will not be tracked when made using
* direct register writes. If the corresponding SetEmbededImageInfo()
* and GetEmbededImageInfo() calls are used then the changes will be
* appropriately reflected. This also means that changes to embedded
* image info from other processes will not be updated either. */
public native @Cast("BOOL") int highPerformanceRetrieveBuffer(); public native fc2Config highPerformanceRetrieveBuffer(int highPerformanceRetrieveBuffer);
/** Isochronous bus speed. */
public native @Cast("fc2BusSpeed") int isochBusSpeed(); public native fc2Config isochBusSpeed(int isochBusSpeed);
/** Asynchronous bus speed. */
public native @Cast("fc2BusSpeed") int asyncBusSpeed(); public native fc2Config asyncBusSpeed(int asyncBusSpeed);
/**
* Bandwidth allocation flag that tells the camera the bandwidth
* allocation strategy to employ.
*/
public native @Cast("fc2BandwidthAllocation") int bandwidthAllocation(); public native fc2Config bandwidthAllocation(int bandwidthAllocation);
/**
* Number of retries to perform when a register read/write timeout
* is received by the library. The default value is 0.
*/
public native @Cast("unsigned int") int registerTimeoutRetries(); public native fc2Config registerTimeoutRetries(int registerTimeoutRetries);
/**
* Register read/write timeout value, in microseconds.
* The default value is dependent on the interface type.
*/
public native @Cast("unsigned int") int registerTimeout(); public native fc2Config registerTimeout(int registerTimeout);
/** Reserved for future use */
public native @Cast("unsigned int") int reserved(int i); public native fc2Config reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/**
* Information about a specific camera property. This structure is also
* also used as the TriggerDelayInfo structure.
*/
public static class fc2PropertyInfo extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2PropertyInfo() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2PropertyInfo(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2PropertyInfo(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2PropertyInfo position(long position) {
return (fc2PropertyInfo)super.position(position);
}
/** Property info type. */
public native @Cast("fc2PropertyType") int type(); public native fc2PropertyInfo type(int type);
/** Flag indicating if the property is present. */
public native @Cast("BOOL") int present(); public native fc2PropertyInfo present(int present);
/** Flag indicating if auto is supported. */
public native @Cast("BOOL") int autoSupported(); public native fc2PropertyInfo autoSupported(int autoSupported);
/** Flag indicating if manual is supported. */
public native @Cast("BOOL") int manualSupported(); public native fc2PropertyInfo manualSupported(int manualSupported);
/** Flag indicating if on/off is supported. */
public native @Cast("BOOL") int onOffSupported(); public native fc2PropertyInfo onOffSupported(int onOffSupported);
/** Flag indicating if one push is supported. */
public native @Cast("BOOL") int onePushSupported(); public native fc2PropertyInfo onePushSupported(int onePushSupported);
/** Flag indicating if absolute mode is supported. */
public native @Cast("BOOL") int absValSupported(); public native fc2PropertyInfo absValSupported(int absValSupported);
/** Flag indicating if property value can be read out. */
public native @Cast("BOOL") int readOutSupported(); public native fc2PropertyInfo readOutSupported(int readOutSupported);
/** Minimum value (as an integer). */
public native @Cast("unsigned int") int min(); public native fc2PropertyInfo min(int min);
/** Maximum value (as an integer). */
public native @Cast("unsigned int") int max(); public native fc2PropertyInfo max(int max);
/** Minimum value (as a floating point value). */
public native float absMin(); public native fc2PropertyInfo absMin(float absMin);
/** Maximum value (as a floating point value). */
public native float absMax(); public native fc2PropertyInfo absMax(float absMax);
/** Textual description of units. */
public native @Cast("char") byte pUnits(int i); public native fc2PropertyInfo pUnits(int i, byte pUnits);
@MemberGetter public native @Cast("char*") BytePointer pUnits();
/** Abbreviated textual description of units. */
public native @Cast("char") byte pUnitAbbr(int i); public native fc2PropertyInfo pUnitAbbr(int i, byte pUnitAbbr);
@MemberGetter public native @Cast("char*") BytePointer pUnitAbbr();
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2PropertyInfo reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/**
* A specific camera property. \n
* For example, to set the gain to 12dB, set the following values:
* - \a type - \c GAIN
* - \a absControl - \c true
* - \a onePush - \c false
* - \a onOff - \c true
* - \a autoManualMode - \c false
* - \a absValue - \c 12.0
*/
public static class fc2Property extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2Property() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2Property(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2Property(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2Property position(long position) {
return (fc2Property)super.position(position);
}
/** Property info type. */
public native @Cast("fc2PropertyType") int type(); public native fc2Property type(int type);
/** Flag indicating if the property is present. */
public native @Cast("BOOL") int present(); public native fc2Property present(int present);
/**
* Flag controlling absolute mode (real world units)
* or non-absolute mode (camera internal units).
*/
public native @Cast("BOOL") int absControl(); public native fc2Property absControl(int absControl);
/** Flag controlling one push. */
public native @Cast("BOOL") int onePush(); public native fc2Property onePush(int onePush);
/** Flag controlling on/off. */
public native @Cast("BOOL") int onOff(); public native fc2Property onOff(int onOff);
/** Flag controlling auto. */
public native @Cast("BOOL") int autoManualMode(); public native fc2Property autoManualMode(int autoManualMode);
/**
* Value A (integer).
* Used to configure properties in non-absolute mode.
*/
public native @Cast("unsigned int") int valueA(); public native fc2Property valueA(int valueA);
/**
* Value B (integer). For white balance, value B applies to the blue value and
* value A applies to the red value.
*/
public native @Cast("unsigned int") int valueB(); public native fc2Property valueB(int valueB);
/**
* Floating point value.
* Used to configure properties in absolute mode.
*/
public native float absValue(); public native fc2Property absValue(float absValue);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2Property reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
// For convenience, trigger delay is the same structure
// used in a separate function along with trigger mode.
}
/** Information about a camera trigger property. */
public static class fc2TriggerModeInfo extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2TriggerModeInfo() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2TriggerModeInfo(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2TriggerModeInfo(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2TriggerModeInfo position(long position) {
return (fc2TriggerModeInfo)super.position(position);
}
/** Presence of trigger mode. */
public native @Cast("BOOL") int present(); public native fc2TriggerModeInfo present(int present);
/** Flag indicating if trigger value can be read out. */
public native @Cast("BOOL") int readOutSupported(); public native fc2TriggerModeInfo readOutSupported(int readOutSupported);
/** Flag indicating if on/off is supported. */
public native @Cast("BOOL") int onOffSupported(); public native fc2TriggerModeInfo onOffSupported(int onOffSupported);
/** Flag indicating if polarity is supported. */
public native @Cast("BOOL") int polaritySupported(); public native fc2TriggerModeInfo polaritySupported(int polaritySupported);
/** Flag indicating if the value is readable. */
public native @Cast("BOOL") int valueReadable(); public native fc2TriggerModeInfo valueReadable(int valueReadable);
/** Source mask. */
public native @Cast("unsigned int") int sourceMask(); public native fc2TriggerModeInfo sourceMask(int sourceMask);
/** Flag indicating if software trigger is supported. */
public native @Cast("BOOL") int softwareTriggerSupported(); public native fc2TriggerModeInfo softwareTriggerSupported(int softwareTriggerSupported);
/** Mode mask. */
public native @Cast("unsigned int") int modeMask(); public native fc2TriggerModeInfo modeMask(int modeMask);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2TriggerModeInfo reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** A camera trigger. */
public static class fc2TriggerMode extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2TriggerMode() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2TriggerMode(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2TriggerMode(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2TriggerMode position(long position) {
return (fc2TriggerMode)super.position(position);
}
/** Flag controlling on/off. */
public native @Cast("BOOL") int onOff(); public native fc2TriggerMode onOff(int onOff);
/** Polarity value. */
public native @Cast("unsigned int") int polarity(); public native fc2TriggerMode polarity(int polarity);
/** Source value. */
public native @Cast("unsigned int") int source(); public native fc2TriggerMode source(int source);
/** Mode value. */
public native @Cast("unsigned int") int mode(); public native fc2TriggerMode mode(int mode);
/** Parameter value. */
public native @Cast("unsigned int") int parameter(); public native fc2TriggerMode parameter(int parameter);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2TriggerMode reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** A camera strobe property. */
public static class fc2StrobeInfo extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2StrobeInfo() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2StrobeInfo(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2StrobeInfo(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2StrobeInfo position(long position) {
return (fc2StrobeInfo)super.position(position);
}
/** Source value. */
public native @Cast("unsigned int") int source(); public native fc2StrobeInfo source(int source);
/** Presence of strobe. */
public native @Cast("BOOL") int present(); public native fc2StrobeInfo present(int present);
/** Flag indicating if strobe value can be read out. */
public native @Cast("BOOL") int readOutSupported(); public native fc2StrobeInfo readOutSupported(int readOutSupported);
/** Flag indicating if on/off is supported. */
public native @Cast("BOOL") int onOffSupported(); public native fc2StrobeInfo onOffSupported(int onOffSupported);
/** Flag indicating if polarity is supported. */
public native @Cast("BOOL") int polaritySupported(); public native fc2StrobeInfo polaritySupported(int polaritySupported);
/** Minimum value. */
public native float minValue(); public native fc2StrobeInfo minValue(float minValue);
/** Maximum value. */
public native float maxValue(); public native fc2StrobeInfo maxValue(float maxValue);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2StrobeInfo reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** A camera strobe. */
public static class fc2StrobeControl extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2StrobeControl() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2StrobeControl(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2StrobeControl(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2StrobeControl position(long position) {
return (fc2StrobeControl)super.position(position);
}
/** Source value. */
public native @Cast("unsigned int") int source(); public native fc2StrobeControl source(int source);
/** Flag controlling on/off. */
public native @Cast("BOOL") int onOff(); public native fc2StrobeControl onOff(int onOff);
/** Signal polarity. */
public native @Cast("unsigned int") int polarity(); public native fc2StrobeControl polarity(int polarity);
/** Signal delay (in ms). */
public native float delay(); public native fc2StrobeControl delay(float delay);
/** Signal duration (in ms). */
public native float duration(); public native fc2StrobeControl duration(float duration);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2StrobeControl reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Timestamp information. */
public static class fc2TimeStamp extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2TimeStamp() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2TimeStamp(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2TimeStamp(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2TimeStamp position(long position) {
return (fc2TimeStamp)super.position(position);
}
/** Seconds. */
public native long seconds(); public native fc2TimeStamp seconds(long seconds);
/** Microseconds. */
public native @Cast("unsigned int") int microSeconds(); public native fc2TimeStamp microSeconds(int microSeconds);
/** 1394 cycle time seconds. */
public native @Cast("unsigned int") int cycleSeconds(); public native fc2TimeStamp cycleSeconds(int cycleSeconds);
/** 1394 cycle time count. */
public native @Cast("unsigned int") int cycleCount(); public native fc2TimeStamp cycleCount(int cycleCount);
/** 1394 cycle time offset. */
public native @Cast("unsigned int") int cycleOffset(); public native fc2TimeStamp cycleOffset(int cycleOffset);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2TimeStamp reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Camera configuration ROM. */
public static class fc2ConfigROM extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2ConfigROM() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2ConfigROM(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2ConfigROM(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2ConfigROM position(long position) {
return (fc2ConfigROM)super.position(position);
}
/** Vendor ID of a node. */
public native @Cast("unsigned int") int nodeVendorId(); public native fc2ConfigROM nodeVendorId(int nodeVendorId);
/** Chip ID (high part). */
public native @Cast("unsigned int") int chipIdHi(); public native fc2ConfigROM chipIdHi(int chipIdHi);
/** Chip ID (low part). */
public native @Cast("unsigned int") int chipIdLo(); public native fc2ConfigROM chipIdLo(int chipIdLo);
/** Unit Spec ID, usually 0xa02d. */
public native @Cast("unsigned int") int unitSpecId(); public native fc2ConfigROM unitSpecId(int unitSpecId);
/** Unit software version. */
public native @Cast("unsigned int") int unitSWVer(); public native fc2ConfigROM unitSWVer(int unitSWVer);
/** Unit sub software version. */
public native @Cast("unsigned int") int unitSubSWVer(); public native fc2ConfigROM unitSubSWVer(int unitSubSWVer);
/** Vendor unique info 0. */
public native @Cast("unsigned int") int vendorUniqueInfo_0(); public native fc2ConfigROM vendorUniqueInfo_0(int vendorUniqueInfo_0);
/** Vendor unique info 1. */
public native @Cast("unsigned int") int vendorUniqueInfo_1(); public native fc2ConfigROM vendorUniqueInfo_1(int vendorUniqueInfo_1);
/** Vendor unique info 2. */
public native @Cast("unsigned int") int vendorUniqueInfo_2(); public native fc2ConfigROM vendorUniqueInfo_2(int vendorUniqueInfo_2);
/** Vendor unique info 3. */
public native @Cast("unsigned int") int vendorUniqueInfo_3(); public native fc2ConfigROM vendorUniqueInfo_3(int vendorUniqueInfo_3);
/** Keyword. */
public native @Cast("char") byte pszKeyword(int i); public native fc2ConfigROM pszKeyword(int i, byte pszKeyword);
@MemberGetter public native @Cast("char*") BytePointer pszKeyword();
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2ConfigROM reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Camera information. */
public static class fc2CameraInfo extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2CameraInfo() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2CameraInfo(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2CameraInfo(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2CameraInfo position(long position) {
return (fc2CameraInfo)super.position(position);
}
/** Device serial number. */
public native @Cast("unsigned int") int serialNumber(); public native fc2CameraInfo serialNumber(int serialNumber);
/** Interface type. */
public native @Cast("fc2InterfaceType") int interfaceType(); public native fc2CameraInfo interfaceType(int interfaceType);
/** Driver type. */
public native @Cast("fc2DriverType") int driverType(); public native fc2CameraInfo driverType(int driverType);
/** Flag indicating if this is a color camera. */
public native @Cast("BOOL") int isColorCamera(); public native fc2CameraInfo isColorCamera(int isColorCamera);
/** Device model name. */
public native @Cast("char") byte modelName(int i); public native fc2CameraInfo modelName(int i, byte modelName);
@MemberGetter public native @Cast("char*") BytePointer modelName();
/** Device vendor name. */
public native @Cast("char") byte vendorName(int i); public native fc2CameraInfo vendorName(int i, byte vendorName);
@MemberGetter public native @Cast("char*") BytePointer vendorName();
/** String detailing the sensor information. */
public native @Cast("char") byte sensorInfo(int i); public native fc2CameraInfo sensorInfo(int i, byte sensorInfo);
@MemberGetter public native @Cast("char*") BytePointer sensorInfo();
/** String providing the sensor resolution. */
public native @Cast("char") byte sensorResolution(int i); public native fc2CameraInfo sensorResolution(int i, byte sensorResolution);
@MemberGetter public native @Cast("char*") BytePointer sensorResolution();
/** Driver name of driver being used. */
public native @Cast("char") byte driverName(int i); public native fc2CameraInfo driverName(int i, byte driverName);
@MemberGetter public native @Cast("char*") BytePointer driverName();
/** Firmware version of camera. */
public native @Cast("char") byte firmwareVersion(int i); public native fc2CameraInfo firmwareVersion(int i, byte firmwareVersion);
@MemberGetter public native @Cast("char*") BytePointer firmwareVersion();
/** Firmware build time. */
public native @Cast("char") byte firmwareBuildTime(int i); public native fc2CameraInfo firmwareBuildTime(int i, byte firmwareBuildTime);
@MemberGetter public native @Cast("char*") BytePointer firmwareBuildTime();
/** Maximum bus speed. */
public native @Cast("fc2BusSpeed") int maximumBusSpeed(); public native fc2CameraInfo maximumBusSpeed(int maximumBusSpeed);
/** Bayer tile format. */
public native @Cast("fc2BayerTileFormat") int bayerTileFormat(); public native fc2CameraInfo bayerTileFormat(int bayerTileFormat);
/** Bus number, set to 0 for GigE and USB cameras **/
public native @Cast("fc2PCIeBusSpeed") int pcieBusSpeed(); public native fc2CameraInfo pcieBusSpeed(int pcieBusSpeed);
/** ieee1394 Node number, set to 0 for GigE and USB cameras **/
public native @Cast("unsigned short") short nodeNumber(); public native fc2CameraInfo nodeNumber(short nodeNumber);
/** PCIe Bus Speed, set to PCIE_BUSSPEED_UNKNOWN for unsupported drivers **/
public native @Cast("unsigned short") short busNumber(); public native fc2CameraInfo busNumber(short busNumber);
/** \name IIDC specific information */
/*@{*/
/** DCAM version. */
public native @Cast("unsigned int") int iidcVer(); public native fc2CameraInfo iidcVer(int iidcVer);
/** Configuration ROM data. */
public native @ByRef fc2ConfigROM configROM(); public native fc2CameraInfo configROM(fc2ConfigROM configROM);
/*@}*/
/** \name GigE specific information */
/*@{*/
/** GigE Vision version. */
public native @Cast("unsigned int") int gigEMajorVersion(); public native fc2CameraInfo gigEMajorVersion(int gigEMajorVersion);
/** GigE Vision minor version. */
public native @Cast("unsigned int") int gigEMinorVersion(); public native fc2CameraInfo gigEMinorVersion(int gigEMinorVersion);
/** User defined name. */
public native @Cast("char") byte userDefinedName(int i); public native fc2CameraInfo userDefinedName(int i, byte userDefinedName);
@MemberGetter public native @Cast("char*") BytePointer userDefinedName();
/** XML URL 1. */
public native @Cast("char") byte xmlURL1(int i); public native fc2CameraInfo xmlURL1(int i, byte xmlURL1);
@MemberGetter public native @Cast("char*") BytePointer xmlURL1();
/** XML URL 2. */
public native @Cast("char") byte xmlURL2(int i); public native fc2CameraInfo xmlURL2(int i, byte xmlURL2);
@MemberGetter public native @Cast("char*") BytePointer xmlURL2();
/** MAC address */
public native @ByRef fc2MACAddress macAddress(); public native fc2CameraInfo macAddress(fc2MACAddress macAddress);
/** IP address. */
public native @ByRef fc2IPAddress ipAddress(); public native fc2CameraInfo ipAddress(fc2IPAddress ipAddress);
/** Subnet mask. */
public native @ByRef fc2IPAddress subnetMask(); public native fc2CameraInfo subnetMask(fc2IPAddress subnetMask);
/** Default gateway. */
public native @ByRef fc2IPAddress defaultGateway(); public native fc2CameraInfo defaultGateway(fc2IPAddress defaultGateway);
/** Status/Content of CCP register */
public native @Cast("unsigned int") int ccpStatus(); public native fc2CameraInfo ccpStatus(int ccpStatus);
/** Local Application IP Address. */
public native @Cast("unsigned int") int applicationIPAddress(); public native fc2CameraInfo applicationIPAddress(int applicationIPAddress);
/** Local Application port. */
public native @Cast("unsigned int") int applicationPort(); public native fc2CameraInfo applicationPort(int applicationPort);
/*@}*/
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2CameraInfo reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Properties of a single embedded image info property. */
public static class fc2EmbeddedImageInfoProperty extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2EmbeddedImageInfoProperty() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2EmbeddedImageInfoProperty(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2EmbeddedImageInfoProperty(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2EmbeddedImageInfoProperty position(long position) {
return (fc2EmbeddedImageInfoProperty)super.position(position);
}
/** Whether this property is available. */
public native @Cast("BOOL") int available(); public native fc2EmbeddedImageInfoProperty available(int available);
/** Whether this property is on or off. */
public native @Cast("BOOL") int onOff(); public native fc2EmbeddedImageInfoProperty onOff(int onOff);
}
/** Properties of the possible embedded image information. */
public static class fc2EmbeddedImageInfo extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2EmbeddedImageInfo() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2EmbeddedImageInfo(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2EmbeddedImageInfo(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2EmbeddedImageInfo position(long position) {
return (fc2EmbeddedImageInfo)super.position(position);
}
public native @ByRef fc2EmbeddedImageInfoProperty timestamp(); public native fc2EmbeddedImageInfo timestamp(fc2EmbeddedImageInfoProperty timestamp);
public native @ByRef fc2EmbeddedImageInfoProperty gain(); public native fc2EmbeddedImageInfo gain(fc2EmbeddedImageInfoProperty gain);
public native @ByRef fc2EmbeddedImageInfoProperty shutter(); public native fc2EmbeddedImageInfo shutter(fc2EmbeddedImageInfoProperty shutter);
public native @ByRef fc2EmbeddedImageInfoProperty brightness(); public native fc2EmbeddedImageInfo brightness(fc2EmbeddedImageInfoProperty brightness);
public native @ByRef fc2EmbeddedImageInfoProperty exposure(); public native fc2EmbeddedImageInfo exposure(fc2EmbeddedImageInfoProperty exposure);
public native @ByRef fc2EmbeddedImageInfoProperty whiteBalance(); public native fc2EmbeddedImageInfo whiteBalance(fc2EmbeddedImageInfoProperty whiteBalance);
public native @ByRef fc2EmbeddedImageInfoProperty frameCounter(); public native fc2EmbeddedImageInfo frameCounter(fc2EmbeddedImageInfoProperty frameCounter);
public native @ByRef fc2EmbeddedImageInfoProperty strobePattern(); public native fc2EmbeddedImageInfo strobePattern(fc2EmbeddedImageInfoProperty strobePattern);
public native @ByRef fc2EmbeddedImageInfoProperty GPIOPinState(); public native fc2EmbeddedImageInfo GPIOPinState(fc2EmbeddedImageInfoProperty GPIOPinState);
public native @ByRef fc2EmbeddedImageInfoProperty ROIPosition(); public native fc2EmbeddedImageInfo ROIPosition(fc2EmbeddedImageInfoProperty ROIPosition);
}
/** Metadata related to an image. */
public static class fc2ImageMetadata extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2ImageMetadata() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2ImageMetadata(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2ImageMetadata(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2ImageMetadata position(long position) {
return (fc2ImageMetadata)super.position(position);
}
/** Embedded timestamp. */
public native @Cast("unsigned int") int embeddedTimeStamp(); public native fc2ImageMetadata embeddedTimeStamp(int embeddedTimeStamp);
/** Embedded gain. */
public native @Cast("unsigned int") int embeddedGain(); public native fc2ImageMetadata embeddedGain(int embeddedGain);
/** Embedded shutter. */
public native @Cast("unsigned int") int embeddedShutter(); public native fc2ImageMetadata embeddedShutter(int embeddedShutter);
/** Embedded brightness. */
public native @Cast("unsigned int") int embeddedBrightness(); public native fc2ImageMetadata embeddedBrightness(int embeddedBrightness);
/** Embedded exposure. */
public native @Cast("unsigned int") int embeddedExposure(); public native fc2ImageMetadata embeddedExposure(int embeddedExposure);
/** Embedded white balance. */
public native @Cast("unsigned int") int embeddedWhiteBalance(); public native fc2ImageMetadata embeddedWhiteBalance(int embeddedWhiteBalance);
/** Embedded frame counter. */
public native @Cast("unsigned int") int embeddedFrameCounter(); public native fc2ImageMetadata embeddedFrameCounter(int embeddedFrameCounter);
/** Embedded strobe pattern. */
public native @Cast("unsigned int") int embeddedStrobePattern(); public native fc2ImageMetadata embeddedStrobePattern(int embeddedStrobePattern);
/** Embedded GPIO pin state. */
public native @Cast("unsigned int") int embeddedGPIOPinState(); public native fc2ImageMetadata embeddedGPIOPinState(int embeddedGPIOPinState);
/** Embedded ROI position. */
public native @Cast("unsigned int") int embeddedROIPosition(); public native fc2ImageMetadata embeddedROIPosition(int embeddedROIPosition);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2ImageMetadata reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Information about the camera's look up table. */
public static class fc2LUTData extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2LUTData() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2LUTData(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2LUTData(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2LUTData position(long position) {
return (fc2LUTData)super.position(position);
}
/** Flag indicating if LUT is supported. */
public native @Cast("BOOL") int supported(); public native fc2LUTData supported(int supported);
/** Flag indicating if LUT is enabled. */
public native @Cast("BOOL") int enabled(); public native fc2LUTData enabled(int enabled);
/** The number of LUT banks available (Always 1 for PGR LUT). */
public native @Cast("unsigned int") int numBanks(); public native fc2LUTData numBanks(int numBanks);
/** The number of LUT channels per bank available. */
public native @Cast("unsigned int") int numChannels(); public native fc2LUTData numChannels(int numChannels);
/** The input bit depth of the LUT. */
public native @Cast("unsigned int") int inputBitDepth(); public native fc2LUTData inputBitDepth(int inputBitDepth);
/** The output bit depth of the LUT. */
public native @Cast("unsigned int") int outputBitDepth(); public native fc2LUTData outputBitDepth(int outputBitDepth);
/** The number of entries in the LUT. */
public native @Cast("unsigned int") int numEntries(); public native fc2LUTData numEntries(int numEntries);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2LUTData reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Camera diagnostic information. */
public static class fc2CameraStats extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2CameraStats() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2CameraStats(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2CameraStats(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2CameraStats position(long position) {
return (fc2CameraStats)super.position(position);
}
/* Number of dropped images in DROP_IMAGE mode */
public native @Cast("unsigned int") int imageDropped(); public native fc2CameraStats imageDropped(int imageDropped);
/* Number of corrupt images, such as missing packet, zero packet */
public native @Cast("unsigned int") int imageCorrupt(); public native fc2CameraStats imageCorrupt(int imageCorrupt);
/* Number of transmissions failed of camera */
public native @Cast("unsigned int") int imageXmitFailed(); public native fc2CameraStats imageXmitFailed(int imageXmitFailed);
/* Number of images dropped in driver */
public native @Cast("unsigned int") int imageDriverDropped(); public native fc2CameraStats imageDriverDropped(int imageDriverDropped);
/* Errors of register reading */
public native @Cast("unsigned int") int regReadFailed(); public native fc2CameraStats regReadFailed(int regReadFailed);
/* Errors of register writing */
public native @Cast("unsigned int") int regWriteFailed(); public native fc2CameraStats regWriteFailed(int regWriteFailed);
/* Port errors */
public native @Cast("unsigned int") int portErrors(); public native fc2CameraStats portErrors(int portErrors);
/* The value of the camera power register.
* false: Camera is powered down.
* true: Camera is powered up.
*/
public native @Cast("BOOL") int cameraPowerUp(); public native fc2CameraStats cameraPowerUp(int cameraPowerUp);
/* The voltage values of the various voltage registers
* supported by the camera.
*/
public native float cameraVoltages(int i); public native fc2CameraStats cameraVoltages(int i, float cameraVoltages);
@MemberGetter public native FloatPointer cameraVoltages();
/** The number of voltage registers available.
* 0: the values in cameraVoltages[] are invalid.
*/
public native @Cast("unsigned int") int numVoltages(); public native fc2CameraStats numVoltages(int numVoltages);
/* The current values of the various current registers
* supported by the camera.
*/
public native float cameraCurrents(int i); public native fc2CameraStats cameraCurrents(int i, float cameraCurrents);
@MemberGetter public native FloatPointer cameraCurrents();
/** The number of current registers available.
* 0: the values in cameraCurrents[] are invalid.
*/
public native @Cast("unsigned int") int numCurrents(); public native fc2CameraStats numCurrents(int numCurrents);
/* The temperature of the camera board-level components. The value is
* in kelvins (0?C = 273.15K) and are in one-tenths (0.1) of a kelvin.
*/
public native @Cast("unsigned int") int temperature(); public native fc2CameraStats temperature(int temperature);
/* Time in seconds since the camera was initialized. */
public native @Cast("unsigned int") int timeSinceInitialization(); public native fc2CameraStats timeSinceInitialization(int timeSinceInitialization);
/* Time in seconds since the camera detected a bus reset. */
public native @Cast("unsigned int") int timeSinceBusReset(); public native fc2CameraStats timeSinceBusReset(int timeSinceBusReset);
/* Time stamp */
public native @ByRef fc2TimeStamp timeStamp(); public native fc2CameraStats timeStamp(fc2TimeStamp timeStamp);
/* Number of packets requested for resend */
public native @Cast("unsigned int") int numResendPacketsRequested(); public native fc2CameraStats numResendPacketsRequested(int numResendPacketsRequested);
/* Number of packet-resend packets received */
public native @Cast("unsigned int") int numResendPacketsReceived(); public native fc2CameraStats numResendPacketsReceived(int numResendPacketsReceived);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2CameraStats reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/**
* \defgroup CImageSaveStructures Image saving structures.
*
* These structures define various parameters used for saving images.
*/
/*@{*/
/** Options for saving PNG images. */
public static class fc2PNGOption extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2PNGOption() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2PNGOption(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2PNGOption(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2PNGOption position(long position) {
return (fc2PNGOption)super.position(position);
}
/** Whether to save the PNG as interlaced. */
public native @Cast("BOOL") int interlaced(); public native fc2PNGOption interlaced(int interlaced);
/** Compression level (0-9). 0 is no compression, 9 is best compression. */
public native @Cast("unsigned int") int compressionLevel(); public native fc2PNGOption compressionLevel(int compressionLevel);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2PNGOption reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Options for saving PPM images. */
public static class fc2PPMOption extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2PPMOption() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2PPMOption(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2PPMOption(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2PPMOption position(long position) {
return (fc2PPMOption)super.position(position);
}
/** Whether to save the PPM as a binary file. */
public native @Cast("BOOL") int binaryFile(); public native fc2PPMOption binaryFile(int binaryFile);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2PPMOption reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Options for saving PGM images. */
public static class fc2PGMOption extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2PGMOption() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2PGMOption(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2PGMOption(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2PGMOption position(long position) {
return (fc2PGMOption)super.position(position);
}
/** Whether to save the PPM as a binary file. */
public native @Cast("BOOL") int binaryFile(); public native fc2PGMOption binaryFile(int binaryFile);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2PGMOption reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** enum _fc2TIFFCompressionMethod */
public static final int
/** Save without any compression. */
FC2_TIFF_NONE = 1,
/** Save using PACKBITS compression. */
FC2_TIFF_PACKBITS = 2,
/** Save using DEFLATE compression (ZLIB compression). */
FC2_TIFF_DEFLATE = 3,
/** Save using ADOBE DEFLATE compression */
FC2_TIFF_ADOBE_DEFLATE = 4,
/**
* Save using CCITT Group 3 fax encoding. This is only valid for
* 1-bit images only. Default to LZW for other bit depths.
*/
FC2_TIFF_CCITTFAX3 = 5,
/**
* Save using CCITT Group 4 fax encoding. This is only valid for
* 1-bit images only. Default to LZW for other bit depths.
*/
FC2_TIFF_CCITTFAX4 = 6,
/** Save using LZW compression. */
FC2_TIFF_LZW = 7,
/**
* Save using JPEG compression. This is only valid for 8-bit
* greyscale and 24-bit only. Default to LZW for other bit depths.
*/
FC2_TIFF_JPEG = 8;
/** Options for saving TIFF images. */
public static class fc2TIFFOption extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2TIFFOption() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2TIFFOption(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2TIFFOption(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2TIFFOption position(long position) {
return (fc2TIFFOption)super.position(position);
}
/** Compression method to use for encoding TIFF images. */
public native @Cast("fc2TIFFCompressionMethod") int compression(); public native fc2TIFFOption compression(int compression);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2TIFFOption reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Options for saving JPEG image. */
public static class fc2JPEGOption extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2JPEGOption() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2JPEGOption(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2JPEGOption(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2JPEGOption position(long position) {
return (fc2JPEGOption)super.position(position);
}
/** Whether to save as a progressive JPEG file. */
public native @Cast("BOOL") int progressive(); public native fc2JPEGOption progressive(int progressive);
/**
* JPEG image quality in range (0-100).
* - 100 - Superb quality.
* - 75 - Good quality.
* - 50 - Normal quality.
* - 10 - Poor quality.
*/
public native @Cast("unsigned int") int quality(); public native fc2JPEGOption quality(int quality);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2JPEGOption reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Options for saving JPEG2000 image. */
public static class fc2JPG2Option extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2JPG2Option() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2JPG2Option(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2JPG2Option(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2JPG2Option position(long position) {
return (fc2JPG2Option)super.position(position);
}
/** JPEG saving quality in range (1-512). */
public native @Cast("unsigned int") int quality(); public native fc2JPG2Option quality(int quality);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2JPG2Option reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
/** Options for saving Bitmap image. */
public static class fc2BMPOption extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2BMPOption() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2BMPOption(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2BMPOption(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2BMPOption position(long position) {
return (fc2BMPOption)super.position(position);
}
public native @Cast("BOOL") int indexedColor_8bit(); public native fc2BMPOption indexedColor_8bit(int indexedColor_8bit);
/** Reserved for future use. */
public native @Cast("unsigned int") int reserved(int i); public native fc2BMPOption reserved(int i, int reserved);
@MemberGetter public native @Cast("unsigned int*") IntPointer reserved();
}
//=============================================================================
// Callbacks
//=============================================================================
@Namespace @Name("void") @Opaque public static class fc2CallbackHandle extends Pointer {
/** Empty constructor. Calls {@code super((Pointer)null)}. */
public fc2CallbackHandle() { super((Pointer)null); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2CallbackHandle(Pointer p) { super(p); }
}
public static class fc2BusEventCallback extends FunctionPointer {
static { Loader.load(); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2BusEventCallback(Pointer p) { super(p); }
protected fc2BusEventCallback() { allocate(); }
private native void allocate();
public native void call( Pointer pParameter, @Cast("unsigned int") int serialNumber );
}
public static class fc2ImageEventCallback extends FunctionPointer {
static { Loader.load(); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2ImageEventCallback(Pointer p) { super(p); }
protected fc2ImageEventCallback() { allocate(); }
private native void allocate();
public native void call( fc2Image image, Pointer pCallbackData );
}
public static class fc2AsyncCommandCallback extends FunctionPointer {
static { Loader.load(); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2AsyncCommandCallback(Pointer p) { super(p); }
protected fc2AsyncCommandCallback() { allocate(); }
private native void allocate();
public native void call( @Cast("fc2Error") int retError, Pointer pUserData );
}
public static class fc2CameraEventCallback extends FunctionPointer {
static { Loader.load(); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2CameraEventCallback(Pointer p) { super(p); }
protected fc2CameraEventCallback() { allocate(); }
private native void allocate();
public native void call( Pointer pCallbackData );
}
/*******************************************************************************
* Camera event data types
******************************************************************************/
/** Options for enabling device event registration. */
public static class fc2EventOptions extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2EventOptions() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2EventOptions(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2EventOptions(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2EventOptions position(long position) {
return (fc2EventOptions)super.position(position);
}
/** Callback function pointer */
public native fc2CameraEventCallback EventCallbackFcn(); public native fc2EventOptions EventCallbackFcn(fc2CameraEventCallback EventCallbackFcn);
/** Event name to register */
@MemberGetter public native @Cast("const char*") BytePointer EventName();
/** Pointer to callback data to be passed to the callback function */
@MemberGetter public native @Const Pointer EventUserData();
/** Size of the underlying struct passed as eventCallbackData for sanity checks */
public native @Cast("size_t") long EventUserDataSize(); public native fc2EventOptions EventUserDataSize(long EventUserDataSize);
}
/* Callback data passed to the callback function provided when using
* RegisterEvent() or RegisterAllEvents().
*/
public static class fc2EventCallbackData extends Pointer {
static { Loader.load(); }
/** Default native constructor. */
public fc2EventCallbackData() { super((Pointer)null); allocate(); }
/** Native array allocator. Access with {@link Pointer#position(long)}. */
public fc2EventCallbackData(long size) { super((Pointer)null); allocateArray(size); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public fc2EventCallbackData(Pointer p) { super(p); }
private native void allocate();
private native void allocateArray(long size);
@Override public fc2EventCallbackData position(long position) {
return (fc2EventCallbackData)super.position(position);
}
/** Pointer to the user-supplied data struct */
public native Pointer EventUserData(); public native fc2EventCallbackData EventUserData(Pointer EventUserData);
/** Size of the user data supplied to the RegisterEvent()
* function.
*/
public native @Cast("size_t") long EventUserDataSize(); public native fc2EventCallbackData EventUserDataSize(long EventUserDataSize);
/** The event name used to register the event. Provided so the user
* knows which event triggered the callback.
*/
@MemberGetter public native @Cast("const char*") BytePointer EventName();
/** The device register which EventName maps to. Provides an alternate
* means of indexing into different event types.
*/
public native @Cast("unsigned long long") long EventID(); public native fc2EventCallbackData EventID(long EventID);
/** Timestamp indicated the time (as reported by the camera) at which
* the camera exposure operation completed. This can be compared with
* image timestamps if there is a need to map event timestamps to
* specific images, if applicable.
*/
public native @Cast("unsigned long long") long EventTimestamp(); public native fc2EventCallbackData EventTimestamp(long EventTimestamp);
/** A pointer to additional data pertaining to the event which just
* trigger the callback function. The data may be of difference sizes
* or may not even be allocated, depending on the type of event which
* triggered the callback.
*/
public native Pointer EventData(); public native fc2EventCallbackData EventData(Pointer EventData);
/** The size of the structure pointed to by EventData. This value should
* be checked, especially if there are events which can trigger variable-
* length event data to be returned to the user when the callback function
* is issued.
*/
public native @Cast("size_t") long EventDataSize(); public native fc2EventCallbackData EventDataSize(long EventDataSize);
}
/*@}*/
/*@}*/
// #ifdef __cplusplus
// #endif
// #endif // FLIR_FLYCAPTURE2DEFS_C_H
// Parsed from
//=============================================================================
// Copyright (c) 2001-2018 FLIR Systems, Inc. All Rights Reserved.
//
// This software is the confidential and proprietary information of FLIR
// Integrated Imaging Solutions, Inc. ("Confidential Information"). You
// shall not disclose such Confidential Information and shall use it only in
// accordance with the terms of the license agreement you entered into
// with FLIR Integrated Imaging Solutions, Inc. (FLIR).
//
// FLIR MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE
// SOFTWARE, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE, OR NON-INFRINGEMENT. FLIR SHALL NOT BE LIABLE FOR ANY DAMAGES
// SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
// THIS SOFTWARE OR ITS DERIVATIVES.
//=============================================================================
// #ifndef FLIR_FLYCAPTURE2_C_H
// #define FLIR_FLYCAPTURE2_C_H
//=============================================================================
// Global C header file for FlyCapture2.
//
// This file defines the C API for FlyCapture2
//=============================================================================
// #include "FlyCapture2Platform_C.h"
// #include "FlyCapture2Defs_C.h"
// #ifdef __cplusplus
// #endif
/**
* Create a FC2 context for IIDC camera.
* This call must be made before any other calls that use a context
* will succeed.
*
* @see fc2DestroyContext()
*
* @param pContext A pointer to the fc2Context to be created.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2CreateContext(
@Cast("fc2Context*") @ByPtrPtr fc2Context pContext );
/**
* Create a FC2 context for a GigE Vision camera.
* This call must be made before any other calls that use a context
* will succeed.
*
* @see fc2DestroyContext()
*
* @param pContext A pointer to the fc2Context to be created.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2CreateGigEContext(
@Cast("fc2Context*") @ByPtrPtr fc2Context pContext );
/**
* Destroy the FC2 context. This must be called when the user is finished
* with the context in order to prevent memory leaks.
*
* @see fc2CreateContext()
*
* @param context The context to be destroyed.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2DestroyContext(
fc2Context context );
/**
* \defgroup CBusManager Bus Manager Operation
*
* \brief The functions in this section provide access to BusManager
* operations
*/
/*@{*/
/**
* Fire a bus reset. The actual bus reset is only fired for the
* specified 1394 bus, but it will effectively cause a global bus
* reset for the library.
*
* @param context The fc2Context to be used.
* @param pGuid PGRGuid of the camera or the device to cause bus reset.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2FireBusReset(
fc2Context context,
fc2PGRGuid pGuid);
/**
* Gets the number of cameras attached to the PC.
*
* @param context The fc2Context to be used.
* @param pNumCameras Number of cameras detected.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetNumOfCameras(
fc2Context context,
@Cast("unsigned int*") IntPointer pNumCameras );
public static native @Cast("fc2Error") int fc2GetNumOfCameras(
fc2Context context,
@Cast("unsigned int*") IntBuffer pNumCameras );
public static native @Cast("fc2Error") int fc2GetNumOfCameras(
fc2Context context,
@Cast("unsigned int*") int[] pNumCameras );
/**
* Gets the PGRGuid for a camera with the specified IPv4 address.
*
* @param context The fc2Context to be used.
* @param ipAddress IP address to get GUID for.
* @param pGuid Unique PGRGuid for the camera.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetCameraFromIPAddress(
fc2Context context,
@ByVal fc2IPAddress ipAddress,
fc2PGRGuid pGuid);
/**
* Gets the PGRGuid for a camera on the PC. It uniquely identifies
* the camera specified by the index and is used to identify the camera
* during a fc2Connect() call.
*
* @param context The fc2Context to be used.
* @param index Zero based index of camera.
* @param pGuid Unique PGRGuid for the camera.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetCameraFromIndex(
fc2Context context,
@Cast("unsigned int") int index,
fc2PGRGuid pGuid);
/**
* Gets the PGRGuid for a camera on the PC. It uniquely identifies
* the camera specified by the serial number and is used to identify the camera
* during a fc2Connect() call.
*
* @param context The fc2Context to be used.
* @param serialNumber Serial number of camera.
* @param pGuid Unique PGRGuid for the camera.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetCameraFromSerialNumber(
fc2Context context,
@Cast("unsigned int") int serialNumber,
fc2PGRGuid pGuid );
/**
* Gets the serial number of the camera with the specified index.
*
* @param context The fc2Context to be used.
* @param index Zero based index of desired camera.
* @param pSerialNumber Serial number of camera.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetCameraSerialNumberFromIndex(
fc2Context context,
@Cast("unsigned int") int index,
@Cast("unsigned int*") IntPointer pSerialNumber );
public static native @Cast("fc2Error") int fc2GetCameraSerialNumberFromIndex(
fc2Context context,
@Cast("unsigned int") int index,
@Cast("unsigned int*") IntBuffer pSerialNumber );
public static native @Cast("fc2Error") int fc2GetCameraSerialNumberFromIndex(
fc2Context context,
@Cast("unsigned int") int index,
@Cast("unsigned int*") int[] pSerialNumber );
/**
* Gets the interface type associated with a PGRGuid. This is useful
* in situations where there is a need to enumerate all cameras
* for a particular interface.
*
* @param context The fc2Context to be used.
* @param pGuid The PGRGuid to get the interface for.
* @param pInterfaceType The interface type of the PGRGuid.
*
* @return
*/
public static native @Cast("fc2Error") int fc2GetInterfaceTypeFromGuid(
fc2Context context,
fc2PGRGuid pGuid,
@Cast("fc2InterfaceType*") IntPointer pInterfaceType );
public static native @Cast("fc2Error") int fc2GetInterfaceTypeFromGuid(
fc2Context context,
fc2PGRGuid pGuid,
@Cast("fc2InterfaceType*") IntBuffer pInterfaceType );
public static native @Cast("fc2Error") int fc2GetInterfaceTypeFromGuid(
fc2Context context,
fc2PGRGuid pGuid,
@Cast("fc2InterfaceType*") int[] pInterfaceType );
/**
* Gets the number of devices. This may include hubs, host controllers
* and other hardware devices (including cameras).
*
* @param context The fc2Context to be used.
* @param pNumDevices The number of devices found.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetNumOfDevices(
fc2Context context,
@Cast("unsigned int*") IntPointer pNumDevices );
public static native @Cast("fc2Error") int fc2GetNumOfDevices(
fc2Context context,
@Cast("unsigned int*") IntBuffer pNumDevices );
public static native @Cast("fc2Error") int fc2GetNumOfDevices(
fc2Context context,
@Cast("unsigned int*") int[] pNumDevices );
/**
* Gets the PGRGuid for a device. It uniquely identifies the device
* specified by the index.
*
* @param context The fc2Context to be used.
* @param index Zero based index of device.
* @param pGuid Unique PGRGuid for the device.
*
* @see fc2GetNumOfDevices()
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetDeviceFromIndex(
fc2Context context,
@Cast("unsigned int") int index,
fc2PGRGuid pGuid );
/**
* Read a phy register on the specified device. The full address
* to be read from is determined by the page, port and address.
*
* @param context The fc2Context to be used.
* @param guid Unique PGRGuid for the device.
* @param page Page to read from.
* @param port Port to read from.
* @param address Address to read from.
* @param pValue Value read from the phy register.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ReadPhyRegister(
fc2Context context,
@ByVal fc2PGRGuid guid,
@Cast("unsigned int") int page,
@Cast("unsigned int") int port,
@Cast("unsigned int") int address,
@Cast("unsigned int*") IntPointer pValue );
public static native @Cast("fc2Error") int fc2ReadPhyRegister(
fc2Context context,
@ByVal fc2PGRGuid guid,
@Cast("unsigned int") int page,
@Cast("unsigned int") int port,
@Cast("unsigned int") int address,
@Cast("unsigned int*") IntBuffer pValue );
public static native @Cast("fc2Error") int fc2ReadPhyRegister(
fc2Context context,
@ByVal fc2PGRGuid guid,
@Cast("unsigned int") int page,
@Cast("unsigned int") int port,
@Cast("unsigned int") int address,
@Cast("unsigned int*") int[] pValue );
/**
* Write a phy register on the specified device. The full address
* to be written to is determined by the page, port and address.
*
* @param context The fc2Context to be used.
* @param guid Unique PGRGuid for the device.
* @param page Page to write to.
* @param port Port to write to.
* @param address Address to write to.
* @param value Value to write to phy register.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2WritePhyRegister(
fc2Context context,
@ByVal fc2PGRGuid guid,
@Cast("unsigned int") int page,
@Cast("unsigned int") int port,
@Cast("unsigned int") int address,
@Cast("unsigned int") int value );
/**
* Read usb link info for the port that the specified device is connected to.
*
* @param context The fc2Context to be used.
* @param guid Unique PGRGuid for the device.
* @param pValue Value read from the card register.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetUsbLinkInfo(
fc2Context context,
@ByVal fc2PGRGuid guid,
@Cast("unsigned int*") IntPointer pValue );
public static native @Cast("fc2Error") int fc2GetUsbLinkInfo(
fc2Context context,
@ByVal fc2PGRGuid guid,
@Cast("unsigned int*") IntBuffer pValue );
public static native @Cast("fc2Error") int fc2GetUsbLinkInfo(
fc2Context context,
@ByVal fc2PGRGuid guid,
@Cast("unsigned int*") int[] pValue );
/**
* Read usb port status for the port that the specified device is connected to.
*
* @param context The fc2Context to be used.
* @param guid Unique PGRGuid for the device.
* @param pValue Value read from the card register.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetUsbPortStatus(
fc2Context context,
@ByVal fc2PGRGuid guid,
@Cast("unsigned int*") IntPointer pValue );
public static native @Cast("fc2Error") int fc2GetUsbPortStatus(
fc2Context context,
@ByVal fc2PGRGuid guid,
@Cast("unsigned int*") IntBuffer pValue );
public static native @Cast("fc2Error") int fc2GetUsbPortStatus(
fc2Context context,
@ByVal fc2PGRGuid guid,
@Cast("unsigned int*") int[] pValue );
/**
* Gets the topology information for the PC.
*
* @param context The fc2Context to be used.
* @param pTopologyNodeContext A Topology Node context that will contain
* the topology information
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetTopology(
fc2Context context,
@ByPtrPtr fc2TopologyNodeContext pTopologyNodeContext );
/**
* Register a callback function that will be called when the
* specified callback event occurs.
*
* @param context The fc2Context to be used.
* @param enumCallback Pointer to function that will receive the callback.
* @param callbackType Type of callback to register for.
* @param pParameter Callback parameter to be passed to callback.
* @param pCallbackHandle Unique callback handle used for unregistering
* callback.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2RegisterCallback(
fc2Context context,
fc2BusEventCallback enumCallback,
@Cast("fc2BusCallbackType") int callbackType,
Pointer pParameter,
@ByPtrPtr fc2CallbackHandle pCallbackHandle );
/**
* Unregister a callback function.
*
* @param context The fc2Context to be used.
* @param callbackHandle Unique callback handle.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2UnregisterCallback(
fc2Context context,
fc2CallbackHandle callbackHandle );
/**
* Force a rescan of the buses. This does not trigger a bus reset.
* The camera objects will be invalidated only if the camera network
* topology is changed (ie. a camera is disconnected or added)
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2RescanBus( fc2Context context);
/**
* Force the camera with the specific MAC address to the specified
* IP address, subnet mask and default gateway. This is useful in
* situations where a GigE Vision camera is using Persistent IP and the
* application's subnet is different from the device subnet.
*
* @param context The fc2Context to be used.
* @param macAddress MAC address of the camera.
* @param ipAddress IP address to set on the camera.
* @param subnetMask Subnet mask to set on the camera.
* @param defaultGateway Default gateway to set on the camera.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ForceIPAddressToCamera(
fc2Context context,
@ByVal fc2MACAddress macAddress,
@ByVal fc2IPAddress ipAddress,
@ByVal fc2IPAddress subnetMask,
@ByVal fc2IPAddress defaultGateway );
/**
* Force all cameras on the network to be assigned sequential IP addresses
* on the same subnet as the network adapters that they are connected to.
* This is useful in situations where GigE Vision cameras are using
* IP addresses in a subnet different from the host's subnet.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ForceAllIPAddressesAutomatically();
/**
* Force cameras on the network to be assigned sequential IP addresses
* on the same subnet as the network adapters that it is connected to.
* This is useful in situations where GigE Vision cameras are using
* IP addresses in a subnet different from the host's subnet.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ForceIPAddressAutomatically(@Cast("unsigned int") int serialNumber);
/**
* Discover all cameras connected to the network even if they reside
* on a different subnet. This is useful in situations where a GigE
* camera is using Persistent IP and the application's subnet is
* different from the device subnet. After discovering the camera,
* it is easy to use ForceIPAddressToCamera() to set a different IP
* configuration.
*
* @param context The fc2Context to be used.
* @param gigECameras Pointer to an array of CameraInfo structures.
* @param arraySize Size of the array. Number of discovered cameras
* is returned in the same value.
*
* @return An Error indicating the success or failure of the function.
* If the error is PGRERROR_BUFFER_TOO_SMALL then arraySize will
* contain the minimum size needed for gigECameras array.
*/
public static native @Cast("fc2Error") int fc2DiscoverGigECameras(
fc2Context context,
fc2CameraInfo gigECameras,
@Cast("unsigned int*") IntPointer arraySize );
public static native @Cast("fc2Error") int fc2DiscoverGigECameras(
fc2Context context,
fc2CameraInfo gigECameras,
@Cast("unsigned int*") IntBuffer arraySize );
public static native @Cast("fc2Error") int fc2DiscoverGigECameras(
fc2Context context,
fc2CameraInfo gigECameras,
@Cast("unsigned int*") int[] arraySize );
/**
* Query whether a GigE camera is controllable.
*
* @param context The fc2Context to be used.
* @param pGuid Unique PGRGuid for the camera.
* @param pControllable True indicates camera is controllable
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2IsCameraControlable(
fc2Context context,
fc2PGRGuid pGuid,
@Cast("BOOL*") IntPointer pControlable);
public static native @Cast("fc2Error") int fc2IsCameraControlable(
fc2Context context,
fc2PGRGuid pGuid,
@Cast("BOOL*") IntBuffer pControlable);
public static native @Cast("fc2Error") int fc2IsCameraControlable(
fc2Context context,
fc2PGRGuid pGuid,
@Cast("BOOL*") int[] pControlable);
/*@}*/
/**
* \defgroup CConnectionAndImage Connection and Image Retrieval
*
* \brief These functions deal with connections and image retrieval from
* the camera.
*/
/*@{*/
/**
* Connects the fc2Context to the camera specified by the GUID.
*
* Be aware that calling fc2CreateGUIContext() releases the CCP acquired
* for GigE cameras in fc2Connect(). Consider calling fc2Connect() after
* fc2CreateGUIContext().
*
* @param context The fc2Context to be used.
* @param guid The unique identifier for a specific camera on the PC.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2Connect(
fc2Context context,
fc2PGRGuid guid );
/**
* Disconnects the fc2Context from the camera. This allows another physical
* camera specified by a GUID to be connected to the fc2Context.
*
* @see fc2Connect()
*
* @param context The fc2Context to be used.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2Disconnect(
fc2Context context );
/**
* Checks if the fc2Context is connected to a physical camera
* specified by a GUID.
*
* @see fc2Connect()
* @see fc2Disconnect()
*
* @param context The fc2Context to be used.
*
* @return Whether fc2Connect() was called on the fc2Context.
*/
public static native @Cast("BOOL") int fc2IsConnected(
fc2Context context );
/**
* Sets the callback data to be used on completion of image transfer.
* To clear the current stored callback data, pass in NULL for both
* callback arguments.
*
* @see fc2StartCapture()
*
* @param context The fc2Context to be used.
* @param pCallbackFn A function to be called when a new image is received.
* @param pCallbackData A pointer to data that can be passed to the
* callback function.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetCallback(
fc2Context context,
fc2ImageEventCallback pCallbackFn,
Pointer pCallbackData);
/**
* Starts isochronous image capture. It will use either the current
* video mode or the most recently set video mode of the camera.
*
* @see fc2RetrieveBuffer()
* @see fc2StartSyncCapture()
* @see fc2StopCapture()
*
* @param context The fc2Context to be used.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2StartCapture(
fc2Context context );
/**
* Starts isochronous image capture. It will use either the current
* video mode or the most recently set video mode of the camera. The callback
* function is called when a new image is received from the camera.
*
* @see fc2RetrieveBuffer()
* @see fc2StartSyncCapture()
* @see fc2StopCapture()
*
* @param context The fc2Context to be used.
* @param pCallbackFn A function to be called when a new image is received.
* @param pCallbackData A pointer to data that can be passed to the
* callback function. A NULL pointer is acceptable.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2StartCaptureCallback(
fc2Context context,
fc2ImageEventCallback pCallbackFn,
Pointer pCallbackData);
/**
* Starts synchronized isochronous image capture on multiple cameras.
* This function is only used for firewire cameras.
*
* @see fc2RetrieveBuffer()
* @see fc2StartCapture()
* @see fc2StopCapture()
*
* @param numCameras Number of fc2Contexts in the ppCameras array.
* @param pContexts Array of fc2Contexts.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2StartSyncCapture(
@Cast("unsigned int") int numCameras,
@Cast("fc2Context*") @ByPtrPtr fc2Context pContexts );
/**
* Starts synchronized isochronous image capture on multiple cameras.
* This function is only used for firewire cameras.
*
* @see fc2RetrieveBuffer()
* @see fc2StartCapture()
* @see fc2StopCapture()
*
* @param numCameras Number of fc2Contexts in the ppCameras array.
* @param pContexts Array of fc2Contexts.
* @param pCallbackFns Array of callback functions for each camera.
* @param pCallbackDataArray Array of callback data pointers.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2StartSyncCaptureCallback(
@Cast("unsigned int") int numCameras,
@Cast("fc2Context*") @ByPtrPtr fc2Context pContexts,
@Cast("fc2ImageEventCallback*") @ByPtrPtr fc2ImageEventCallback pCallbackFns,
@Cast("void**") PointerPointer pCallbackDataArray);
public static native @Cast("fc2Error") int fc2StartSyncCaptureCallback(
@Cast("unsigned int") int numCameras,
@Cast("fc2Context*") @ByPtrPtr fc2Context pContexts,
@Cast("fc2ImageEventCallback*") @ByPtrPtr fc2ImageEventCallback pCallbackFns,
@Cast("void**") @ByPtrPtr Pointer pCallbackDataArray);
/**
* Retrieves the next image object containing the next image.
*
* @see fc2StartCapture()
* @see fc2StopCapture()
*
* @param context The fc2Context to be used.
* @param pImage Pointer to fc2Image to store image data.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2RetrieveBuffer(
fc2Context context,
fc2Image pImage );
/**
* Stops isochronous image transfer and cleans up all associated
* resources.
*
* @see fc2StartCapture()
* @see fc2RetrieveBuffer()
*
* @param context The fc2Context to be used.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2StopCapture(
fc2Context context );
/**
* Retrieves the next image event containing the next part of the image.
*
* @see fc2StartCapture()
* @see fc2RetrieveBuffer()
* @see fc2StopCapture()
*
* @param context The fc2Context to be used.
* @param pImage Pointer to fc2Image to store image data.
* @param eventNumber The event number to wait for.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2WaitForBufferEvent(
fc2Context context,
fc2Image pImage,
@Cast("unsigned int") int eventNumber );
/**
* Specify user allocated buffers to use as image data buffers.
* To prevent image tearing, the size of each buffer should be equal to
* ((unsigned int)(bufferSize + packetSize - 1)/packetSize) * packetSize.
* The total size should be (size * numBuffers) or larger.
* The packet Size that should be used differs between interfaces:
* Firewire: Use the Format7 packet size.
* Usb2: First round to Format7 packet size then round to 512 bytes.
* Usb3: Use a packet size of 1024 bytes.
* GigE: No need to do any rounding on GigE
*
* @see fc2StartCapture()
* @see fc2RetrieveBuffer()
* @see fc2StopCapture()
*
* @param context The fc2Context to be used.
* @param ppMemBuffers Pointer to memory buffers to be written to. The
* size of the data should be equal to
* (size * numBuffers) or larger.
* @param size The size of each buffer (in bytes).
* @param nNumBuffers Number of buffers in the array.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetUserBuffers(
fc2Context context,
@Cast("unsigned char*const") BytePointer ppMemBuffers,
int size,
int nNumBuffers );
public static native @Cast("fc2Error") int fc2SetUserBuffers(
fc2Context context,
@Cast("unsigned char*const") ByteBuffer ppMemBuffers,
int size,
int nNumBuffers );
public static native @Cast("fc2Error") int fc2SetUserBuffers(
fc2Context context,
@Cast("unsigned char*const") byte[] ppMemBuffers,
int size,
int nNumBuffers );
/**
* Get the configuration associated with the camera.
*
* @see fc2SetConfiguration()
*
* @param context The fc2Context to be used.
* @param config Pointer to the configuration structure to be filled.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetConfiguration(
fc2Context context,
fc2Config config );
/**
* Set the configuration associated with the camera.
*
* @see fc2GetConfiguration()
*
* @param context The fc2Context to be used.
* @param config Pointer to the configuration structure to be used.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetConfiguration(
fc2Context context,
fc2Config config );
/*@}*/
/**
* \defgroup CInformationProperties Information and Properties
*
* \brief These functions deal with information and properties can be
* retrieved from the camera.
*/
/*@{*/
/**
* Retrieves information from the camera such as serial number, model
* name and other camera information.
*
* @param context The fc2Context to be used.
* @param pCameraInfo Pointer to the camera information structure
* to be filled.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetCameraInfo(
fc2Context context,
fc2CameraInfo pCameraInfo );
/**
* Retrieves information about the specified camera property. The
* property type must be specified in the fc2PropertyInfo structure
* passed into the function in order for the function to succeed.
*
* @see fc2GetProperty()
* @see fc2SetProperty()
*
* @param context The fc2Context to be used.
* @param propInfo Pointer to the PropertyInfo structure to be filled.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetPropertyInfo(
fc2Context context,
fc2PropertyInfo propInfo );
/**
* Reads the settings for the specified property from the camera. The
* property type must be specified in the fc2Property structure passed
* into the function in order for the function to succeed. If auto
* is on, the integer and abs values returned may not be consistent
* with each other.
*
* @see fc2GetPropertyInfo()
* @see fc2SetProperty()
*
* @param context The fc2Context to be used.
* @param prop Pointer to the Property structure to be filled.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetProperty(
fc2Context context,
fc2Property prop );
/**
* Writes the settings for the specified property to the camera. The
* property type must be specified in the Property structure passed
* into the function in order for the function to succeed.
* The absControl flag controls whether the absolute or integer value
* is written to the camera. Use fc2GetPropertyInfo() to query which
* options are available for a specific property.
*
* @see fc2GetPropertyInfo()
* @see fc2GetProperty()
*
* @param context The fc2Context to be used.
* @param prop Pointer to the Property structure to be used.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetProperty(
fc2Context context,
fc2Property prop );
/**
* Writes the settings for the specified property to the camera. The
* property type must be specified in the Property structure passed
* into the function in order for the function to succeed.
* The absControl flag controls whether the absolute or integer value
* is written to the camera.
*
* @param context The fc2Context to be used.
* @param prop Pointer to the Property structure to be used.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetPropertyBroadcast(
fc2Context context,
fc2Property prop );
/*@}*/
/**
* \defgroup CGeneralPurposeIO General Purpose Input / Output
*
* \brief These functions deal with general GPIO pin control on the camera.
*/
/*@{*/
/**
* Get the GPIO pin direction for the specified pin. This is not a
* required call when using the trigger or strobe functions as
* the pin direction is set automatically internally.
*
* @see fc2SetGPIOPinDirection()
* @see fc2SetGPIOPinDirectionBroadcast()
*
* @param context The fc2Context to be used.
* @param pin Pin to get the direction for.
* @param pDirection Direction of the pin. 0 for input, 1 for output.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetGPIOPinDirection(
fc2Context context,
@Cast("unsigned int") int pin,
@Cast("unsigned int*") IntPointer pDirection );
public static native @Cast("fc2Error") int fc2GetGPIOPinDirection(
fc2Context context,
@Cast("unsigned int") int pin,
@Cast("unsigned int*") IntBuffer pDirection );
public static native @Cast("fc2Error") int fc2GetGPIOPinDirection(
fc2Context context,
@Cast("unsigned int") int pin,
@Cast("unsigned int*") int[] pDirection );
/**
* Set the GPIO pin direction for the specified pin. This is useful if
* there is a need to set the pin into an input pin (i.e. to read the
* voltage) off the pin without setting it as a trigger source. This
* is not a required call when using the trigger or strobe functions as
* the pin direction is set automatically internally.
*
* @see fc2GetGPIOPinDirection()
* @see fc2SetGPIOPinDirectionBroadcast()
*
* @param context The fc2Context to be used.
* @param pin Pin to get the direction for.
* @param direction Direction of the pin. 0 for input, 1 for output.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetGPIOPinDirection(
fc2Context context,
@Cast("unsigned int") int pin,
@Cast("unsigned int") int direction);
/**
* Set the GPIO pin direction for the specified pin. This is useful if
* there is a need to set the pin into an input pin (i.e. to read the
* voltage) off the pin without setting it as a trigger source. This
* is not a required call when using the trigger or strobe functions as
* the pin direction is set automatically internally.
*
* @see fc2GetGPIOPinDirection()
*
* @param context The fc2Context to be used.
* @param pin Pin to get the direction for.
* @param direction Direction of the pin. 0 for input, 1 for output.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetGPIOPinDirectionBroadcast(
fc2Context context,
@Cast("unsigned int") int pin,
@Cast("unsigned int") int direction);
/*@}*/
/**
* \defgroup CTrigger Trigger
*
* \brief These functions deal with trigger control on the camera.
*/
/*@{*/
/**
* Retrieve trigger information from the camera.
*
* @see fc2GetTriggerMode()
* @see fc2SetTriggerMode()
* @see fc2SetTriggerModeBroadcast()
* @see fc2GetTriggerDelayInfo()
* @see fc2GetTriggerDelay()
* @see fc2SetTriggerDelay()
*
* @param context The fc2Context to be used.
* @param triggerModeInfo Structure to receive trigger information.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetTriggerModeInfo(
fc2Context context,
fc2TriggerModeInfo triggerModeInfo );
/**
* Retrieve current trigger settings from the camera.
*
* @see fc2GetTriggerModeInfo()
* @see fc2SetTriggerMode()
* @see fc2SetTriggerModeBroadcast()
* @see fc2GetTriggerDelayInfo()
* @see fc2GetTriggerDelay()
* @see fc2SetTriggerDelay()
*
* @param context The fc2Context to be used.
* @param triggerMode Structure to receive trigger mode settings.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetTriggerMode(
fc2Context context,
fc2TriggerMode triggerMode );
/**
* Set the specified trigger settings to the camera.
*
* @see fc2GetTriggerModeInfo()
* @see fc2GetTriggerMode()
* @see fc2GetTriggerDelayInfo()
* @see fc2GetTriggerDelay()
* @see fc2SetTriggerDelay()
* @see fc2SetTriggerModeBroadcast()
*
* @param context The fc2Context to be used.
* @param triggerMode Structure providing trigger mode settings.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetTriggerMode(
fc2Context context,
fc2TriggerMode triggerMode );
/**
* Set the specified trigger settings to the camera.
*
* @see fc2GetTriggerModeInfo()
* @see fc2GetTriggerMode()
* @see fc2GetTriggerDelayInfo()
* @see fc2GetTriggerDelay()
* @see fc2SetTriggerDelay()
* @see fc2SetTriggerMode()
*
* @param context The fc2Context to be used.
* @param triggerMode Structure providing trigger mode settings.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetTriggerModeBroadcast(
fc2Context context,
fc2TriggerMode triggerMode );
/**
* Fire the software trigger according to the DCAM specifications.
*
* @param context The fc2Context to be used.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2FireSoftwareTrigger(
fc2Context context );
/**
* Fire the software trigger according to the DCAM specifications.
*
* @param context The fc2Context to be used.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2FireSoftwareTriggerBroadcast(
fc2Context context );
/**
* Retrieve trigger delay information from the camera.
*
* @see fc2GetTriggerModeInfo()
* @see fc2GetTriggerMode()
* @see fc2SetTriggerMode()
* @see fc2GetTriggerDelay()
* @see fc2SetTriggerDelay()
* @see fc2SetTriggerDelayBroadcast()
*
* @param context The fc2Context to be used.
* @param triggerDelayInfo Structure to receive trigger delay information.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetTriggerDelayInfo(
fc2Context context,
@Cast("fc2TriggerDelayInfo*") fc2PropertyInfo triggerDelayInfo );
/**
* Retrieve current trigger delay settings from the camera.
*
* @see fc2GetTriggerModeInfo()
* @see fc2GetTriggerMode()
* @see fc2SetTriggerMode()
* @see fc2GetTriggerDelayInfo()
* @see fc2SetTriggerDelay()
* @see fc2SetTriggerDelayBroadcast()
*
* @param context The fc2Context to be used.
* @param triggerDelay Structure to receive trigger delay settings.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetTriggerDelay(
fc2Context context,
@Cast("fc2TriggerDelay*") fc2Property triggerDelay );
/**
* Set the specified trigger delay settings to the camera.
*
* @see fc2GetTriggerModeInfo()
* @see fc2GetTriggerMode()
* @see fc2SetTriggerMode()
* @see fc2GetTriggerDelayInfo()
* @see fc2GetTriggerDelay()
* @see fc2SetTriggerDelayBroadcast()
*
* @param context The fc2Context to be used.
* @param triggerDelay Structure providing trigger delay settings.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetTriggerDelay(
fc2Context context,
@Cast("fc2TriggerDelay*") fc2Property triggerDelay );
/**
* Set the specified trigger delay settings to the camera.
*
* @see fc2GetTriggerModeInfo()
* @see fc2GetTriggerMode()
* @see fc2SetTriggerMode()
* @see fc2GetTriggerDelayInfo()
* @see fc2GetTriggerDelay()
* @see fc2SetTriggerDelay()
*
* @param context The fc2Context to be used.
* @param triggerDelay Structure providing trigger delay settings.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetTriggerDelayBroadcast(
fc2Context context,
@Cast("fc2TriggerDelay*") fc2Property triggerDelay );
/*@}*/
/**
* \defgroup CStrobe Strobe
*
* \brief These functions deal with strobe control on the camera.
*/
/*@{*/
/**
* Retrieve strobe information from the camera.
*
* @see fc2GetStrobe()
* @see fc2SetStrobe()
* @see fc2SetStrobeBroadcast()
*
* @param context The fc2Context to be used.
* @param strobeInfo Structure to receive strobe information.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetStrobeInfo(
fc2Context context,
fc2StrobeInfo strobeInfo );
/**
* Retrieve current strobe settings from the camera. The strobe pin
* must be specified in the structure before being passed in to
* the function.
*
* @see fc2GetStrobeInfo()
* @see fc2SetStrobe()
* @see fc2SetStrobeBroadcast()
*
* @param context The fc2Context to be used.
* @param strobeControl Structure to receive strobe settings.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetStrobe(
fc2Context context,
fc2StrobeControl strobeControl );
/**
* Set current strobe settings to the camera. The strobe pin
* must be specified in the structure before being passed in to
* the function.
*
* @see fc2GetStrobeInfo()
* @see fc2GetStrobe()
* @see fc2SetStrobeBroadcast()
*
* @param context The fc2Context to be used.
* @param strobeControl Structure providing strobe settings.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetStrobe(
fc2Context context,
fc2StrobeControl strobeControl );
/**
* Set current strobe settings to the camera. The strobe pin
* must be specified in the structure before being passed in to
* the function.
*
* @see fc2GetStrobeInfo()
* @see fc2GetStrobe()
* @see fc2SetStrobe()
*
* @param context The fc2Context to be used.
* @param strobeControl Structure providing strobe settings.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetStrobeBroadcast(
fc2Context context,
fc2StrobeControl strobeControl );
/*@}*/
/**
* \defgroup CLookUp Look Up Table
*
* \brief These functions deal with Look Up Table control on the camera.
*/
/*@{*/
/**
* Query if LUT support is available on the camera. Note that some cameras
* may report support for the LUT and return an inputBitDepth of 0. In these
* cases use log2(numEntries) for the inputBitDepth.
*
* @see fc2EnableLUT()
* @see fc2GetLUTChannel()
* @see fc2SetLUTChannel()
*
* @param context The fc2Context to be used.
* @param pData The LUT structure to be filled.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetLUTInfo(
fc2Context context,
fc2LUTData pData );
/**
* Query the read/write status of a single LUT bank.
*
* @param context The fc2Context to be used.
* @param bank The bank to query.
* @param pReadSupported Whether reading from the bank is supported.
* @param pWriteSupported Whether writing to the bank is supported.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetLUTBankInfo(
fc2Context context,
@Cast("unsigned int") int bank,
@Cast("BOOL*") IntPointer pReadSupported,
@Cast("BOOL*") IntPointer pWriteSupported );
public static native @Cast("fc2Error") int fc2GetLUTBankInfo(
fc2Context context,
@Cast("unsigned int") int bank,
@Cast("BOOL*") IntBuffer pReadSupported,
@Cast("BOOL*") IntBuffer pWriteSupported );
public static native @Cast("fc2Error") int fc2GetLUTBankInfo(
fc2Context context,
@Cast("unsigned int") int bank,
@Cast("BOOL*") int[] pReadSupported,
@Cast("BOOL*") int[] pWriteSupported );
/**
* Get the LUT bank that is currently being used. For cameras with
* PGR LUT, the active bank is always 0.
*
* @param context The fc2Context to be used.
* @param pActiveBank The currently active bank.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetActiveLUTBank(
fc2Context context,
@Cast("unsigned int*") IntPointer pActiveBank );
public static native @Cast("fc2Error") int fc2GetActiveLUTBank(
fc2Context context,
@Cast("unsigned int*") IntBuffer pActiveBank );
public static native @Cast("fc2Error") int fc2GetActiveLUTBank(
fc2Context context,
@Cast("unsigned int*") int[] pActiveBank );
/**
* Set the LUT bank that will be used.
*
* @param context The fc2Context to be used.
* @param activeBank The bank to be set as active.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetActiveLUTBank(
fc2Context context,
@Cast("unsigned int") int activeBank );
/**
* Enable or disable LUT functionality on the camera.
*
* @see fc2GetLUTInfo()
* @see fc2GetLUTChannel()
* @see fc2SetLUTChannel()
*
* @param context The fc2Context to be used.
* @param on Whether to enable or disable LUT.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2EnableLUT(
fc2Context context,
@Cast("BOOL") int on );
/**
* Get the LUT channel settings from the camera.
*
* @see fc2GetLUTInfo()
* @see fc2EnableLUT()
* @see fc2SetLUTChannel()
*
* @param context The fc2Context to be used.
* @param bank Bank to retrieve.
* @param channel Channel to retrieve.
* @param sizeEntries Number of entries in LUT table to read.
* @param pEntries Array to store LUT entries.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetLUTChannel(
fc2Context context,
@Cast("unsigned int") int bank,
@Cast("unsigned int") int channel,
@Cast("unsigned int") int sizeEntries,
@Cast("unsigned int*") IntPointer pEntries );
public static native @Cast("fc2Error") int fc2GetLUTChannel(
fc2Context context,
@Cast("unsigned int") int bank,
@Cast("unsigned int") int channel,
@Cast("unsigned int") int sizeEntries,
@Cast("unsigned int*") IntBuffer pEntries );
public static native @Cast("fc2Error") int fc2GetLUTChannel(
fc2Context context,
@Cast("unsigned int") int bank,
@Cast("unsigned int") int channel,
@Cast("unsigned int") int sizeEntries,
@Cast("unsigned int*") int[] pEntries );
/**
* Set the LUT channel settings to the camera.
*
* @see fc2GetLUTInfo()
* @see fc2EnableLUT()
* @see fc2GetLUTChannel()
*
* @param context The fc2Context to be used.
* @param bank Bank to set.
* @param channel Channel to set.
* @param sizeEntries Number of entries in LUT table to write. This must be the
* same size as numEntries returned by GetLutInfo().
* @param pEntries Array containing LUT entries to write.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetLUTChannel(
fc2Context context,
@Cast("unsigned int") int bank,
@Cast("unsigned int") int channel,
@Cast("unsigned int") int sizeEntries,
@Cast("unsigned int*") IntPointer pEntries );
public static native @Cast("fc2Error") int fc2SetLUTChannel(
fc2Context context,
@Cast("unsigned int") int bank,
@Cast("unsigned int") int channel,
@Cast("unsigned int") int sizeEntries,
@Cast("unsigned int*") IntBuffer pEntries );
public static native @Cast("fc2Error") int fc2SetLUTChannel(
fc2Context context,
@Cast("unsigned int") int bank,
@Cast("unsigned int") int channel,
@Cast("unsigned int") int sizeEntries,
@Cast("unsigned int*") int[] pEntries );
/*@}*/
/**
* \defgroup CMemoryChannel Memory Channels
*
* \brief These functions deal with memory channel control on the camera.
*/
/*@{*/
/**
* Retrieve the current memory channel from the camera.
*
* @see fc2SaveToMemoryChannel()
* @see fc2RestoreFromMemoryChannel()
* @see fc2GetMemoryChannelInfo()
*
* @param context The fc2Context to be used.
* @param pCurrentChannel Current memory channel.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetMemoryChannel(
fc2Context context,
@Cast("unsigned int*") IntPointer pCurrentChannel );
public static native @Cast("fc2Error") int fc2GetMemoryChannel(
fc2Context context,
@Cast("unsigned int*") IntBuffer pCurrentChannel );
public static native @Cast("fc2Error") int fc2GetMemoryChannel(
fc2Context context,
@Cast("unsigned int*") int[] pCurrentChannel );
/**
* Save the current settings to the specified current memory channel.
*
* @see fc2GetMemoryChannel()
* @see fc2RestoreFromMemoryChannel()
* @see fc2GetMemoryChannelInfo()
*
* @param context The fc2Context to be used.
* @param channel Memory channel to save to.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SaveToMemoryChannel(
fc2Context context,
@Cast("unsigned int") int channel );
/**
* Restore the specified current memory channel.
*
* @see fc2GetMemoryChannel()
* @see fc2SaveToMemoryChannel()
* @see fc2GetMemoryChannelInfo()
*
* @param context The fc2Context to be used.
* @param channel Memory channel to restore from.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2RestoreFromMemoryChannel(
fc2Context context,
@Cast("unsigned int") int channel );
/**
* Query the camera for memory channel support. If the number of
* channels are 0, then memory channel support is not available.
*
* @see fc2GetMemoryChannel()
* @see fc2SaveToMemoryChannel()
* @see fc2RestoreFromMemoryChannel()
*
* @param context The fc2Context to be used.
* @param pNumChannels Number of memory channels supported.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetMemoryChannelInfo(
fc2Context context,
@Cast("unsigned int*") IntPointer pNumChannels );
public static native @Cast("fc2Error") int fc2GetMemoryChannelInfo(
fc2Context context,
@Cast("unsigned int*") IntBuffer pNumChannels );
public static native @Cast("fc2Error") int fc2GetMemoryChannelInfo(
fc2Context context,
@Cast("unsigned int*") int[] pNumChannels );
/**
* Get the current status of the embedded image information register,
* as well as the availability of each embedded property.
*
* @see fc2SetEmbeddedImageInfo()
*
* @param context The fc2Context to be used.
* @param pInfo Structure to be filled.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetEmbeddedImageInfo(
fc2Context context,
fc2EmbeddedImageInfo pInfo );
/**
* Sets the on/off values of the embedded image information structure
* to the camera.
*
* @see fc2GetEmbeddedImageInfo()
*
* @param context The fc2Context to be used.
* @param pInfo Structure to be used.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetEmbeddedImageInfo(
fc2Context context,
fc2EmbeddedImageInfo pInfo );
/*@}*/
/**
* \defgroup CRegister Register Operation
*
* \brief These functions deal with register operation on the camera.
*/
/*@{*/
/**
* Write to the specified register on the camera.
*
* @see fc2ReadRegister()
*
* @param context The fc2Context to be used.
* @param address DCAM address to be written to.
* @param value The value to be written.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2WriteRegister(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int") int value);
/**
* Read the specified register from the camera.
*
* @see fc2WriteRegister()
*
* @param context The fc2Context to be used.
* @param address DCAM address to be read from.
* @param pValue The value that is read.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ReadRegister(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int*") IntPointer pValue );
public static native @Cast("fc2Error") int fc2ReadRegister(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int*") IntBuffer pValue );
public static native @Cast("fc2Error") int fc2ReadRegister(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int*") int[] pValue );
/**
* Write to the specified register on the camera with broadcast.
*
* @see fc2ReadRegisterBlock()
*
* @param context The fc2Context to be used.
* @param address DCAM address to be written to.
* @param value The value to be written.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2WriteRegisterBroadcast(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int") int value);
/**
* Write to the specified register block on the camera.
*
* @see fc2ReadRegisterBlock()
*
* @param context The fc2Context to be used.
* @param addressHigh Top 16 bits of the 48-bit absolute address to write to.
* @param addressLow Bottom 32 bits of the 48 bits absolute address to write to.
* @param pBuffer Array containing data to be written.
* @param length Size of array, in quadlets.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2WriteRegisterBlock(
fc2Context context,
@Cast("unsigned short") short addressHigh,
@Cast("unsigned int") int addressLow,
@Cast("const unsigned int*") IntPointer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2WriteRegisterBlock(
fc2Context context,
@Cast("unsigned short") short addressHigh,
@Cast("unsigned int") int addressLow,
@Cast("const unsigned int*") IntBuffer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2WriteRegisterBlock(
fc2Context context,
@Cast("unsigned short") short addressHigh,
@Cast("unsigned int") int addressLow,
@Cast("const unsigned int*") int[] pBuffer,
@Cast("unsigned int") int length );
/**
* Write to the specified register block on the camera.
*
* @see fc2WriteRegisterBlock()
*
* @param context The fc2Context to be used.
* @param addressHigh Top 16 bits of the 48-bit absolute address to read from.
* @param addressLow Bottom 32 bits of the 48 bits absolute address to read from.
* @param pBuffer Array to store read data.
* @param length Size of array, in quadlets.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ReadRegisterBlock(
fc2Context context,
@Cast("unsigned short") short addressHigh,
@Cast("unsigned int") int addressLow,
@Cast("unsigned int*") IntPointer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2ReadRegisterBlock(
fc2Context context,
@Cast("unsigned short") short addressHigh,
@Cast("unsigned int") int addressLow,
@Cast("unsigned int*") IntBuffer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2ReadRegisterBlock(
fc2Context context,
@Cast("unsigned short") short addressHigh,
@Cast("unsigned int") int addressLow,
@Cast("unsigned int*") int[] pBuffer,
@Cast("unsigned int") int length );
/**
* Returns a text representation of the register value.
*
* @param registerVal The register value to query.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("const char*") BytePointer fc2GetRegisterString(
@Cast("unsigned int") int registerVal);
/*@}*/
/**
* Get cycle time from camera
*
* @param context The fc2Context to be used.
* @param Timestamp struct.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetCycleTime( fc2Context context, fc2TimeStamp pTimeStamp );
/**
* Returns the camera diagnostic information.
*
* @param context The fc2Context to be used.
* @param pCameraStats Pointer to the fc2CameraStats structure.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetStats( fc2Context context, fc2CameraStats pCameraStats );
/*
* Reset the camera diagnostic information.
*
* @return An Error indicating the success or failure of the function.
*/
/**
* Register the camera to issue a custom callback function call for a
* specific device event.
*
* @param context The fc2Context to be used.
* @param pOpts Pointer to the EventOptions structure which defines the
* callback function to use, the event for which to register
* the device, and a pointer to user data (optional) to be
* passed to the callback function.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2RegisterEvent(
fc2Context context,
fc2EventOptions pOpts );
/**
*De-register an event previously registered with the camera.
*
* @param context The fc2Context to be used.
* @param pOpts Pointer to the EventOptions structure which defines the
* callback function to use, the event for which to register
* the device, and a pointer to user data (optional) to be
* passed to the callback function. The callback function and
* user data elements of the EventOptions structure are ignored
* in this call, and just the event name within the structure is
* used with this function call.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2DeregisterEvent(
fc2Context context,
fc2EventOptions pOpts );
/**
* Register the camera to issue a custom callback function call for a
* specific device event.
*
* @param context The fc2Context to be used.
* @param pOpts Pointer to the EventOptions structure which defines the
* callback function to use, the event for which to register
* the device, and a pointer to user data (optional) to be
* passed to the callback function. The event name element of
* the structure is ignored with this function call. If a single
* event has already been registered via RegisterEvent(), this
* call will fail, as the user could accidentally change the
* the internal callback function pointer for a queued event.
* The user will need to de-register all registered events,
* then call this function again.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2RegisterAllEvents(
fc2Context context,
fc2EventOptions pOpts );
/*
* De-register all events registered with the camera.
*
* @param context The fc2Context to be used.
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2DeregisterAllEvents(
fc2Context context);
/**
* \defgroup CDCAMFormats DCAM Formats
*
* \brief These functions deal with DCAM video mode and frame rate
* on the camera. This is only used for firewire and usb2 cameras.
*/
/*@{*/
/**
* Query the camera to determine if the specified video mode and
* frame rate is supported.
*
* @param context The fc2Context to be used.
* @param videoMode Video mode to check.
* @param frameRate Frame rate to check.
* @param pSupported Whether the video mode and frame rate is supported.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetVideoModeAndFrameRateInfo(
fc2Context context,
@Cast("fc2VideoMode") int videoMode,
@Cast("fc2FrameRate") int frameRate,
@Cast("BOOL*") IntPointer pSupported);
public static native @Cast("fc2Error") int fc2GetVideoModeAndFrameRateInfo(
fc2Context context,
@Cast("fc2VideoMode") int videoMode,
@Cast("fc2FrameRate") int frameRate,
@Cast("BOOL*") IntBuffer pSupported);
public static native @Cast("fc2Error") int fc2GetVideoModeAndFrameRateInfo(
fc2Context context,
@Cast("fc2VideoMode") int videoMode,
@Cast("fc2FrameRate") int frameRate,
@Cast("BOOL*") int[] pSupported);
/**
* Get the current video mode and frame rate from the camera. If
* the camera is in Format7, the video mode will be VIDEOMODE_FORMAT7
* and the frame rate will be FRAMERATE_FORMAT7.
*
* @param context The fc2Context to be used.
* @param videoMode Current video mode.
* @param frameRate Current frame rate.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetVideoModeAndFrameRate(
fc2Context context,
@Cast("fc2VideoMode*") IntPointer videoMode,
@Cast("fc2FrameRate*") IntPointer frameRate );
public static native @Cast("fc2Error") int fc2GetVideoModeAndFrameRate(
fc2Context context,
@Cast("fc2VideoMode*") IntBuffer videoMode,
@Cast("fc2FrameRate*") IntBuffer frameRate );
public static native @Cast("fc2Error") int fc2GetVideoModeAndFrameRate(
fc2Context context,
@Cast("fc2VideoMode*") int[] videoMode,
@Cast("fc2FrameRate*") int[] frameRate );
/**
* Set the specified video mode and frame rate to the camera. It is
* not possible to set the camera to VIDEOMODE_FORMAT7 or
* FRAMERATE_FORMAT7. Use the Format7 functions to set the camera
* into Format7.
*
* @param context The fc2Context to be used.
* @param videoMode Video mode to set to camera.
* @param frameRate Frame rate to set to camera.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetVideoModeAndFrameRate(
fc2Context context,
@Cast("fc2VideoMode") int videoMode,
@Cast("fc2FrameRate") int frameRate );
/*@}*/
/**
* \defgroup CFormat7 Format7
*
* \brief These functions deal with Format7 custom image control on the camera.
*/
/*@{*/
/**
* Retrieve the availability of Format7 custom image mode and the
* camera capabilities for the specified Format7 mode. The mode must
* be specified in the Format7Info structure in order for the
* function to succeed.
*
* @param context The fc2Context to be used.
* @param info Structure to be filled with the capabilities of the specified
* mode and the current state in the specified mode.
* @param pSupported Whether the specified mode is supported.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetFormat7Info(
fc2Context context,
fc2Format7Info info,
@Cast("BOOL*") IntPointer pSupported );
public static native @Cast("fc2Error") int fc2GetFormat7Info(
fc2Context context,
fc2Format7Info info,
@Cast("BOOL*") IntBuffer pSupported );
public static native @Cast("fc2Error") int fc2GetFormat7Info(
fc2Context context,
fc2Format7Info info,
@Cast("BOOL*") int[] pSupported );
/**
* Validates Format7ImageSettings structure and returns valid packet
* size information if the image settings are valid. The current
* image settings are cached while validation is taking place. The
* cached settings are restored when validation is complete.
*
* @param context The fc2Context to be used.
* @param imageSettings Structure containing the image settings.
* @param settingsAreValid Whether the settings are valid.
* @param packetInfo Packet size information that can be used to
* determine a valid packet size.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ValidateFormat7Settings(
fc2Context context,
fc2Format7ImageSettings imageSettings,
@Cast("BOOL*") IntPointer settingsAreValid,
fc2Format7PacketInfo packetInfo );
public static native @Cast("fc2Error") int fc2ValidateFormat7Settings(
fc2Context context,
fc2Format7ImageSettings imageSettings,
@Cast("BOOL*") IntBuffer settingsAreValid,
fc2Format7PacketInfo packetInfo );
public static native @Cast("fc2Error") int fc2ValidateFormat7Settings(
fc2Context context,
fc2Format7ImageSettings imageSettings,
@Cast("BOOL*") int[] settingsAreValid,
fc2Format7PacketInfo packetInfo );
/**
* Get the current Format7 configuration from the camera. This call
* will only succeed if the camera is already in Format7.
*
* @param context The fc2Context to be used.
* @param imageSettings Current image settings.
* @param packetSize Current packet size.
* @param percentage Current packet size as a percentage.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetFormat7Configuration(
fc2Context context,
fc2Format7ImageSettings imageSettings,
@Cast("unsigned int*") IntPointer packetSize,
FloatPointer percentage );
public static native @Cast("fc2Error") int fc2GetFormat7Configuration(
fc2Context context,
fc2Format7ImageSettings imageSettings,
@Cast("unsigned int*") IntBuffer packetSize,
FloatBuffer percentage );
public static native @Cast("fc2Error") int fc2GetFormat7Configuration(
fc2Context context,
fc2Format7ImageSettings imageSettings,
@Cast("unsigned int*") int[] packetSize,
float[] percentage );
/**
* Set the current Format7 configuration to the camera.
*
* @param context The fc2Context to be used.
* @param imageSettings Image settings to be written to the camera.
* @param packetSize Packet size to be written to the camera.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetFormat7ConfigurationPacket(
fc2Context context,
fc2Format7ImageSettings imageSettings,
@Cast("unsigned int") int packetSize );
/**
* Set the current Format7 configuration to the camera.
*
* @param context The fc2Context to be used.
* @param imageSettings Image settings to be written to the camera.
* @param percentSpeed Packet size as a percentage to be written to the camera.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetFormat7Configuration(
fc2Context context,
fc2Format7ImageSettings imageSettings,
float percentSpeed );
/*@}*/
/**
* \defgroup CGVCPRegister GVCP Register Operation
*
* \brief These functions deal with GVCP register operation on the camera.
*/
/*@{*/
/**
* Write a GVCP register.
*
* @param context The fc2Context to be used.
* @param address GVCP address to be written to.
* @param value The value to be written.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2WriteGVCPRegister(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int") int value);
/**
* Write a GVCP register with broadcast
*
* @param context The fc2Context to be used.
* @param address GVCP address to be written to.
* @param value The value to be written.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2WriteGVCPRegisterBroadcast(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int") int value);
/**
* Read a GVCP register.
*
* @param context The fc2Context to be used.
* @param address GVCP address to be read from.
* @param pValue The value that is read.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ReadGVCPRegister(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int*") IntPointer pValue );
public static native @Cast("fc2Error") int fc2ReadGVCPRegister(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int*") IntBuffer pValue );
public static native @Cast("fc2Error") int fc2ReadGVCPRegister(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int*") int[] pValue );
/**
* Write a GVCP register block.
*
* @param context The fc2Context to be used.
* @param address GVCP address to be write to.
* @param pBuffer Array containing data to be written.
* @param length Size of array, in quadlets.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2WriteGVCPRegisterBlock(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("const unsigned int*") IntPointer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2WriteGVCPRegisterBlock(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("const unsigned int*") IntBuffer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2WriteGVCPRegisterBlock(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("const unsigned int*") int[] pBuffer,
@Cast("unsigned int") int length );
/**
* Read a GVCP register block.
*
* @param context The fc2Context to be used.
* @param address GVCP address to be read from.
* @param pBuffer Array containing data to be written.
* @param length Size of array, in quadlets.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ReadGVCPRegisterBlock(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int*") IntPointer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2ReadGVCPRegisterBlock(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int*") IntBuffer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2ReadGVCPRegisterBlock(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned int*") int[] pBuffer,
@Cast("unsigned int") int length );
/**
* Write a GVCP memory block.
*
* @param context The fc2Context to be used.
* @param address GVCP address to be write to.
* @param pBuffer Array containing data to be written.
* @param length Size of array, in quadlets.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2WriteGVCPMemory(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("const unsigned char*") BytePointer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2WriteGVCPMemory(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("const unsigned char*") ByteBuffer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2WriteGVCPMemory(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("const unsigned char*") byte[] pBuffer,
@Cast("unsigned int") int length );
/**
* Read a GVCP memory block.
*
* @param context The fc2Context to be used.
* @param address GVCP address to be read from.
* @param pBuffer Array containing data to be written.
* @param length Size of array, in quadlets.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ReadGVCPMemory(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned char*") BytePointer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2ReadGVCPMemory(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned char*") ByteBuffer pBuffer,
@Cast("unsigned int") int length );
public static native @Cast("fc2Error") int fc2ReadGVCPMemory(
fc2Context context,
@Cast("unsigned int") int address,
@Cast("unsigned char*") byte[] pBuffer,
@Cast("unsigned int") int length );
/*@}*/
/**
* \defgroup CGEVProperty GigE property manipulation
*
* \brief These functions deal with GigE properties.
*/
/*@{*/
/**
* Get the specified GigEProperty. The GigEPropertyType field must
* be set in order for this function to succeed.
*
* @param context The fc2Context to be used.
* @param pGigEProp The GigE property to get.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetGigEProperty(
fc2Context context,
fc2GigEProperty pGigEProp );
/**
* Set the specified GigEProperty. The GigEPropertyType field must
* be set in order for this function to succeed.
*
* @param context The fc2Context to be used.
* @param pGigEProp The GigE property to set.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetGigEProperty(
fc2Context context,
@Const fc2GigEProperty pGigEProp );
/**
* Discover the largest packet size that works for the network link
* between the PC and the camera. This is useful in cases where
* there may be multiple links between the PC and the camera and
* there is a possibility of a component not supporting the
* recommended jumbo frame packet size of 9000.
*
* @param context The fc2Context to be used.
* @param packetSize The maximum packet size supported by the link.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2DiscoverGigEPacketSize(
fc2Context context,
@Cast("unsigned int*") IntPointer packetSize );
public static native @Cast("fc2Error") int fc2DiscoverGigEPacketSize(
fc2Context context,
@Cast("unsigned int*") IntBuffer packetSize );
public static native @Cast("fc2Error") int fc2DiscoverGigEPacketSize(
fc2Context context,
@Cast("unsigned int*") int[] packetSize );
/*@}*/
/**
* \defgroup CGEVImageSettings GigE image settings
*
* \brief These functions deal with GigE image setting.
*/
/*@{*/
/**
* Check if the particular imaging mode is supported by the camera.
*
* @param context The fc2Context to be used.
* @param mode The mode to check.
* @param isSupported Whether the mode is supported.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2QueryGigEImagingMode(
fc2Context context,
@Cast("fc2Mode") int mode,
@Cast("BOOL*") IntPointer isSupported );
public static native @Cast("fc2Error") int fc2QueryGigEImagingMode(
fc2Context context,
@Cast("fc2Mode") int mode,
@Cast("BOOL*") IntBuffer isSupported );
public static native @Cast("fc2Error") int fc2QueryGigEImagingMode(
fc2Context context,
@Cast("fc2Mode") int mode,
@Cast("BOOL*") int[] isSupported );
/**
* Get the current imaging mode on the camera.
*
* @param context The fc2Context to be used.
* @param mode Current imaging mode on the camera.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetGigEImagingMode(
fc2Context context,
@Cast("fc2Mode*") IntPointer mode );
public static native @Cast("fc2Error") int fc2GetGigEImagingMode(
fc2Context context,
@Cast("fc2Mode*") IntBuffer mode );
public static native @Cast("fc2Error") int fc2GetGigEImagingMode(
fc2Context context,
@Cast("fc2Mode*") int[] mode );
/**
* Set the current imaging mode to the camera. This should only be
* done when the camera is not streaming images.
*
* @param context The fc2Context to be used.
* @param mode Imaging mode to set to the camera.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetGigEImagingMode(
fc2Context context,
@Cast("fc2Mode") int mode );
/**
* Get information about the image settings possible on the camera.
*
* @param context The fc2Context to be used.
* @param pInfo Image settings information.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetGigEImageSettingsInfo(
fc2Context context,
fc2GigEImageSettingsInfo pInfo );
/**
* Get the current image settings on the camera.
*
* @param context The fc2Context to be used.
* @param pImageSettings Current image settings on camera.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetGigEImageSettings(
fc2Context context,
fc2GigEImageSettings pImageSettings );
/**
* Set the image settings specified to the camera.
*
* @param context The fc2Context to be used.
* @param pImageSettings Image settings to set to camera.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetGigEImageSettings(
fc2Context context,
@Const fc2GigEImageSettings pImageSettings );
/*@}*/
/**
* \defgroup CGEVImageBinningSettings GigE image binning settings
*
* \brief These functions deal with GigE image binning settings.
*/
/*@{*/
/**
* Get the current binning settings on the camera.
*
* @param context The fc2Context to be used.
* @param horzBinnningValue Current horizontal binning value.
* @param vertBinnningValue Current vertical binning value.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetGigEImageBinningSettings(
fc2Context context,
@Cast("unsigned int*") IntPointer horzBinnningValue,
@Cast("unsigned int*") IntPointer vertBinnningValue );
public static native @Cast("fc2Error") int fc2GetGigEImageBinningSettings(
fc2Context context,
@Cast("unsigned int*") IntBuffer horzBinnningValue,
@Cast("unsigned int*") IntBuffer vertBinnningValue );
public static native @Cast("fc2Error") int fc2GetGigEImageBinningSettings(
fc2Context context,
@Cast("unsigned int*") int[] horzBinnningValue,
@Cast("unsigned int*") int[] vertBinnningValue );
/**
* Set the specified binning values to the camera. It is recommended
* that GetGigEImageSettingsInfo() be called after this function
* succeeds to retrieve the new image settings information for
* the new binning mode.
*
* @param context The fc2Context to be used.
* @param horzBinnningValue Horizontal binning value.
* @param vertBinnningValue Vertical binning value.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetGigEImageBinningSettings(
fc2Context context,
@Cast("unsigned int") int horzBinnningValue,
@Cast("unsigned int") int vertBinnningValue );
/*@}*/
/**
* \defgroup CGEVImageStreamConfig GigE image stream configuration
*
* \brief These functions deal with GigE image stream configuration.
*/
/*@{*/
/**
* Get the number of stream channels present on the camera.
*
* @param context The fc2Context to be used.
* @param numChannels Number of stream channels present.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetNumStreamChannels(
fc2Context context,
@Cast("unsigned int*") IntPointer numChannels );
public static native @Cast("fc2Error") int fc2GetNumStreamChannels(
fc2Context context,
@Cast("unsigned int*") IntBuffer numChannels );
public static native @Cast("fc2Error") int fc2GetNumStreamChannels(
fc2Context context,
@Cast("unsigned int*") int[] numChannels );
/**
* Get the stream channel information for the specified channel.
*
* @param context The fc2Context to be used.
* @param channel Channel number to use.
* @param pChannel Stream channel information for the specified channel.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetGigEStreamChannelInfo(
fc2Context context,
@Cast("unsigned int") int channel,
fc2GigEStreamChannel pChannel );
/**
* Set the stream channel information for the specified channel.
*
* Note that the source UDP port of the stream channel is read-only.
*
* @param context The fc2Context to be used.
* @param channel Channel number to use.
* @param pChannel Stream channel information to use for the specified channel.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetGigEStreamChannelInfo(
fc2Context context,
@Cast("unsigned int") int channel,
fc2GigEStreamChannel pChannel );
/**
* Get the current gige config on the camera.
*
* @param context The fc2Context to be used.
* @param pGigEConfig Current configuration on camera.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetGigEConfig(
fc2Context context,
fc2GigEConfig pConfig );
/**
* Set the gige config specified to the camera.
*
* @param context The fc2Context to be used.
* @param pGigEConfig configuration to set to camera.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetGigEConfig(
fc2Context context,
@Const fc2GigEConfig pConfig );
/*@}*/
/**
* \defgroup CImage Image Operation
*
* \brief The Image operations are used to retrieve images from a camera,
* convert between multiple pixel formats and save images to disk.
* Operations on images are not guaranteed to be thread safe. It is
* recommended that operations on images be protected by thread
* synchronization constructs such as mutexes.
*/
/*@{*/
/**
* Set the default color processing algorithm. This method will be
* used for any image with the DEFAULT algorithm set. The method used
* is determined at the time of the Convert() call, therefore the most
* recent execution of this function will take precedence. The default
* setting is shared within the current process.
*
* @param defaultMethod The color processing algorithm to set.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetDefaultColorProcessing(
@Cast("fc2ColorProcessingAlgorithm") int defaultMethod );
/**
* Get the default color processing algorithm.
*
* @param pDefaultMethod The default color processing algorithm.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetDefaultColorProcessing(
@Cast("fc2ColorProcessingAlgorithm*") IntPointer pDefaultMethod );
public static native @Cast("fc2Error") int fc2GetDefaultColorProcessing(
@Cast("fc2ColorProcessingAlgorithm*") IntBuffer pDefaultMethod );
public static native @Cast("fc2Error") int fc2GetDefaultColorProcessing(
@Cast("fc2ColorProcessingAlgorithm*") int[] pDefaultMethod );
/**
* Set the default output pixel format. This format will be used for any
* call to Convert() that does not specify an output format. The format
* used will be determined at the time of the Convert() call, therefore
* the most recent execution of this function will take precedence.
* The default is shared within the current process.
*
* @param format The output pixel format to set.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetDefaultOutputFormat(
@Cast("fc2PixelFormat") int format );
/**
* Get the default output pixel format.
*
* @param pFormat The default pixel format.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetDefaultOutputFormat(
@Cast("fc2PixelFormat*") IntPointer pFormat );
public static native @Cast("fc2Error") int fc2GetDefaultOutputFormat(
@Cast("fc2PixelFormat*") IntBuffer pFormat );
public static native @Cast("fc2Error") int fc2GetDefaultOutputFormat(
@Cast("fc2PixelFormat*") int[] pFormat );
/**
* Calculate the bits per pixel for the specified pixel format.
*
* @param format The pixel format.
* @param pBitsPerPixel The bits per pixel.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2DetermineBitsPerPixel(
@Cast("fc2PixelFormat") int format,
@Cast("unsigned int*") IntPointer pBitsPerPixel );
public static native @Cast("fc2Error") int fc2DetermineBitsPerPixel(
@Cast("fc2PixelFormat") int format,
@Cast("unsigned int*") IntBuffer pBitsPerPixel );
public static native @Cast("fc2Error") int fc2DetermineBitsPerPixel(
@Cast("fc2PixelFormat") int format,
@Cast("unsigned int*") int[] pBitsPerPixel );
/**
* Create a fc2Image. If externally allocated memory is to be used for the
* converted image, simply assigning the pData member of the fc2Image structure
* is insufficient. fc2SetImageData() should be called in order to populate
* the fc2Image structure correctly.
*
* @see fc2SetImageData()
*
* @param pImage Pointer to image to be created.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2CreateImage(
fc2Image pImage );
/**
* Destroy the fc2Image.
*
* @param image Pointer to image to be destroyed.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2DestroyImage(
fc2Image image );
/**
* Sets the dimensions of the image object.
*
* @param pImage The fc2Image to be used.
* @param rows Number of rows to set.
* @param cols Number of cols to set.
* @param stride Stride to set.
* @param pixelFormat Pixel format to set.
* @param bayerFormat Bayer tile format to set.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetImageDimensions(
fc2Image pImage,
@Cast("unsigned int") int rows,
@Cast("unsigned int") int cols,
@Cast("unsigned int") int stride,
@Cast("fc2PixelFormat") int pixelFormat,
@Cast("fc2BayerTileFormat") int bayerFormat);
/**
* Get the image dimensions associated with the image object.
*
* @param pImage The fc2Image to be used.
* @param pRows Number of rows.
* @param pCols Number of columns.
* @param pStride The stride.
* @param pPixelFormat Pixel format.
* @param pBayerFormat Bayer tile format.
*/
public static native @Cast("fc2Error") int fc2GetImageDimensions(
fc2Image pImage,
@Cast("unsigned int*") IntPointer pRows,
@Cast("unsigned int*") IntPointer pCols,
@Cast("unsigned int*") IntPointer pStride,
@Cast("fc2PixelFormat*") IntPointer pPixelFormat,
@Cast("fc2BayerTileFormat*") IntPointer pBayerFormat);
public static native @Cast("fc2Error") int fc2GetImageDimensions(
fc2Image pImage,
@Cast("unsigned int*") IntBuffer pRows,
@Cast("unsigned int*") IntBuffer pCols,
@Cast("unsigned int*") IntBuffer pStride,
@Cast("fc2PixelFormat*") IntBuffer pPixelFormat,
@Cast("fc2BayerTileFormat*") IntBuffer pBayerFormat);
public static native @Cast("fc2Error") int fc2GetImageDimensions(
fc2Image pImage,
@Cast("unsigned int*") int[] pRows,
@Cast("unsigned int*") int[] pCols,
@Cast("unsigned int*") int[] pStride,
@Cast("fc2PixelFormat*") int[] pPixelFormat,
@Cast("fc2BayerTileFormat*") int[] pBayerFormat);
/**
* Set the color processing algorithm. This should be set on the
* input image object.
*
* @param pImage The fc2Image to be used.
* @param colorProc The color processing algorithm to use.
*
* @see fc2GetColorProcessing()
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetImageColorProcessing(
fc2Image pImage,
@Cast("fc2ColorProcessingAlgorithm") int colorProc);
/**
* Get the current color processing algorithm.
*
* @param pImage The fc2Image to be used.
*
* @see fc2SetColorProcessing()
*
* @return The current color processing algorithm.
*/
public static native @Cast("fc2Error") int fc2GetImageColorProcessing(
fc2Image pImage,
@Cast("fc2ColorProcessingAlgorithm*") IntPointer pColorProc);
public static native @Cast("fc2Error") int fc2GetImageColorProcessing(
fc2Image pImage,
@Cast("fc2ColorProcessingAlgorithm*") IntBuffer pColorProc);
public static native @Cast("fc2Error") int fc2GetImageColorProcessing(
fc2Image pImage,
@Cast("fc2ColorProcessingAlgorithm*") int[] pColorProc);
/**
* Set the data of the Image object.
* Ownership of the image buffer is not transferred to the Image object.
* It is the user's responsibility to delete the buffer when it is
* no longer in use.
*
* @param pImage The fc2Image to be used.
* @param pData Pointer to the image buffer.
* @param dataSize Size of the image buffer.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetImageData(
fc2Image pImage,
@Cast("const unsigned char*") BytePointer pData,
@Cast("unsigned int") int dataSize);
public static native @Cast("fc2Error") int fc2SetImageData(
fc2Image pImage,
@Cast("const unsigned char*") ByteBuffer pData,
@Cast("unsigned int") int dataSize);
public static native @Cast("fc2Error") int fc2SetImageData(
fc2Image pImage,
@Cast("const unsigned char*") byte[] pData,
@Cast("unsigned int") int dataSize);
/**
* Get a pointer to the data associated with the image. This function
* is considered unsafe. The pointer returned could be invalidated if
* the buffer is resized or released. The pointer may also be
* invalidated if the Image object is passed to fc2RetrieveBuffer().
*
* @param pImage The fc2Image to be used.
* @param ppData A pointer to the image data.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetImageData(
fc2Image pImage,
@Cast("unsigned char**") PointerPointer ppData);
public static native @Cast("fc2Error") int fc2GetImageData(
fc2Image pImage,
@Cast("unsigned char**") @ByPtrPtr BytePointer ppData);
public static native @Cast("fc2Error") int fc2GetImageData(
fc2Image pImage,
@Cast("unsigned char**") @ByPtrPtr ByteBuffer ppData);
public static native @Cast("fc2Error") int fc2GetImageData(
fc2Image pImage,
@Cast("unsigned char**") @ByPtrPtr byte[] ppData);
/**
* Get the metadata associated with the image. This includes
* embedded image information.
*
* @param pImage The fc2Image to be used.
*
* @return Metadata associated with the image.
*/
public static native @Cast("fc2Error") int fc2GetImageMetadata(
fc2Image pImage,
fc2ImageMetadata pImageMetaData);
/**
* Get the timestamp data associated with the image.
*
* @param pImage The fc2Image to be used.
*
* @return Timestamp data associated with the image.
*/
public static native @ByVal fc2TimeStamp fc2GetImageTimeStamp(
fc2Image pImage);
/**
* Save the image to the specified file name with the file format
* specified.
*
* @param pImage The fc2Image to be used.
* @param pFilename Filename to save image with.
* @param format File format to save in.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SaveImage(
fc2Image pImage,
@Cast("const char*") BytePointer pFilename,
@Cast("fc2ImageFileFormat") int format );
public static native @Cast("fc2Error") int fc2SaveImage(
fc2Image pImage,
String pFilename,
@Cast("fc2ImageFileFormat") int format );
/**
* Save the image to the specified file name with the file format
* specified.
*
* @param pImage The fc2Image to be used.
* @param pFilename Filename to save image with.
* @param format File format to save in.
* @param pOption Options for saving image.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SaveImageWithOption(
fc2Image pImage,
@Cast("const char*") BytePointer pFilename,
@Cast("fc2ImageFileFormat") int format,
Pointer pOption );
public static native @Cast("fc2Error") int fc2SaveImageWithOption(
fc2Image pImage,
String pFilename,
@Cast("fc2ImageFileFormat") int format,
Pointer pOption );
/**
*
*
* @param pImageIn
* @param pImageOut
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ConvertImage(
fc2Image pImageIn,
fc2Image pImageOut );
/**
* Converts the current image buffer to the specified output format and
* stores the result in the specified image. The destination image
* does not need to be configured in any way before the call is made.
*
* @param format Output format of the converted image.
* @param pImageIn Input image.
* @param pImageOut Output image.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ConvertImageTo(
@Cast("fc2PixelFormat") int format,
fc2Image pImageIn,
fc2Image pImageOut );
/**
* Calculate statistics associated with the image. In order to collect
* statistics for a particular channel, the enabled flag for the
* channel must be set to true. Statistics can only be collected for
* images in Mono8, Mono16, RGB, RGBU, BGR and BGRU.
*
* @param pImage The fc2Image to be used.
* @param pImageStatisticsContext The fc2ImageStatisticsContext to hold the
* statistics.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2CalculateImageStatistics(
fc2Image pImage,
@ByPtrPtr fc2ImageStatisticsContext pImageStatisticsContext );
/*@}*/
/**
* \defgroup CImageStatistics Image Statistics Operation
*
* \brief The Image Statistics operation provides the functionality for the user to collect
* image channel statistics.
*/
/*@{*/
/**
* Create a statistics context.
*
* @param pImageStatisticsContext A statistics context.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2CreateImageStatistics(
@ByPtrPtr fc2ImageStatisticsContext pImageStatisticsContext );
/**
* Destroy a statistics context.
*
* @param imageStatisticsContext A statistics context.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2DestroyImageStatistics(
fc2ImageStatisticsContext imageStatisticsContext );
/**
* Enable all channels.
*
* @param imageStatisticsContext A statistics context.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ImageStatisticsEnableAll(
fc2ImageStatisticsContext imageStatisticsContext );
/**
* Disable all channels.
*
* @param imageStatisticsContext A statistics context.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ImageStatisticsDisableAll(
fc2ImageStatisticsContext imageStatisticsContext );
/**
* Enable only the grey channel.
*
* @param imageStatisticsContext A statistics context.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ImageStatisticsEnableGreyOnly(
fc2ImageStatisticsContext imageStatisticsContext );
/**
* Enable only the RGB channels.
*
* @param imageStatisticsContext A statistics context.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ImageStatisticsEnableRGBOnly(
fc2ImageStatisticsContext imageStatisticsContext );
/**
* Enable only the HSL channels.
*
* @param imageStatisticsContext A statistics context.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2ImageStatisticsEnableHSLOnly(
fc2ImageStatisticsContext imageStatisticsContext );
/**
* Get the status of a statistics channel.
*
* @see fc2SetChannelStatus()
*
* @param imageStatisticsContext A statistics context.
* @param channel The statistics channel.
* @param pEnabled Whether the channel is enabled.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetChannelStatus(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("BOOL*") IntPointer pEnabled );
public static native @Cast("fc2Error") int fc2GetChannelStatus(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("BOOL*") IntBuffer pEnabled );
public static native @Cast("fc2Error") int fc2GetChannelStatus(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("BOOL*") int[] pEnabled );
/**
* Set the status of a statistics channel.
*
* @see fc2GetChannelStatus()
*
* @param imageStatisticsContext A statistics context.
* @param channel The statistics channel.
* @param enabled Whether the channel should be enabled.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2SetChannelStatus(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("BOOL") int enabled );
/**
* Get the range of a statistics channel. The values returned
* are the maximum possible values for any given pixel in the image.
* This is generally 0-255 for 8 bit images, and 0-65535 for
* 16 bit images.
*
* @param imageStatisticsContext A statistics context.
* @param channel The statistics channel.
* @param pMin The minimum possible value.
* @param pMax The maximum possible value.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetChannelRange(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") IntPointer pMin,
@Cast("unsigned int*") IntPointer pMax );
public static native @Cast("fc2Error") int fc2GetChannelRange(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") IntBuffer pMin,
@Cast("unsigned int*") IntBuffer pMax );
public static native @Cast("fc2Error") int fc2GetChannelRange(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") int[] pMin,
@Cast("unsigned int*") int[] pMax );
/**
* Get the range of a statistics channel. The values returned
* are the maximum values recorded for all pixels in the image.
*
* @param imageStatisticsContext A statistics context.
* @param channel The statistics channel.
* @param pPixelValueMin The minimum pixel value.
* @param pPixelValueMax The maximum pixel value.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetChannelPixelValueRange(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") IntPointer pPixelValueMin,
@Cast("unsigned int*") IntPointer pPixelValueMax );
public static native @Cast("fc2Error") int fc2GetChannelPixelValueRange(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") IntBuffer pPixelValueMin,
@Cast("unsigned int*") IntBuffer pPixelValueMax );
public static native @Cast("fc2Error") int fc2GetChannelPixelValueRange(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") int[] pPixelValueMin,
@Cast("unsigned int*") int[] pPixelValueMax );
/**
* Get the number of unique pixel values in the image.
*
* @param imageStatisticsContext A statistics context.
* @param channel The statistics channel.
* @param pNumPixelValues The number of unique pixel values.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetChannelNumPixelValues(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") IntPointer pNumPixelValues );
public static native @Cast("fc2Error") int fc2GetChannelNumPixelValues(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") IntBuffer pNumPixelValues );
public static native @Cast("fc2Error") int fc2GetChannelNumPixelValues(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") int[] pNumPixelValues );
/**
* Get the mean of the image.
*
* @param imageStatisticsContext A statistics context.
* @param channel The statistics channel.
* @param pPixelValueMean The mean of the image.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetChannelMean(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
FloatPointer pPixelValueMean );
public static native @Cast("fc2Error") int fc2GetChannelMean(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
FloatBuffer pPixelValueMean );
public static native @Cast("fc2Error") int fc2GetChannelMean(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
float[] pPixelValueMean );
/**
* Get the histogram for the image.
*
* @param imageStatisticsContext A statistics context.
* @param channel The statistics channel.
* @param ppHistogram Pointer to an array containing the histogram.
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetChannelHistogram(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("int**") PointerPointer ppHistogram );
public static native @Cast("fc2Error") int fc2GetChannelHistogram(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@ByPtrPtr IntPointer ppHistogram );
public static native @Cast("fc2Error") int fc2GetChannelHistogram(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@ByPtrPtr IntBuffer ppHistogram );
public static native @Cast("fc2Error") int fc2GetChannelHistogram(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@ByPtrPtr int[] ppHistogram );
/**
* Get all statistics for the image.
*
* @param imageStatisticsContext The statistics context.
* @param channel The statistics channel.
* @param pRangeMin The minimum possible value.
* @param pRangeMax The maximum possible value.
* @param pPixelValueMin The minimum pixel value.
* @param pPixelValueMax The maximum pixel value.
* @param pNumPixelValues The number of unique pixel values.
* @param pPixelValueMean The mean of the image.
* @param ppHistogram Pointer to an array containing the histogram.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetImageStatistics(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") IntPointer pRangeMin,
@Cast("unsigned int*") IntPointer pRangeMax,
@Cast("unsigned int*") IntPointer pPixelValueMin,
@Cast("unsigned int*") IntPointer pPixelValueMax,
@Cast("unsigned int*") IntPointer pNumPixelValues,
FloatPointer pPixelValueMean,
@Cast("int**") PointerPointer ppHistogram );
public static native @Cast("fc2Error") int fc2GetImageStatistics(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") IntPointer pRangeMin,
@Cast("unsigned int*") IntPointer pRangeMax,
@Cast("unsigned int*") IntPointer pPixelValueMin,
@Cast("unsigned int*") IntPointer pPixelValueMax,
@Cast("unsigned int*") IntPointer pNumPixelValues,
FloatPointer pPixelValueMean,
@ByPtrPtr IntPointer ppHistogram );
public static native @Cast("fc2Error") int fc2GetImageStatistics(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") IntBuffer pRangeMin,
@Cast("unsigned int*") IntBuffer pRangeMax,
@Cast("unsigned int*") IntBuffer pPixelValueMin,
@Cast("unsigned int*") IntBuffer pPixelValueMax,
@Cast("unsigned int*") IntBuffer pNumPixelValues,
FloatBuffer pPixelValueMean,
@ByPtrPtr IntBuffer ppHistogram );
public static native @Cast("fc2Error") int fc2GetImageStatistics(
fc2ImageStatisticsContext imageStatisticsContext,
@Cast("fc2StatisticsChannel") int channel,
@Cast("unsigned int*") int[] pRangeMin,
@Cast("unsigned int*") int[] pRangeMax,
@Cast("unsigned int*") int[] pPixelValueMin,
@Cast("unsigned int*") int[] pPixelValueMax,
@Cast("unsigned int*") int[] pNumPixelValues,
float[] pPixelValueMean,
@ByPtrPtr int[] ppHistogram );
/*@}*/
/**
* \defgroup CTopologyNode TopologyNode Operation
*
* \brief The TopologyNode operation provides the functionality for the user to
* generate a tree structure of all cameras and devices connected to a computer.
*/
/*@{*/
/**
* Create a TopologyNode context.
*
* @param pTopologyNodeContext A Topology Node context.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2CreateTopologyNode(
@ByPtrPtr fc2TopologyNodeContext pTopologyNodeContext );
/**
* Get the PGRGuid associated with the node.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param pGuid The unique identifier associated with the node.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2TopologyNodeGetGuid(
fc2TopologyNodeContext TopologyNodeContext,
fc2PGRGuid pGuid);
/**
* Get the device ID associated with the node.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param pID Device ID of the node.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2TopologyNodeGetDeviceId(
fc2TopologyNodeContext TopologyNodeContext,
IntPointer pID);
public static native @Cast("fc2Error") int fc2TopologyNodeGetDeviceId(
fc2TopologyNodeContext TopologyNodeContext,
IntBuffer pID);
public static native @Cast("fc2Error") int fc2TopologyNodeGetDeviceId(
fc2TopologyNodeContext TopologyNodeContext,
int[] pID);
/**
* Get the node type associated with the node.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param pNodeType Node type of the node.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2TopologyNodeGetNodeType(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("fc2NodeType*") IntPointer pNodeType);
public static native @Cast("fc2Error") int fc2TopologyNodeGetNodeType(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("fc2NodeType*") IntBuffer pNodeType);
public static native @Cast("fc2Error") int fc2TopologyNodeGetNodeType(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("fc2NodeType*") int[] pNodeType);
/**
* Get the interface type associated with the node.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param pInterfaceType Interface type of the node.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2TopologyNodeGetInterfaceType(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("fc2InterfaceType*") IntPointer pInterfaceType);
public static native @Cast("fc2Error") int fc2TopologyNodeGetInterfaceType(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("fc2InterfaceType*") IntBuffer pInterfaceType);
public static native @Cast("fc2Error") int fc2TopologyNodeGetInterfaceType(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("fc2InterfaceType*") int[] pInterfaceType);
/**
* Get the number of child nodes.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param pNumChildNodes Number of child nodes.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2TopologyNodeGetNumChildren(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("unsigned int*") IntPointer pNumChildNodes);
public static native @Cast("fc2Error") int fc2TopologyNodeGetNumChildren(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("unsigned int*") IntBuffer pNumChildNodes);
public static native @Cast("fc2Error") int fc2TopologyNodeGetNumChildren(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("unsigned int*") int[] pNumChildNodes);
/**
* Get child node located at the specified position.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param position Position of the child node.
* @param pChildTopologyNodeContext The Topology Node context the contains
* information on the child topology
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2TopologyNodeGetChild(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("unsigned int") int position,
@ByPtrPtr fc2TopologyNodeContext pChildTopologyNodeContext);
/**
* Add the specified TopologyNode as a child of the node.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param TopologyNodeChildContext The TopologyNode child context to add.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2TopologyNodeAddChild(
fc2TopologyNodeContext TopologyNodeContext,
fc2TopologyNodeContext TopologyNodeChildContext);
/**
* Get the number of ports.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param pNumPorts Number of ports.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2TopologyNodeGetNumPorts(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("unsigned int*") IntPointer pNumPorts);
public static native @Cast("fc2Error") int fc2TopologyNodeGetNumPorts(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("unsigned int*") IntBuffer pNumPorts);
public static native @Cast("fc2Error") int fc2TopologyNodeGetNumPorts(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("unsigned int*") int[] pNumPorts);
/**
* Get type of port located at the specified position.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param position Position of the port.
* @param pPortType PortType at the specified position.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2TopologyNodeGetPortType(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("unsigned int") int position,
@Cast("fc2PortType*") IntPointer pPortType);
public static native @Cast("fc2Error") int fc2TopologyNodeGetPortType(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("unsigned int") int position,
@Cast("fc2PortType*") IntBuffer pPortType);
public static native @Cast("fc2Error") int fc2TopologyNodeGetPortType(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("unsigned int") int position,
@Cast("fc2PortType*") int[] pPortType);
/**
* Add the specified PortType as a port of the node.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param portType childPort The port to add.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2TopologyNodeAddPortType(
fc2TopologyNodeContext TopologyNodeContext,
@Cast("fc2PortType") int portType);
/**
* Assign a PGRGuid and device ID to the node.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param guid PGRGuid to be assigned.
* @param deviceId Device ID to be assigned.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("BOOL") int fc2TopologyNodeAssignGuidToNode(
fc2TopologyNodeContext TopologyNodeContext,
@ByVal fc2PGRGuid guid,
int deviceId);
/**
* Assign a PGRGuid, device ID and nodeType to the node.
*
* @param TopologyNodeContext The Topology Node context to use.
* @param guid PGRGuid to be assigned.
* @param deviceId Device ID to be assigned.
* @param nodeType NodeType to be assigned
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("BOOL") int fc2TopologyNodeAssignGuidToNodeEx(
fc2TopologyNodeContext TopologyNodeContext,
@ByVal fc2PGRGuid guid,
int deviceId,
@Cast("fc2NodeType") int nodeType);
/**
* Destroy a TopologyNode context.
*
* @param TopologyNodeContext A Topology Node context.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2DestroyTopologyNode(
fc2TopologyNodeContext TopologyNodeContext );
/*@}*/
/**
* \defgroup CUtilities Utilities
*
* \brief The utility operations are used to query for general system
* information such as operating system, available memory etc.
* It can also be used to launch browsers, CHM viewers or terminal commands.
*/
/*@{*/
/**
* Check for driver compatibility for the given camera guid.
*
* @param pGuid The PGRGuid of the device to check.
*
* @return FC2_ERROR_OK if the library is compatible with the currently
* loaded driver, otherwise an error indicating the type of failure.
*/
public static native @Cast("fc2Error") int fc2CheckDriver( @Const fc2PGRGuid pGuid);
/**
* Get the driver's name for a device
*
* @param pGuid The PGRGuid of the device to check.
* @param pDeviceName The device name will be returned in this string
* @param pDeviceNameLength The length of the device name string returned
*
* @return An Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetDriverDeviceName(
@Const fc2PGRGuid pGuid,
@Cast("char*") BytePointer pDeviceName,
@Cast("size_t*") SizeTPointer deviceNameLength);
public static native @Cast("fc2Error") int fc2GetDriverDeviceName(
@Const fc2PGRGuid pGuid,
@Cast("char*") ByteBuffer pDeviceName,
@Cast("size_t*") SizeTPointer deviceNameLength);
public static native @Cast("fc2Error") int fc2GetDriverDeviceName(
@Const fc2PGRGuid pGuid,
@Cast("char*") byte[] pDeviceName,
@Cast("size_t*") SizeTPointer deviceNameLength);
/**
* Get system information.
*
* @param pSystemInfo Structure to receive system information.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetSystemInfo( fc2SystemInfo pSystemInfo);
/**
* Get library version.
*
* @param pVersion Structure to receive the library version.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2GetLibraryVersion( fc2Version pVersion);
/**
* Launch a URL in the system default browser.
*
* @param pAddress URL to open in browser.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2LaunchBrowser( @Cast("const char*") BytePointer pAddress);
public static native @Cast("fc2Error") int fc2LaunchBrowser( String pAddress);
/**
* Open a CHM file in the system default CHM viewer.
*
* @param pFileName Filename of CHM file to open.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2LaunchHelp( @Cast("const char*") BytePointer pFileName);
public static native @Cast("fc2Error") int fc2LaunchHelp( String pFileName);
/**
* Execute a command in the terminal. This is a blocking call that
* will return when the command completes.
*
* @param pCommand Command to execute.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2LaunchCommand( @Cast("const char*") BytePointer pCommand);
public static native @Cast("fc2Error") int fc2LaunchCommand( String pCommand);
/**
* Execute a command in the terminal. This is a non-blocking call that
* will return immediately. The return value of the command can be
* retrieved in the callback.
*
* @param pCommand Command to execute.
* @param pCallback Callback to fire when command is complete.
* @param pUserData Data pointer to pass to callback.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("fc2Error") int fc2LaunchCommandAsync(
@Cast("const char*") BytePointer pCommand,
fc2AsyncCommandCallback pCallback,
Pointer pUserData );
public static native @Cast("fc2Error") int fc2LaunchCommandAsync(
String pCommand,
fc2AsyncCommandCallback pCallback,
Pointer pUserData );
/**
* Get a string representation of an error.
*
* @param error Error to be parsed.
*
* @return A fc2Error indicating the success or failure of the function.
*/
public static native @Cast("const char*") BytePointer fc2ErrorToDescription(
@Cast("fc2Error") int error);
/*@}*/
// #ifdef __cplusplus
// #endif
// #endif // FLIR_FLYCAPTURE2_C_H
// Parsed from MultiSyncLibraryDefs_C.h
//=============================================================================
// Copyright ? 2017 FLIR Integrated Imaging Solutions, Inc. All Rights Reserved.
//
// This software is the confidential and proprietary information of FLIR
// Integrated Imaging Solutions, Inc. ("Confidential Information"). You
// shall not disclose such Confidential Information and shall use it only in
// accordance with the terms of the license agreement you entered into
// with FLIR Integrated Imaging Solutions, Inc. (FLIR).
//
// FLIR MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE
// SOFTWARE, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE, OR NON-INFRINGEMENT. FLIR SHALL NOT BE LIABLE FOR ANY DAMAGES
// SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
// THIS SOFTWARE OR ITS DERIVATIVES.
//=============================================================================
//=============================================================================
// $Id:
//=============================================================================
// #ifndef MULTISYNCLIBRARYDEFS_C_H
// #define MULTISYNCLIBRARYDEFS_C_H
// #include
//=============================================================================
// C definitions header file for MultiSync.
//
// This file defines the C enumerations, typedefs and structures for MultiSync
//
//=============================================================================
// #ifdef __cplusplus
// #endif
//=============================================================================
// Typedefs
//=============================================================================
// #ifndef FALSE
// #endif
// #ifndef TRUE
// #endif
// #ifndef FULL_32BIT_VALUE
// #endif
/**
* A context to the MultiSync C library. It must be created before
* performing any calls to the library.
*/
@Namespace @Name("void") @Opaque public static class syncContext extends Pointer {
/** Empty constructor. Calls {@code super((Pointer)null)}. */
public syncContext() { super((Pointer)null); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public syncContext(Pointer p) { super(p); }
}
//=============================================================================
// Enumerations
//=============================================================================
/** enum _syncError */
public static final int
SYNC_ERROR_OK = 0,
SYNC_ERROR_FAILED = 1,
SYNC_ERROR_ALREADY_STARTED = 2,
SYNC_ERROR_ALREADY_STOPPED = 3,
SYNC_ERROR_CONTEXT_NOT_INITIALIZED = 4,
SYNC_ERROR_UNKNOWN_ERROR = 5;
/** enum _syncMessage */
public static final int
SYNC_MESSAGE_OK = 0,
SYNC_MESSAGE_FAILED = 1,
SYNC_MESSAGE_STARTED = 2,
SYNC_MESSAGE_STOPPED = 3,
SYNC_MESSAGE_SYNCING = 4,
SYNC_MESSAGE_NOMASTER = 5,
SYNC_MESSAGE_THREAD_ERROR = 6,
SYNC_MESSAGE_DEVICE_ERROR = 7,
SYNC_MESSAGE_NOT_ENOUGH_DEVICES = 8,
SYNC_MESSAGE_BUS_RESET = 9,
SYNC_MESSAGE_NOT_INITIALIZED = 10,
SYNC_MESSAGE_UNKNOWN_ERROR = 11;
// #ifdef __cplusplus
// #endif
// #endif
// Parsed from MultiSyncLibrary_C.h
//=============================================================================
// Copyright ? 2017 FLIR Integrated Imaging Solutions, Inc. All Rights Reserved.
//
// This software is the confidential and proprietary information of FLIR
// Integrated Imaging Solutions, Inc. ("Confidential Information"). You
// shall not disclose such Confidential Information and shall use it only in
// accordance with the terms of the license agreement you entered into
// with FLIR Integrated Imaging Solutions, Inc. (FLIR).
//
// FLIR MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE
// SOFTWARE, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE, OR NON-INFRINGEMENT. FLIR SHALL NOT BE LIABLE FOR ANY DAMAGES
// SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
// THIS SOFTWARE OR ITS DERIVATIVES.
//=============================================================================
//=============================================================================
// $Id:
//=============================================================================
// #ifndef MULTISYNCLIBRARY_C_H
// #define MULTISYNCLIBRARY_C_H
//=============================================================================
// Global C header file for MultiSync
//
// This file defines the C API for MultiSync Library
//=============================================================================
// #include "MultiSyncLibraryPlatform_C.h"
// #include "MultiSyncLibraryDefs_C.h"
// #ifdef __cplusplus
// #endif
/**
* Create a Sync context for MultiSync Library.
* This call must be made before any other calls that use a context
* will succeed.
*
* @param pContext A pointer to the syncContext to be created.
*
* @return A syncError indicating the success or failure of the function.
*/
public static native @Cast("syncError") int syncCreateContext(
@ByPtrPtr syncContext pContext );
/**
* Destory the sync context. This must be called when the user is finished
* with the context in order to prevent memory leaks.
*
* @param context The syncContext to be destoryed.
*
* @return A syncError indicating the success or failure of the function.
*/
public static native @Cast("syncError") int syncDestroyContext(
syncContext context );
/**
* Start the sync progress
*
* @param context The syncContext to be used.
*
* @return A syncError indicating the success or failure of the function.
*/
public static native @Cast("syncError") int syncStart(
syncContext context );
/**
* Stop the sync progress
*
* @param context The syncContext to be used.
*
* @return A syncError indicating the success or failure of the function.
*/
public static native @Cast("syncError") int syncStop(
syncContext context );
/**
* Scan newly connected or removed timing bus (for corss-PC syncing only)
*
* @param context The syncContext to be used.
*
* @return A syncError indicating the success or failure of the function.
*/
public static native @Cast("syncError") int syncRescanMasterTimingBus(
syncContext context );
/**
* Start the sync progress
*
* @param context The syncContext to be used.
*
* @return A syncMessage indicating the sync status.
*/
public static native @Cast("syncMessage") int syncGetStatus(
syncContext context );
/**
* Time since sync started
*
* @param context The syncContext to be used.
*
* @return Time sinced synced.
*/
public static native double syncGetTimeSinceSynced(
syncContext context );
/**
* Whether syncing across PCs
*
* @param context The syncContext to be used.
*
* @return True if its syncing across PC
*/
public static native @Cast("BOOL") int syncIsTimingBusConnected(
syncContext context );
/**
* Enable across pc synchronization support
*
* @param context The syncContext to be used.
*
* @return True if operation was successful
*/
public static native @Cast("BOOL") int syncEnableCrossPCSynchronization(
syncContext context );
/**
* Disable across pc synchronization support
*
* @param context The syncContext to be used.
*
* @return True if operation was successful
*/
public static native @Cast("BOOL") int syncDisableCrossPCSynchronization(
syncContext context );
/**
* Query cross pc synchronizaion support status
*
* @param context The syncContext to be used.
*
* @return True if cross pc synchronization was supported
*/
public static native @Cast("BOOL") int syncQueryCrossPCSynchronizationSetting(
syncContext context );
// #ifdef __cplusplus
// #endif
// #endif
}