DeviceConfiguration#

from itala import itala

PIXEL_FORMAT = "Mono8"
WIDTH = 800
HEIGHT = 1000
EXPOSURE_TIME = 90000

system = itala.create_system()
devices_info = system.enumerate_devices(500)
if(len(devices_info) == 0):
    print("No devices found. Aborted.")
    exit(1)
if(devices_info[0].access_status != itala.DeviceAccessStatus_AvailableReadWrite):
    print("Target device is unaccessible in RW mode. Aborted.")
    exit(1)
device = system.create_device(devices_info[0])
print("First device initialized.")
print("Camera configuration started...")
nodemap = device.node_map

pixel_format_node = nodemap.PixelFormat
if(not itala.is_writable(pixel_format_node)):
    print("Unable to configure the pixel format. Aborting")
    exit(1)
original_pixel_format = pixel_format_node.get_int_value()
pixel_format_node.from_string(PIXEL_FORMAT)
print("Pixel format set to " + PIXEL_FORMAT)

width_node = nodemap.Width
if(not itala.is_writable(width_node)):
    print("Unable to configure width. Aborting")
    exit(1)
original_width = width_node.value
width_node.value = WIDTH
print("Width set to " + str(WIDTH))

height_node = nodemap.Height
if(not itala.is_writable(height_node)):
    print("Unable to configure height. Aborting")
    exit(1)
original_height = height_node.value
height_node.value = HEIGHT
print("Height set to " + str(HEIGHT))

exposure_time_node = nodemap.ExposureTime
if(not itala.is_writable(exposure_time_node)):
    print("Unable to configure exposure time. Aborting")
    exit(1)
original_exposure_time = exposure_time_node.value
exposure_time_node.value = EXPOSURE_TIME
print("Exposure time set to " + str(EXPOSURE_TIME))

print("Rolling back to original camera features state...")
pixel_format_node.set_int_value(original_pixel_format)
width_node.value = original_width
height_node.value = original_height
exposure_time_node.value = original_exposure_time

device.dispose()
system.dispose()