Skip to content

Namespace vl#

Namespace List > vl

Classes#

Type Name
class Buffer <class T>
class CameraConfigFile
class ColorRgb
class EncodedImage
The camera image encoded to a binary file format.
class EncodingSettings
stores the settings for image encoding (e.g. JPEG parameters)
struct EnumDescriptor <typename T>
class Frame
class ICamera
class IFrameObserver
Observer (pattern) to be registered on the ICamera interface as callback for new camera frames.
class Image
class ImageBuf
a memory of an image, e.g. a separated color channel
class ImageGray
class ImagePlane
a plane of an image, e.g. a separated color channel
class ImageRgb
struct ImageSettings
The (post-processing) settings for a single camera stream / IFrameObserver .
class IntParameters <typename ParType>
class MemoryResource
struct NoParameters
class PixelFormat
the complete pixel format description of an image
class Range <typename T>
Represents a numeric range (min, max)

Public Types#

Type Name
enum AutoControlMode
Automatically adapt gain and exposure mode.
typedef AutoControlMode AutoExposureMode
Alias name for AutoControlMode - always enables both, gain and exposure auto.
enum AwbMode
Available auto white balancing modes.
enum BinningMode
Binning modes (combine / average pixels in the image)
enum CameraStatus
ICamera start/stop operation status.
enum CaptureStatus
The current frames capture status, indicating whether the frame received is valid / useable.
enum Depth
The pixel depth of the Image .
enum FlashOutputMode
Flash output modes (when the flash signal is emitted relatively to the image acquisition)
enum ImageEncoding
The requested encoding format of the image (e.g. for specific IFrameObserver )
enum ImageFormat
The color format of the Image .
enum JpgParameters
parameters used for JPEG compression
enum MemoryType
memory type, describes where the allocated memory block is located (on host or GPU memory)
enum PngParameters
parameters used for PNG compression
typedef sigslot_vl::scoped_connection ScopedSignalConnection
typedef sigslot_vl::signal< T... > Signal
typedef sigslot_vl::connection SignalConnection
typedef size_t StreamId
identifies an open camera stream / observer
enum TriggerMode
Trigger modes (start image acquisition)
enum VcCameraApi

Public Attributes#

Type Name
template struct VL_CAMERA_EXPORT EnumDescriptor< AutoControlMode >
template struct VL_CAMERA_EXPORT EnumDescriptor< AwbMode >
template struct VL_CAMERA_EXPORT EnumDescriptor< BinningMode >
template struct VL_CAMERA_EXPORT EnumDescriptor< FlashOutputMode >
template struct VL_CAMERA_EXPORT EnumDescriptor< TriggerMode >

Public Functions#

