ICACamera.h

Includes:
<AvailabilityMacros.h>

Overview

ICACamera.h defines digital still cameras specific constants used with the Image Capture framework APIs.



Enumerated Types

Camera capabilities
Camera messages
Fields in StorageInfo Dataset
ImageCapture framework specific camera properties
Standard camera properties
Values for kICAPropertyCameraAccessCapability
Values for kICAPropertyCameraFilesystemType
Values for kICAPropertyCameraStorageType

Camera capabilities


enum { 
    kICACapabilityCanCameraCaptureNewImage = 'ccni', 
    kICACapabilityCanCameraDeleteOne = 'del1', 
    kICACapabilityCanCameraDeleteAll = 'dela', 
    kICACapabilityCanCameraSyncClock = 'sclk', 
    kICACapabilityCanCameraUploadData = 'load', 
    kICACapabilityMayStoreNewImagesInTempStore = 'temp' 
};  
Constants
kICAMessageCameraCaptureNewImage

Can capture a new image using the camera.

kICAMessageCameraDeleteOne

Can delete one image stored in the camera.

kICAMessageCameraDeleteAll

Can delete all images stored in the camera.

kICAMessageCameraSyncClock

Can synchronize camera's clock with the computer's clock.

kICAMessageCameraUploadData

Can upload data to the camera.

Discussion

Capabilities of digital still cameras.


Camera messages


enum { 
    kICAMessageCameraCaptureNewImage = 'ccni', 
    kICAMessageCameraDeleteOne = 'del1', 
    kICAMessageCameraDeleteAll = 'dela', 
    kICAMessageCameraSyncClock = 'sclk', 
    kICAMessageCameraUploadData = 'load' 
};  
Constants
kICAMessageCameraCaptureNewImage

Capture a new image using the camera.

kICAMessageCameraDeleteOne

Delete one image stored in the camera.

kICAMessageCameraDeleteAll

Delete all images stored in the camera.

kICAMessageCameraSyncClock

Synchronize camera's clock with the computer's clock.

kICAMessageCameraUploadData

Upload data to the camera.

Discussion

Messages that can be sent to digital still cameras.


Fields in StorageInfo Dataset


enum { 
    kICAPropertyCameraStorageType = 'stor', 
    kICAPropertyCameraFilesystemType = 'fsys', 
    kICAPropertyCameraAccessCapability = 'acap', 
    kICAPropertyCameraMaxCapacity = 'maxc', 
    kICAPropertyCameraFreeSpaceInBytes = 'fres', 
    kICAPropertyCameraFreeSpaceInImages = 'frei', 
    kICAPropertyCameraStorageDescription = 'stod', 
    kICAPropertyCameraVolumeLabel = 'voll' 
};  
Constants
kICAPropertyCameraStorageType

Storage type.
Data type: UInt16.

kICAPropertyCameraFilesystemType

File system type.
Data type: UInt16.

kICAPropertyCameraAccessCapability

Access capability.
Data type: UInt16.

kICAPropertyCameraMaxCapacity

Total storage capacity in bytes.
Data type: UInt64.

kICAPropertyCameraFreeSpaceInBytes

Free space available on storage in bytes.
Data type: UInt64.

kICAPropertyCameraFreeSpaceInImages

Number of images that may still be captured in to this store based on the current image capture settings on the camera.
Data type: UInt32.

kICAPropertyCameraStorageDescription

Storage description.
Data type: null terminated string.

kICAPropertyCameraVolumeLabel

Volume label.
Data type: null terminated string.

Discussion

Refer to section 5.5.3 of the PIMA 15740 (PTP) specification for descriptions and usage notes.


ImageCapture framework specific camera properties


enum { 
    kICAPropertyCameraIcon = 'icon', 
    kICAPropertyCameraSupportedMessages = 'msgs' 
};  
Constants
kICAPropertyCameraIcon

