# Enumerations & other classes

## Enumerations

class tango.LockerLanguage(*args, **kwargs)

  An enumeration representing the programming language in which the client application who locked is written.

  > - CPP : C++/Python language

  > - JAVA : Java language

  New in PyTango 7.0.0

class tango.CmdArgType(*args, **kwargs)

  An enumeration representing the Tango data types.

  > - DevVoid

  > - DevBoolean

  > - DevShort

  > - DevLong

  > - DevFloat

  > - DevDouble

  > - DevUShort

  > - DevULong

  > - DevString

  > - DevVarCharArray

  > - DevVarShortArray

  > - DevVarLongArray

  > - DevVarFloatArray

  > - DevVarDoubleArray

  > - DevVarUShortArray

  > - DevVarULongArray

  > - DevVarStringArray

  > - DevVarLongStringArray

  > - DevVarDoubleStringArray

  > - DevState

  > - ConstDevString

  > - DevVarBooleanArray

  > - DevUChar

  > - DevLong64

  > - DevULong64

  > - DevVarLong64Array

  > - DevVarULong64Array

  > - DevEncoded

  > - DevEnum

  > - DevPipeBlob

class tango.MessBoxType(*args, **kwargs)

  An enumeration representing the MessBoxType

  > - STOP

  > - INFO

  New in PyTango 7.0.0

class tango.PollObjType(*args, **kwargs)

  An enumeration representing the PollObjType

  > - POLL_CMD

  > - POLL_ATTR

  > - EVENT_HEARTBEAT

  > - STORE_SUBDEV

  New in PyTango 7.0.0

class tango.PollCmdCode(*args, **kwargs)

  An enumeration representing the PollCmdCode

  > - POLL_ADD_OBJ

  > - POLL_REM_OBJ

  > - POLL_START

  > - POLL_STOP

  > - POLL_UPD_PERIOD

  > - POLL_REM_DEV

  > - POLL_EXIT

  > - POLL_REM_EXT_TRIG_OBJ

  > - POLL_ADD_HEARTBEAT

  > - POLL_REM_HEARTBEAT

  New in PyTango 7.0.0

class tango.SerialModel(*args, **kwargs)

  An enumeration representing the type of serialization performed by the device server

  > - BY_DEVICE

  > - BY_CLASS

  > - BY_PROCESS

  > - NO_SYNC

class tango.AttReqType(*args, **kwargs)

  An enumeration representing the type of attribute request

  > - READ_REQ

  > - WRITE_REQ

class tango.LockCmdCode(*args, **kwargs)

  An enumeration representing the LockCmdCode

  > - LOCK_ADD_DEV

  > - LOCK_REM_DEV

  > - LOCK_UNLOCK_ALL_EXIT

  > - LOCK_EXIT

  New in PyTango 7.0.0

class tango.LogLevel(*args, **kwargs)

  An enumeration representing the LogLevel

  > - LOG_OFF

  > - LOG_FATAL

  > - LOG_ERROR

  > - LOG_WARN

  > - LOG_INFO

  > - LOG_DEBUG

  New in PyTango 7.0.0

class tango.LogTarget(*args, **kwargs)

  An enumeration representing the LogTarget

  > - LOG_CONSOLE

  > - LOG_FILE

  > - LOG_DEVICE

  New in PyTango 7.0.0

class tango.EventType(*args, **kwargs)

  An enumeration representing event type

  > - CHANGE_EVENT

  > - PERIODIC_EVENT

  > - ARCHIVE_EVENT

  > - USER_EVENT

  > - ATTR_CONF_EVENT

  > - DATA_READY_EVENT

  > - INTERFACE_CHANGE_EVENT

  > - PIPE_EVENT

  > - ALARM_EVENT

  > Changed in version 7.0.0: Added DATA_READY_EVENT

  > Changed in version 9.2.2: Added INTERFACE_CHANGE_EVENT

  > Changed in version 9.2.2: Added PIPE_EVENT

  > Changed in version 10.0.0: Added ALARM_EVENT

  > Changed in version 10.0.0: Removed QUALITY_EVENT

class tango.KeepAliveCmdCode(*args, **kwargs)

  An enumeration representing the KeepAliveCmdCode

  > - EXIT_TH

  New in PyTango 7.0.0

class tango.AccessControlType(*args, **kwargs)

  An enumeration representing the AccessControlType

  > - ACCESS_READ

  > - ACCESS_WRITE

  New in PyTango 7.0.0

class tango.asyn_req_type(*args, **kwargs)

  An enumeration representing the asynchronous request type

  > - POLLING

  > - CALLBACK

  > - ALL_ASYNCH

class tango.cb_sub_model(*args, **kwargs)

  An enumeration representing callback sub model

  > - PUSH_CALLBACK

  > - PULL_CALLBACK

class tango.AttrQuality(*args, **kwargs)

  An enumeration representing the attribute quality

  > - ATTR_VALID

  > - ATTR_INVALID

  > - ATTR_ALARM

  > - ATTR_CHANGING

  > - ATTR_WARNING