Type Name
VL_TYPES_EXPORT void copyBytes (const uint8_t * src, uint8_t * dst, MemoryType srcMemoryType, MemoryType dstMemoryType, size_t size)
VL_TYPES_EXPORT bool cudaAccessible (MemoryResource *)
VL_TYPES_EXPORT MemoryResource * cudaDeviceMemoryResource ()
VL_TYPES_EXPORT void cudaDeviceSynchronize ()
std::enable_if<!std::is_same< typenamestd::result_of< Func(Args...)>::type, void >::value, typenamestd::result_of< Func(Args...)>::type >::type cudaManagedMemoryAccess (Func func, Args &&... args)
std::enable_if< std::is_same< typenamestd::result_of< Func(Args...)>::type, void >::value >::type cudaManagedMemoryAccess (Func func, Args &&... args)
VL_TYPES_EXPORT bool cudaManagedMemoryEnabled ()
VL_TYPES_EXPORT void cudaManagedMemoryLock ()
VL_TYPES_EXPORT MemoryResource * cudaManagedMemoryResource ()
VL_TYPES_EXPORT void cudaManagedMemoryUnlock ()
std::enable_if<!std::is_same< typenamestd::result_of< Func(Args...)>::type, void >::value, typenamestd::result_of< Func(Args...)>::type >::type cudaMemoryAccess (bool isManaged, Func func, Args &&... args)
std::enable_if< std::is_same< typenamestd::result_of< Func(Args...)>::type, void >::value >::type cudaMemoryAccess (bool isManaged, Func func, Args &&... args)
VL_TYPES_EXPORT MemoryResource * defaultCudaMemoryResource ()
VL_TYPES_EXPORT MemoryResource * defaultHostMemoryResource ()
VL_TYPES_EXPORT bool hostAccessible (MemoryResource *)
VL_TYPES_EXPORT MemoryResource * hostMemoryResource ()
VL_CAMERA_EXPORT std::unique_ptr< ICamera > makeAlviumCamera (size_t idx=0)
VL_CAMERA_EXPORT std::unique_ptr< ICamera > makeArgusCamera (size_t idx=0)
VL_CAMERA_EXPORT std::unique_ptr< ICamera > makeCamera (size_t idx=0)
VL_TYPES_EXPORT ImageBuf makeImageBuf (size_t width, size_t height, ImageFormat format, MemoryResource * memoryResource)
VL_TYPES_EXPORT ImageBuf makeImageBufGray8 (size_t width, size_t height, MemoryResource * memoryResource)
VL_TYPES_EXPORT ImageBuf makeImageBufRgb888 (size_t width, size_t height, MemoryResource * memoryResource)
VL_TYPES_EXPORT ImageBuf makeImageBufYuv420 (size_t width, size_t height, MemoryResource * memoryResource)
VL_CAMERA_EXPORT std::unique_ptr< ICamera > makeVcCamera (size_t idx=0, VcCameraApi api=VcCameraApi::Auto)
VL_TYPES_EXPORT bool memoryPoolEnabled ()
VL_TYPES_EXPORT MemoryResource * memoryResource (MemoryType memoryType)
VL_CAMERA_EXPORT bool parseFromString (const std::string & value, AutoControlMode & mode)
VL_CAMERA_EXPORT bool parseFromString (const std::string & value, TriggerMode & mode)
VL_CAMERA_EXPORT bool parseFromString (const std::string & value, FlashOutputMode & mode)
VL_CAMERA_EXPORT bool parseFromString (const std::string & value, AwbMode & mode)
VL_CAMERA_EXPORT bool parseFromString (const std::string & value, BinningMode & mode)
VL_TYPES_EXPORT void resize (const Image & src, Image & dst)
VL_TYPES_EXPORT void setCudaManagedMemoryEnabled (bool enable)
VL_TYPES_EXPORT void setMemoryPoolEnabled (bool enable)
VL_CAMERA_EXPORT int64_t timestamp_us ()
VL_CAMERA_EXPORT std::string toString (AutoControlMode mode)
VL_CAMERA_EXPORT std::string toString (TriggerMode mode)
VL_CAMERA_EXPORT std::string toString (FlashOutputMode mode)
VL_CAMERA_EXPORT std::string toString (AwbMode mode)
VL_CAMERA_EXPORT std::string toString (BinningMode mode)
size_t valueSize ()
VL_TYPES_EXPORT size_t valueSize (Depth depth)

Public Types Documentation#

enum AutoControlMode#

Automatically adapt gain and exposure mode.

enum vl::AutoControlMode {
    Off,
    Continuous
};


typedef AutoExposureMode#

Alias name for AutoControlMode - always enables both, gain and exposure auto.

using vl::AutoExposureMode = typedef AutoControlMode;


enum AwbMode#

Available auto white balancing modes.

enum vl::AwbMode {
    Off,
    Auto,
    Incandescent,
    Fluorescent,
    WarmFluorescent,
    Daylight,
    CloudyDaylight,
    Twilight,
    Shade
};


enum BinningMode#

Binning modes (combine / average pixels in the image)

enum vl::BinningMode {
    Off,
    Binning2x2,
    Binning4x4
};

Depends on camera / sensor hardware


enum CameraStatus#

ICamera start/stop operation status.

enum vl::CameraStatus {
    Success,
    UnknownError
};


enum CaptureStatus#

The current frames capture status, indicating whether the frame received is valid / useable.

enum vl::CaptureStatus {
    Success,
    UnknownError,
    Uninitialized,
    Timeout,
    TimestampError,
    PipelineError
};


enum Depth#

The pixel depth of the Image .

enum vl::Depth {
    UInt8,
    UInt16,
    UInt32,
    UInt64,
    Int8,
    Int16,
    Int32,
    Int64,
    Float,
    Double
};


enum FlashOutputMode#

Flash output modes (when the flash signal is emitted relatively to the image acquisition)

enum vl::FlashOutputMode {
    Off,
    ExposureActiveHigh,
    ExposureActiveLow
};

Depends on camera / sensor hardware


enum ImageEncoding#

The requested encoding format of the image (e.g. for specific IFrameObserver )

enum vl::ImageEncoding {
    None,
    Jpg,
    Png
};


enum ImageFormat#

