Package com.orbbec.obsensor

## Enum SyncMode

- java.lang.Object
- - java.lang.Enum<SyncMode>
  - - com.orbbec.obsensor.SyncMode

All Implemented Interfaces:
  `java.io.Serializable`, `java.lang.Comparable<SyncMode>`

    public enum SyncMode
    extends java.lang.Enum<SyncMode>

The synchronization mode of the device.

### Enum Constant Summary

Enum Constants
`OB_MULTI_DEVICE_SYNC_MODE_FREE_RUN` free run mode The device does not synchronize with other devices, The Color and Depth can be set to different frame rates.
`OB_MULTI_DEVICE_SYNC_MODE_HARDWARE_TRIGGERING` \if English hardware triggering mode The device will start one time image capture after receiving the trigger signal via VSYNC_IN pin on synchronization port and will output the trigger signal via VSYNC_OUT pin by default.
`OB_MULTI_DEVICE_SYNC_MODE_PRIMARY` primary mode The device is the primary device in the multi-device system, it will output the trigger signal via VSYNC_OUT pin on synchronization port by default.
`OB_MULTI_DEVICE_SYNC_MODE_SECONDARY`
`OB_MULTI_DEVICE_SYNC_MODE_SECONDARY_SYNCED` secondary synced mode The device is the secondary device in the multi-device system, it will receive the trigger signal via VSYNC_IN pin on synchronization port.
`OB_MULTI_DEVICE_SYNC_MODE_SOFTWARE_TRIGGERING` software triggering mode The device will start one time image capture after receiving the capture command and will output the trigger signal via VSYNC_OUT pin by default.
`OB_MULTI_DEVICE_SYNC_MODE_STANDALONE` standalone mode The device does not synchronize with other devices.

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static SyncMode` `get​(int value)` Convert int value to SyncMode
`int` `value()` Enum value of int
`static SyncMode` `valueOf​(java.lang.String name)` Returns the enum constant of this type with the specified name.
`static SyncMode[]` `values()` Returns an array containing the constants of this enum type, in the order they are declared.

### Methods inherited from class java.lang.Enum

`clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

### Methods inherited from class java.lang.Object

`getClass, notify, notifyAll, wait, wait, wait`

### Enum Constant Detail

#### OB_MULTI_DEVICE_SYNC_MODE_FREE_RUN

    public static final SyncMode OB_MULTI_DEVICE_SYNC_MODE_FREE_RUN

free run mode The device does not synchronize with other devices, The Color and Depth can be set to different frame rates.

#### OB_MULTI_DEVICE_SYNC_MODE_STANDALONE

    public static final SyncMode OB_MULTI_DEVICE_SYNC_MODE_STANDALONE

standalone mode The device does not synchronize with other devices. The Color and Depth should be set to same frame rates, the Color and Depth will be synchronized.

#### OB_MULTI_DEVICE_SYNC_MODE_PRIMARY

    public static final SyncMode OB_MULTI_DEVICE_SYNC_MODE_PRIMARY

primary mode The device is the primary device in the multi-device system, it will output the trigger signal via VSYNC_OUT pin on synchronization port by default. The Color and Depth should be set to same frame rates, the Color and Depth will be synchronized and can be adjusted by @ref colorDelayUs, @ref depthDelayUs or @ref trigger2ImageDelayUs.

#### OB_MULTI_DEVICE_SYNC_MODE_SECONDARY

    public static final SyncMode OB_MULTI_DEVICE_SYNC_MODE_SECONDARY

#### OB_MULTI_DEVICE_SYNC_MODE_SECONDARY_SYNCED

    public static final SyncMode OB_MULTI_DEVICE_SYNC_MODE_SECONDARY_SYNCED

secondary synced mode The device is the secondary device in the multi-device system, it will receive the trigger signal via VSYNC_IN pin on synchronization port. It will out the trigger signal via VSYNC_OUT pin on synchronization port by default. The Color and Depth should be set to same frame rates, the Color and Depth will be synchronized and can be adjusted by @ref colorDelayUs, @ref depthDelayUs or @ref trigger2ImageDelayUs. After starting the stream, the device will be immediately start capturing images, and will adjust the capture time when the trigger signal is received to synchronize with the primary device. If the trigger signal is stopped, the device will still capture images.

The frequency of the trigger signal should be same as the frame rate of the stream profile which is set when starting the stream.

#### OB_MULTI_DEVICE_SYNC_MODE_SOFTWARE_TRIGGERING

    public static final SyncMode OB_MULTI_DEVICE_SYNC_MODE_SOFTWARE_TRIGGERING

software triggering mode The device will start one time image capture after receiving the capture command and will output the trigger signal via VSYNC_OUT pin by default. The capture command can be sent form host by call @ref ob_device_trigger_capture. The number of images captured each time can be set by @ref framesPerTrigger. The Color and Depth should be set to same frame rates, the Color and Depth will be synchronized and can be adjusted by @ref colorDelayUs, @ref depthDelayUs or @ref trigger2ImageDelayUs. The frequency of the user call @ref ob_device_trigger_capture to send the capture command multiplied by the number of frames per trigger should be less than the frame rate of the stream profile which is set when starting the stream.

#### OB_MULTI_DEVICE_SYNC_MODE_HARDWARE_TRIGGERING

    public static final SyncMode OB_MULTI_DEVICE_SYNC_MODE_HARDWARE_TRIGGERING

\if English hardware triggering mode The device will start one time image capture after receiving the trigger signal via VSYNC_IN pin on synchronization port and will output the trigger signal via VSYNC_OUT pin by default. The number of images captured each time can be set by @ref framesPerTrigger. The Color and Depth should be set to same frame rates, the Color and Depth will be synchronized and can be adjusted by @ref colorDelayUs, @ref depthDelayUs or @ref trigger2ImageDelayUs. The frequency of the trigger signal multiplied by the number of frames per trigger should be less than the frame rate of the stream profile which is set when starting the stream. The trigger signal input via VSYNC_IN pin on synchronization port should be ouput by other device via VSYNC_OUT pin in hardware triggering mode or software triggering mode. Due to different models may have different signal input requirements, please do not use different models to output trigger signal as input-trigger signal.

### Method Detail

#### values

    public static SyncMode[] values()

Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

    for (SyncMode c : SyncMode.values())
        System.out.println(c);

Returns:
  an array containing the constants of this enum type, in the order they are declared

#### valueOf

    public static SyncMode valueOf​(java.lang.String name)

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
  `name` - the name of the enum constant to be returned.
Returns:
  the enum constant with the specified name
Throws:
  `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
  `java.lang.NullPointerException` - if the argument is null

#### value

    public int value()

Enum value of int

Returns:
  the value of int.

#### get

    public static SyncMode get​(int value)

Convert int value to SyncMode

Parameters:
  `value` - int value
Returns:
  SyncMode