# Enumerations & other classes

## Enumerations

class `tango.``LockerLanguage`

  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`

  An enumeration representing the command argument type.

  > - 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
  > - DevInt
  > - DevEncoded
  > - DevEnum
  > - DevPipeBlob

class `tango.``MessBoxType`

  An enumeration representing the MessBoxType

  > - STOP
  > - INFO

  New in PyTango 7.0.0

class `tango.``PollObjType`

  An enumeration representing the PollObjType

  > - POLL_CMD
  > - POLL_ATTR
  > - EVENT_HEARTBEAT
  > - STORE_SUBDEV

  New in PyTango 7.0.0

class `tango.``PollCmdCode`

  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`

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

  > - BY_DEVICE
  > - BY_CLASS
  > - BY_PROCESS
  > - NO_SYNC

class `tango.``AttReqType`

  An enumeration representing the type of attribute request

  > - READ_REQ
  > - WRITE_REQ

class `tango.``LockCmdCode`

  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`

  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`

  An enumeration representing the LogTarget

  > - LOG_CONSOLE
  > - LOG_FILE
  > - LOG_DEVICE

  New in PyTango 7.0.0

class `tango.``EventType`

  An enumeration representing event type

  > - CHANGE_EVENT
  > - QUALITY_EVENT
  > - PERIODIC_EVENT
  > - ARCHIVE_EVENT
  > - USER_EVENT
  > - ATTR_CONF_EVENT
  > - DATA_READY_EVENT
  > - INTERFACE_CHANGE_EVENT
  > - PIPE_EVENT

  > DATA_READY_EVENT - New in PyTango 7.0.0 INTERFACE_CHANGE_EVENT - New in PyTango 9.2.2 PIPE_EVENT - New in PyTango 9.2.2

class `tango.``KeepAliveCmdCode`

  An enumeration representing the KeepAliveCmdCode

  > - EXIT_TH

  New in PyTango 7.0.0

class `tango.``AccessControlType`

  An enumeration representing the AccessControlType

  > - ACCESS_READ
  > - ACCESS_WRITE

  New in PyTango 7.0.0

class `tango.``asyn_req_type`

  An enumeration representing the asynchronous request type

  > - POLLING
  > - CALLBACK
  > - ALL_ASYNCH

class `tango.``cb_sub_model`

  An enumeration representing callback sub model

  > - PUSH_CALLBACK
  > - PULL_CALLBACK

class `tango.``AttrQuality`

  An enumeration representing the attribute quality

  > - ATTR_VALID
  > - ATTR_INVALID
  > - ATTR_ALARM
  > - ATTR_CHANGING
  > - ATTR_WARNING

class `tango.``AttrWriteType`

  An enumeration representing the attribute type

  > - READ
  > - READ_WITH_WRITE
  > - WRITE
  > - READ_WRITE

class `tango.``AttrDataFormat`

  An enumeration representing the attribute format

  > - SCALAR
  > - SPECTRUM
  > - IMAGE
  > - FMT_UNKNOWN

class `tango.``PipeWriteType`

  An enumeration representing the pipe type

  > - PIPE_READ
  > - PIPE_READ_WRITE

class `tango.``DevSource`

  An enumeration representing the device source for data

  > - DEV
  > - CACHE
  > - CACHE_DEV

class `tango.``ErrSeverity`

  An enumeration representing the error severity

  > - WARN
  > - ERR
  > - PANIC

class `tango.``DevState`

  An enumeration representing the device state

  > - ON
  > - OFF
  > - CLOSE
  > - OPEN
  > - INSERT
  > - EXTRACT
  > - MOVING
  > - STANDBY
  > - FAULT
  > - INIT
  > - RUNNING
  > - ALARM
  > - DISABLE
  > - UNKNOWN

class `tango.``DispLevel`

  An enumeration representing the display level

  > - OPERATOR
  > - EXPERT

class `tango.``GreenMode`

  An enumeration representing the GreenMode

  > - Synchronous
  > - Futures
  > - Gevent

  New in PyTango 8.1.0

## 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`

  Time value structure with the following members:

  > - tv_sec : seconds
  > - tv_usec : microseconds
  > - tv_nsec : nanoseconds

  `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.

    New in version 7.1.0.

    New 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()`)

  `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.

    New in version 7.1.0.

    New 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

    New in version 7.1.0.

  `totime`(self) → float

    > Returns a float representing this time value

    > Parameters: | None
    > Return: | a float representing the time value

    New in version 7.1.0.