The color format of the Image .

enum vl::ImageFormat {
    Invalid,
    Gray8,
    RGB888,
    NV12,
    YUV420
};


enum JpgParameters#

parameters used for JPEG compression

enum vl::JpgParameters {
    JpgQuality
};


enum MemoryType#

memory type, describes where the allocated memory block is located (on host or GPU memory)

enum vl::MemoryType {
    Invalid,
    Host,
    Cuda,
    CudaManaged,
    Unspecified
};

while working with the Images (or other memory chunks), their location must be respected. If a CPU operation shall be performed, then the memory needs to be transferred to the CPU first and vice-versa. Each transfer is costly. It is beneficial to keep memory near the GPU as long as possible to speed up the processing pipeline.


enum PngParameters#

parameters used for PNG compression

enum vl::PngParameters;


typedef ScopedSignalConnection#

using vl::ScopedSignalConnection = typedef sigslot_vl::scoped_connection;

typedef Signal#

using vl::Signal = typedef sigslot_vl::signal<T...>;

typedef SignalConnection#

using vl::SignalConnection = typedef sigslot_vl::connection;

typedef StreamId#

identifies an open camera stream / observer

using vl::StreamId = typedef size_t;


enum TriggerMode#

Trigger modes (start image acquisition)

enum vl::TriggerMode {
    Off = 0,
    Software = 1,
    RisingEdge = 2,
    FallingEdge = 3,
    Hardware = 3
};

Depends on camera / sensor hardware

Some e.g. IMX412 handles the software trigger by discarding images in free-run and only forwarding when software trigger is set -> no exact timely relation between trigger and image acquisition start)

For sensors supporting hardware trigger, the physical signal will be forwarded directly to the camera chip and will start the image acquisition with very low latency after the trigger is received.


enum VcCameraApi#

enum vl::VcCameraApi {
    Auto,
    Argus,
    V4L
};

Public Attributes Documentation#

variable EnumDescriptor< AutoControlMode >#

template struct VL_CAMERA_EXPORT vl::EnumDescriptor< AutoControlMode >;

variable EnumDescriptor< AwbMode >#

template struct VL_CAMERA_EXPORT vl::EnumDescriptor< AwbMode >;

variable EnumDescriptor< BinningMode >#

template struct VL_CAMERA_EXPORT vl::EnumDescriptor< BinningMode >;

variable EnumDescriptor< FlashOutputMode >#

template struct VL_CAMERA_EXPORT vl::EnumDescriptor< FlashOutputMode >;

variable EnumDescriptor< TriggerMode >#

template struct VL_CAMERA_EXPORT vl::EnumDescriptor< TriggerMode >;

Public Functions Documentation#

function copyBytes#

VL_TYPES_EXPORT  void vl::copyBytes (
    const  uint8_t * src,
    uint8_t * dst,
    MemoryType srcMemoryType,
    MemoryType dstMemoryType,
    size_t size
) 

function cudaAccessible#

VL_TYPES_EXPORT  bool vl::cudaAccessible (
    MemoryResource *
) 

function cudaDeviceMemoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::cudaDeviceMemoryResource () 

function cudaDeviceSynchronize#

VL_TYPES_EXPORT  void vl::cudaDeviceSynchronize () 

function cudaManagedMemoryAccess#

template<typename Func, typename... Args>
std::enable_if<!std::is_same< typenamestd::result_of< Func (Args...)>::type, void >::value, typenamestd::result_of< Func (Args...)>::type >::type vl::cudaManagedMemoryAccess (
    Func func,
    Args &&... args
) 

function cudaManagedMemoryAccess#

template<typename Func, typename... Args>
std::enable_if< std::is_same< typenamestd::result_of< Func (Args...)>::type, void >::value >::type vl::cudaManagedMemoryAccess (
    Func func,
    Args &&... args
) 

function cudaManagedMemoryEnabled#

VL_TYPES_EXPORT  bool vl::cudaManagedMemoryEnabled () 

function cudaManagedMemoryLock#

VL_TYPES_EXPORT  void vl::cudaManagedMemoryLock () 

function cudaManagedMemoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::cudaManagedMemoryResource () 

function cudaManagedMemoryUnlock#

VL_TYPES_EXPORT  void vl::cudaManagedMemoryUnlock () 

function cudaMemoryAccess#

template<typename Func, typename... Args>
std::enable_if<!std::is_same< typenamestd::result_of< Func (Args...)>::type, void >::value, typenamestd::result_of< Func (Args...)>::type >::type vl::cudaMemoryAccess (
    bool isManaged,
    Func func,
    Args &&... args
) 