Camera icon in ICAThumbnail format.

kICAPropertyCameraSupportedMessages

Messages supported/understood by the camera.

Discussion

ImageCapture framework specific camera properties.


Standard camera properties


enum { 
    kICAPropertyCameraBatteryLevel = '5001', 
    kICAPropertyCameraFunctionalMode = '5002', 
    kICAPropertyCameraImageSize = '5003', 
    kICAPropertyCameraCompressionSetting = '5004', 
    kICAPropertyCameraWhiteBalance = '5005', 
    kICAPropertyCameraRGBGain = '5006', 
    kICAPropertyCameraFNumber = '5007', 
    kICAPropertyCameraFocalLength = '5008', 
    kICAPropertyCameraFocusDistance = '5009', 
    kICAPropertyCameraFocusMode = '500A', 
    kICAPropertyCameraExposureMeteringMode = '500B', 
    kICAPropertyCameraFlashMode = '500C', 
    kICAPropertyCameraExposureTime = '500D', 
    kICAPropertyCameraExposureProgramMode = '500E', 
    kICAPropertyCameraExposureIndex = '500F', 
    kICAPropertyCameraExposureBiasCompensation = '5010', 
    kICAPropertyCameraDateTime = '5011', 
    kICAPropertyCameraCaptureDelay = '5012', 
    kICAPropertyCameraStillCaptureMode = '5013', 
    kICAPropertyCameraContrast = '5014', 
    kICAPropertyCameraSharpness = '5015', 
    kICAPropertyCameraDigitalZoom = '5016', 
    kICAPropertyCameraEffectMode = '5017', 
    kICAPropertyCameraBurstNumber = '5018', 
    kICAPropertyCameraBurstInterval = '5019', 
    kICAPropertyCameraTimelapseNumber = '501A', 
    kICAPropertyCameraTimelapseInterval = '501B', 
    kICAPropertyCameraFocusMeteringMode = '501C', 
    kICAPropertyCameraUploadURL = '501D', 
    kICAPropertyCameraArtist = '501E', 
    kICAPropertyCameraCopyrightInfo = '501F' 
};  
Constants
kICAPropertyCameraBatteryLevel

Battery level.
Property data type: UInt8; Property desc forms: Enum/Range.

kICAPropertyCameraFunctionalMode

Functional mode.
Property data type: UInt16; Property desc forms: Enum.

kICAPropertyCameraImageSize

Image size.
Property data type: CFString; Property desc forms: Enum/Range.

kICAPropertyCameraCompressionSetting

Compression setting.
Property data type: UInt8; Property desc forms: Enum/Range.

kICAPropertyCameraWhiteBalance

White balance.
Property data type: UInt16; Property desc forms: Enum.

kICAPropertyCameraRGBGain

RGB gain.
Property data type: null terminated string; Property desc forms: Enum/Range.

kICAPropertyCameraFNumber

F-number.
Property data type: UInt8; Property desc forms: Enum/Range.

kICAPropertyCameraFocalLength

Focal length.
Property data type: UInt32; Property desc forms: Enum/Range.

kICAPropertyCameraFocusDistance

Focus distance.
Property data type: UInt16; Property desc forms: Enum.

kICAPropertyCameraFocusMode

Focus mode.
Property data type: UInt16; Property desc forms: Enum.

kICAPropertyCameraExposureMeteringMode

Exposure Metering mode.
Property data type: UInt16; Property desc forms: Enum.

kICAPropertyCameraFlashMode

Flash mode.
Property data type: UInt16; Property desc forms: Enum.

kICAPropertyCameraExposureTime

Exposure time.
Property data type: UInt32; Property desc forms: Enum/Range.

kICAPropertyCameraExposureProgramMode

Exposure program mode.
Property data type: UInt16; Property desc forms: Enum.

kICAPropertyCameraExposureIndex

Exposure index.
Property data type: UInt16; Property desc forms: Enum/Range.