class tango.AttrWriteType(*args, **kwargs)

  An enumeration representing the attribute type

  > - READ

  > - READ_WITH_WRITE

  > - WRITE

  > - READ_WRITE

class tango.AttrDataFormat(*args, **kwargs)

  An enumeration representing the attribute format

  > - SCALAR

  > - SPECTRUM

  > - IMAGE

  > - FMT_UNKNOWN

class tango.PipeWriteType(*args, **kwargs)

  An enumeration representing the pipe type

  > - PIPE_READ

  > - PIPE_READ_WRITE

class tango.DevSource(*args, **kwargs)

  An enumeration representing the device source for data

  > - DEV

  > - CACHE

  > - CACHE_DEV

class tango.ErrSeverity(*args, **kwargs)

  An enumeration representing the error severity

  > - WARN

  > - ERR

  > - PANIC

class tango.DevState(*args, **kwargs)

  An enumeration representing the device state

  > - ON

  > - OFF

  > - CLOSE

  > - OPEN

  > - INSERT

  > - EXTRACT

  > - MOVING

  > - STANDBY

  > - FAULT

  > - INIT

  > - RUNNING

  > - ALARM

  > - DISABLE

  > - UNKNOWN

class tango.DispLevel(*args, **kwargs)

  An enumeration representing the display level

  > - OPERATOR

  > - EXPERT

class tango.GreenMode(*args, **kwargs)

  An enumeration representing the GreenMode

  > - Synchronous

  > - Futures

  > - Gevent

  > - Asyncio

  Added in version 8.1.0.

  Changed in version 8.1.9: Added Asyncio

## Other classes

class tango.Release

  Summarize release information as class attributes.

  Release information:

    - name: (`str`) package name

    - version_info: (`tuple`) The five components of the version number: major, minor, micro, releaselevel, and serial.

    - version: (`str`) package version in format <major>.<minor>.<micro>

    - release: (`str`) pre-release, post-release or development release; it is empty for final releases.

    - version_long: (`str`) package version in format <major>.<minor>.<micro><releaselevel><serial>

    - version_description: (`str`) short description for the current version

    - version_number: (`int`) <major>*100 + <minor>*10 + <micro>

    - description : (`str`) package description

    - long_description: (`str`) longer package description

    - authors: (dict<str(last name), tuple<str(full name),str(email)>>) package authors

    - url: (`str`) package url

    - download_url: (`str`) package download url

    - platform: (`seq`) list of available platforms

    - keywords: (`seq`) list of keywords

    - license: (`str`) the license

class tango.TimeVal(*args, **kwargs)

  Time value structure with the following members:

  > - tv_sec : seconds

  > - tv_usec : microseconds

  > - tv_nsec : nanoseconds

  static fromdatetime(dt) → TimeVal

    > A static method returning a `tango.TimeVal` object representing the given `datetime.datetime`

    > Parameters:
    >   dt:

    >     (`datetime.datetime`) a datetime object

    > Return:

    >   (`TimeVal`) representing the given timestamp

    Added in version 7.1.0.

    Added in version 7.1.2: Documented

  static fromtimestamp(ts) → TimeVal

    > A static method returning a `tango.TimeVal` object representing the given timestamp

    > Parameters:
    >   ts:

    >     (`float`) a timestamp

    > Return:

    >   (`TimeVal`) representing the given timestamp

    Added in version 7.1.0.

  isoformat(self, sep='T') → str

    > Returns a string in ISO 8601 format, YYYY-MM-DDTHH:MM:SS[.mmmmmm][+HH:MM]

    > Parameters:

    >   sep : (str) sep is used to separate the year from the time, and defaults to ‘T’

    > Return:

    >   (`str`) a string representing the time according to a format specification.

    Added in version 7.1.0.

    Added in version 7.1.2: Documented

    Changed in version 7.1.2: The sep parameter is not mandatory anymore and defaults to ‘T’ (same as `datetime.datetime.isoformat()`)

  static now() → TimeVal

    > A static method returning a `tango.TimeVal` object representing the current time

    > Parameters:

    >   None

    > Return:

    >   (`TimeVal`) representing the current time

    Added in version 7.1.0.

    Added in version 7.1.2: Documented

  strftime(self, format) → str

    > Convert a time value to a string according to a format specification.

    > Parameters:

    >   format : (str) See the python library reference manual for formatting codes

    > Return:

    >   (`str`) a string representing the time according to a format specification.

    Added in version 7.1.0.

    Added in version 7.1.2: Documented

  todatetime(self) → datetime.datetime

    > Returns a `datetime.datetime` object representing the same time value

    > Parameters:

    >   None

    > Return:

    >   (`datetime.datetime`) the time value in datetime format

    Added in version 7.1.0.

  totime(self) → float

    > Returns a float representing this time value

    > Parameters:

    >   None

    > Return:

    >   a float representing the time value

    Added in version 7.1.0.