function cudaMemoryAccess#

template<typename Func, typename... Args>
std::enable_if< std::is_same< typenamestd::result_of< Func (Args...)>::type, void >::value >::type vl::cudaMemoryAccess (
    bool isManaged,
    Func func,
    Args &&... args
) 

function defaultCudaMemoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::defaultCudaMemoryResource () 

function defaultHostMemoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::defaultHostMemoryResource () 

function hostAccessible#

VL_TYPES_EXPORT  bool vl::hostAccessible (
    MemoryResource *
) 

function hostMemoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::hostMemoryResource () 

function makeAlviumCamera#

VL_CAMERA_EXPORT std::unique_ptr< ICamera > vl::makeAlviumCamera (
    size_t idx=0
) 

function makeArgusCamera#

VL_CAMERA_EXPORT std::unique_ptr< ICamera > vl::makeArgusCamera (
    size_t idx=0
) 

function makeCamera#

VL_CAMERA_EXPORT std::unique_ptr< ICamera > vl::makeCamera (
    size_t idx=0
) 

function makeImageBuf#

VL_TYPES_EXPORT  ImageBuf vl::makeImageBuf (
    size_t width,
    size_t height,
    ImageFormat format,
    MemoryResource * memoryResource
) 

function makeImageBufGray8#

VL_TYPES_EXPORT  ImageBuf vl::makeImageBufGray8 (
    size_t width,
    size_t height,
    MemoryResource * memoryResource
) 

function makeImageBufRgb888#

VL_TYPES_EXPORT  ImageBuf vl::makeImageBufRgb888 (
    size_t width,
    size_t height,
    MemoryResource * memoryResource
) 

function makeImageBufYuv420#

VL_TYPES_EXPORT  ImageBuf vl::makeImageBufYuv420 (
    size_t width,
    size_t height,
    MemoryResource * memoryResource
) 

function makeVcCamera#

VL_CAMERA_EXPORT std::unique_ptr< ICamera > vl::makeVcCamera (
    size_t idx=0,
    VcCameraApi api=VcCameraApi::Auto
) 

function memoryPoolEnabled#

VL_TYPES_EXPORT  bool vl::memoryPoolEnabled () 

function memoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::memoryResource (
    MemoryType memoryType
) 

function parseFromString#

VL_CAMERA_EXPORT  bool vl::parseFromString (
    const std::string & value,
    AutoControlMode & mode
) 

function parseFromString#

VL_CAMERA_EXPORT  bool vl::parseFromString (
    const std::string & value,
    TriggerMode & mode
) 

function parseFromString#

VL_CAMERA_EXPORT  bool vl::parseFromString (
    const std::string & value,
    FlashOutputMode & mode
) 

function parseFromString#

VL_CAMERA_EXPORT  bool vl::parseFromString (
    const std::string & value,
    AwbMode & mode
) 

function parseFromString#

VL_CAMERA_EXPORT  bool vl::parseFromString (
    const std::string & value,
    BinningMode & mode
) 

function resize#

VL_TYPES_EXPORT  void vl::resize (
    const  Image & src,
    Image & dst
) 

function setCudaManagedMemoryEnabled#

VL_TYPES_EXPORT  void vl::setCudaManagedMemoryEnabled (
    bool enable
) 

function setMemoryPoolEnabled#

VL_TYPES_EXPORT  void vl::setMemoryPoolEnabled (
    bool enable
) 

function timestamp_us#

VL_CAMERA_EXPORT  int64_t vl::timestamp_us () 

function toString#

VL_CAMERA_EXPORT std::string vl::toString (
    AutoControlMode mode
) 

function toString#

VL_CAMERA_EXPORT std::string vl::toString (
    TriggerMode mode
) 

function toString#

VL_CAMERA_EXPORT std::string vl::toString (
    FlashOutputMode mode
) 

function toString#

VL_CAMERA_EXPORT std::string vl::toString (
    AwbMode mode
) 

function toString#

VL_CAMERA_EXPORT std::string vl::toString (
    BinningMode mode
) 

function valueSize#

template<Depth depth>
size_t vl::valueSize () 

function valueSize#

VL_TYPES_EXPORT  size_t vl::valueSize (
    Depth depth
) 


The documentation for this class was generated from the following file docs/libvl/build/2.1.0/doxygen/source/vl/buffer.h