kICAPropertyCameraExposureBiasCompensation

Exposure bias compensation.
Property data type: UInt16; Property desc forms: Enum/Range.

kICAPropertyCameraDateTime

Date & time.
Property data type: null terminated string; Property desc forms: none.

kICAPropertyCameraCaptureDelay

Capture delay.
Property data type: UInt32; Property desc forms: Enum/Range.

kICAPropertyCameraStillCaptureMode

Still capture mode.
Property data type: UInt16; Property desc forms: Enum.

kICAPropertyCameraContrast

Contrast.
Property data type: UInt8; Property desc forms: Enum/Range.

kICAPropertyCameraSharpness

Sharpness.
Property data type: UInt8; Property desc forms: Enum/Range.

kICAPropertyCameraDigitalZoom

Digital zoom.
Property data type: UInt8; Property desc forms: Enum/Range.

kICAPropertyCameraEffectMode

Effect mode.
Property data type: UInt16; Property desc forms: Enum.

kICAPropertyCameraBurstNumber

Burst number.
Property data type: UInt16; Property desc forms: Enum/Range.

kICAPropertyCameraBurstInterval

Burst interval.
Property data type: UInt16; Property desc forms: Enum/Range.

kICAPropertyCameraTimelapseNumber

Timelapse number.
Property data type: UInt16; Property desc forms: Enum/Range.

kICAPropertyCameraTimelapseInterval

Timelapse interval.
Property data type: UInt32; Property desc forms: Enum/Range.

kICAPropertyCameraFocusMeteringMode

Focus metering mode.
Property data type: UInt16; Property desc forms: Enum.

kICAPropertyCameraUploadURL

Upload URL.
Property data type: null terminated string; Property desc forms: none.

kICAPropertyCameraArtist

Artist.
Property data type: null terminated string; Property desc forms: none.

kICAPropertyCameraCopyrightInfo

Copyright info.
Property data type: null terminated string; Property desc forms: none.

Discussion

Refer to section 13 of the PIMA 15740 (PTP) specification for descriptions and usage notes for these standard properties.


Values for kICAPropertyCameraAccessCapability


enum { 
    kICAAccessReadWrite = 0x0000, 
    kICAAccessReadOnly = 0x0001, 
    kICAAccessReadOnlyWithObjectDeletion = 0x0002 
};  
Constants
kICAAccessReadWrite

Read-write.

kICAAccessReadOnly

Read-only without object deletion.

kICAAccessReadOnlyWithObjectDeletion

Read-only with object deletion.

Discussion

Values for kICAPropertyCameraAccessCapability.


Values for kICAPropertyCameraFilesystemType


enum { 
    kICAFileystemUndefined = 0x0000, 
    kICAFileystemGenericFlat = 0x0001, 
    kICAFileystemGenericHierarchical = 0x0002, 
    kICAFileystemDCF = 0x0003 
};  
Constants
kICAFileystemUndefined

Undefined.

kICAFileystemGenericFlat

Generic flat.

kICAFileystemGenericHierarchical

Generic hierarchical.

kICAFileystemDCF

DCF-conformant.

Discussion

Values for kICAPropertyCameraFilesystemType.


Values for kICAPropertyCameraStorageType


enum { 
    kICAStorageUndefined = 0x0000, 
    kICAStorageFixedROM = 0x0001, 
    kICAStorageRemovableROM = 0x0002, 
    kICAStorageFixedRAM = 0x0003, 
    kICAStorageRemovableRAM = 0x0004 
};  
Constants
kICAStorageUndefined

Undefined.

kICAStorageFixedROM

Fixed ROM.

kICAStorageRemovableROM

Removable ROM.

kICAStorageFixedRAM

Fixed RAM.

kICAStorageRemovableRAM

Removable RAM.

Discussion

Values for kICAPropertyCameraStorageType.

 

Last Updated: 2009-08-12