Files
dev/script/_Lib/epics/caError.py
2018-04-17 12:05:48 +02:00

462 lines
10 KiB
Python

import sys
if sys.hexversion >= 0x03000000:
intern = sys.intern
from ca import _ca
class caError(_ca.error):
""" EPICS ca.py Errors"""
pass
__caErrorMsg=(
"Normal successful completion",
"Maximum simultaneous IOC connections exceeded",
"Unknown internet host",
"Unknown internet service",
"Unable to allocate a new socket",
"Unable to connect to internet host or service",
"Unable to allocate additional dynamic memory",
"Unknown IO channel",
"Record field specified inappropriate for channel specified",
"The requested data transfer is greater than available memory or EPICS_CA_MAX_ARRAY_BYTES",
"User specified timeout on IO operation expired",
"Sorry, that feature is planned but not supported at this time",
"The supplied string is unusually large",
"The request was ignored because the specified channel is disconnected",
"The data type specifed is invalid",
"Remote Channel not found",
"Unable to locate all user specified channels",
"Channel Access Internal Failure",
"The requested local DB operation failed",
"Channel read request failed",
"Channel write request failed",
"Channel subscription request failed",
"Invalid element count requested",
"Invalid string",
"Virtual circuit disconnect",
"Identical process variable names on multiple servers",
"Request inappropriate within subscription (monitor) update callback",
"Database value get for that channel failed during channel search",
"Unable to initialize without the vxWorks VX_FP_TASK task option set",
"Event queue overflow has prevented first pass event after event add",
"Bad event subscription (monitor) identifier",
"Remote channel has new network address",
"New or resumed network connection",
"Specified task isnt a member of a CA context",
"Attempt to use defunct CA feature failed",
"The supplied string is empty",
"Unable to spawn the CA repeater thread- auto reconnect will fail",
"No channel id match for search reply- search reply ignored",
"Reseting dead connection- will try to reconnect",
"Server (IOC) has fallen behind or is not responding- still waiting",
"No internet interface with broadcast available",
"Invalid event selection mask",
"IO operations have completed",
"IO operations are in progress",
"Invalid synchronous group identifier",
"Put callback timed out",
"Read access denied",
"Write access denied",
"Requested feature is no longer supported",
"Empty PV search address list",
"No reasonable data conversion between client and server types",
"Invalid channel identifier",
"Invalid function pointer",
"Thread is already attached to a client context",
"Not supported by attached service",
"User destroyed channel",
"Invalid channel priority",
"Preemptive callback not enabled - additional threads may not join context",
"Client's protocol revision does not support transfers exceeding 16k bytes",
"Virtual circuit connection sequence aborted",
"Virtual circuit unresponsive",
)
_caErrorMsg=map(intern,__caErrorMsg)
if sys.hexversion >= 0x03000000:
_caErrorMsg = list(_caErrorMsg)
ErrCode2Class={}
class PyCa_NoCallback(caError):
__doc__="Null callback routine"
CA_M_MSG_NO = 0x0000FFF8
CA_M_SEVERITY = 0x00000007
CA_M_LEVEL = 0x00000003
CA_M_SUCCESS = 0x00000001
CA_M_ERROR = 0x00000002
CA_M_SEVERE = 0x00000004
CA_S_MSG_NO= 0x0D
CA_S_SEVERITY=0x03
CA_V_MSG_NO= 0x03
CA_V_SEVERITY= 0x00
CA_V_SUCCESS= 0x00
def CA_EXTRACT_MSG_NO(code): return ( ( (code) & CA_M_MSG_NO ) >> CA_V_MSG_NO )
def CA_EXTRACT_SEVERITY(code): return ( ( (code) & CA_M_SEVERITY ) >> CA_V_SEVERITY)
def CA_EXTRACT_SUCCESS(code): ( ( (code) & CA_M_SUCCESS ) >> CA_V_SUCCESS )
class ECA_NORMAL(caError):
__doc__=_caErrorMsg[0]
__errcode__=1
ErrCode2Class[1]=ECA_NORMAL
class ECA_MAXIOC(caError):
__doc__=_caErrorMsg[1]
__errcode__=10
ErrCode2Class[10]=ECA_MAXIOC
class ECA_UKNHOST(caError):
__doc__=_caErrorMsg[2]
__errcode__=18
ErrCode2Class[18]=ECA_UKNHOST
class ECA_UKNSERV(caError):
__doc__=_caErrorMsg[3]
__errcode__=26
ErrCode2Class[26]=ECA_UKNSERV
class ECA_SOCK(caError):
__doc__=_caErrorMsg[4]
__errcode__=34
ErrCode2Class[34]=ECA_SOCK
class ECA_CONN(caError):
__doc__=_caErrorMsg[5]
__errcode__=40
ErrCode2Class[40]=ECA_CONN
class ECA_ALLOCMEM(caError):
__doc__=_caErrorMsg[6]
__errcode__=48
ErrCode2Class[48]=ECA_ALLOCMEM
class ECA_UKNCHAN(caError):
__doc__=_caErrorMsg[7]
__errcode__=56
ErrCode2Class[56]=ECA_UKNCHAN
class ECA_UKNFIELD(caError):
__doc__=_caErrorMsg[8]
__errcode__=64
ErrCode2Class[64]=ECA_UKNFIELD
class ECA_TOLARGE(caError):
__doc__=_caErrorMsg[9]
__errcode__=72
ErrCode2Class[72]=ECA_TOLARGE
class ECA_TIMEOUT(caError):
__doc__=_caErrorMsg[10]
__errcode__=80
ErrCode2Class[80]=ECA_TIMEOUT
class ECA_NOSUPPORT(caError):
__doc__=_caErrorMsg[11]
__errcode__=88
ErrCode2Class[88]=ECA_NOSUPPORT
class ECA_STRTOBIG(caError):
__doc__=_caErrorMsg[12]
__errcode__=96
ErrCode2Class[96]=ECA_STRTOBIG
class ECA_DISCONNCHID(caError):
__doc__=_caErrorMsg[13]
__errcode__=106
ErrCode2Class[106]=ECA_DISCONNCHID
class ECA_BADTYPE(caError):
__doc__=_caErrorMsg[14]
__errcode__=114
ErrCode2Class[114]=ECA_BADTYPE
class ECA_CHIDNOTFND(caError):
__doc__=_caErrorMsg[15]
__errcode__=123
ErrCode2Class[123]=ECA_CHIDNOTFND
class ECA_CHIDRETRY(caError):
__doc__=_caErrorMsg[16]
__errcode__=131
ErrCode2Class[131]=ECA_CHIDRETRY
class ECA_INTERNAL(caError):
__doc__=_caErrorMsg[17]
__errcode__=142
ErrCode2Class[142]=ECA_INTERNAL
class ECA_DBLCLFAIL(caError):
__doc__=_caErrorMsg[18]
__errcode__=144
ErrCode2Class[144]=ECA_DBLCLFAIL
class ECA_GETFAIL(caError):
__doc__=_caErrorMsg[19]
__errcode__=152
ErrCode2Class[152]=ECA_GETFAIL
class ECA_PUTFAIL(caError):
__doc__=_caErrorMsg[20]
__errcode__=160
ErrCode2Class[160]=ECA_PUTFAIL
class ECA_ADDFAIL(caError):
__doc__=_caErrorMsg[21]
__errcode__=168
ErrCode2Class[168]=ECA_ADDFAIL
class ECA_BADCOUNT(caError):
__doc__=_caErrorMsg[22]
__errcode__=176
ErrCode2Class[176]=ECA_BADCOUNT
class ECA_BADSTR(caError):
__doc__=_caErrorMsg[23]
__errcode__=186
ErrCode2Class[186]=ECA_BADSTR
class ECA_DISCONN(caError):
__doc__=_caErrorMsg[24]
__errcode__=192
ErrCode2Class[192]=ECA_DISCONN
class ECA_DBLCHNL(caError):
__doc__=_caErrorMsg[25]
__errcode__=200
ErrCode2Class[200]=ECA_DBLCHNL
class ECA_EVDISALLOW(caError):
__doc__=_caErrorMsg[26]
__errcode__=210
ErrCode2Class[210]=ECA_EVDISALLOW
class ECA_BUILDGET(caError):
__doc__=_caErrorMsg[27]
__errcode__=216
ErrCode2Class[216]=ECA_BUILDGET
class ECA_NEEDSFP(caError):
__doc__=_caErrorMsg[28]
__errcode__=224
ErrCode2Class[224]=ECA_NEEDSFP
class ECA_OVEVFAIL(caError):
__doc__=_caErrorMsg[29]
__errcode__=232
ErrCode2Class[232]=ECA_OVEVFAIL
class ECA_BADMONID(caError):
__doc__=_caErrorMsg[30]
__errcode__=242
ErrCode2Class[242]=ECA_BADMONID
class ECA_NEWADDR(caError):
__doc__=_caErrorMsg[31]
__errcode__=248
ErrCode2Class[248]=ECA_NEWADDR
class ECA_NEWCONN(caError):
__doc__=_caErrorMsg[32]
__errcode__=259
ErrCode2Class[259]=ECA_NEWCONN
class ECA_NOCACTX(caError):
__doc__=_caErrorMsg[33]
__errcode__=264
ErrCode2Class[264]=ECA_NOCACTX
class ECA_DEFUNCT(caError):
__doc__=_caErrorMsg[34]
__errcode__=278
ErrCode2Class[278]=ECA_DEFUNCT
class ECA_EMPTYSTR(caError):
__doc__=_caErrorMsg[35]
__errcode__=280
ErrCode2Class[280]=ECA_EMPTYSTR
class ECA_NOREPEATER(caError):
__doc__=_caErrorMsg[36]
__errcode__=288
ErrCode2Class[288]=ECA_NOREPEATER
class ECA_NOCHANMSG(caError):
__doc__=_caErrorMsg[37]
__errcode__=296
ErrCode2Class[296]=ECA_NOCHANMSG
class ECA_DLCKREST(caError):
__doc__=_caErrorMsg[38]
__errcode__=304
ErrCode2Class[304]=ECA_DLCKREST
class ECA_SERVBEHIND(caError):
__doc__=_caErrorMsg[39]
__errcode__=312
ErrCode2Class[312]=ECA_SERVBEHIND
class ECA_NOCAST(caError):
__doc__=_caErrorMsg[40]
__errcode__=320
ErrCode2Class[320]=ECA_NOCAST
class ECA_BADMASK(caError):
__doc__=_caErrorMsg[41]
__errcode__=330
ErrCode2Class[330]=ECA_BADMASK
class ECA_IODONE(caError):
__doc__=_caErrorMsg[42]
__errcode__=339
ErrCode2Class[339]=ECA_IODONE
class ECA_IOINPROGRESS(caError):
__doc__=_caErrorMsg[43]
__errcode__=347
ErrCode2Class[347]=ECA_IOINPROGRESS
class ECA_BADSYNCGRP(caError):
__doc__=_caErrorMsg[44]
__errcode__=354
ErrCode2Class[354]=ECA_BADSYNCGRP
class ECA_PUTCBINPROG(caError):
__doc__=_caErrorMsg[45]
__errcode__=362
ErrCode2Class[362]=ECA_PUTCBINPROG
class ECA_NORDACCESS(caError):
__doc__=_caErrorMsg[46]
__errcode__=368
ErrCode2Class[368]=ECA_NORDACCESS
class ECA_NOWTACCESS(caError):
__doc__=_caErrorMsg[47]
__errcode__=376
ErrCode2Class[376]=ECA_NOWTACCESS
class ECA_ANACHRONISM(caError):
__doc__=_caErrorMsg[48]
__errcode__=386
ErrCode2Class[386]=ECA_ANACHRONISM
class ECA_NOSEARCHADDR(caError):
__doc__=_caErrorMsg[49]
__errcode__=392
ErrCode2Class[392]=ECA_NOSEARCHADDR
class ECA_NOCONVERT(caError):
__doc__=_caErrorMsg[50]
__errcode__=400
ErrCode2Class[400]=ECA_NOCONVERT
class ECA_BADCHID(caError):
__doc__=_caErrorMsg[51]
__errcode__=410
ErrCode2Class[410]=ECA_BADCHID
class ECA_BADFUNCPTR(caError):
__doc__=_caErrorMsg[52]
__errcode__=418
ErrCode2Class[418]=ECA_BADFUNCPTR
class ECA_ISATTACHED(caError):
__doc__=_caErrorMsg[53]
__errcode__=424
ErrCode2Class[424]=ECA_ISATTACHED
class ECA_UNAVAILINSERV(caError):
__doc__=_caErrorMsg[54]
__errcode__=432
ErrCode2Class[432]=ECA_UNAVAILINSERV
class ECA_CHANDESTROY(caError):
__doc__=_caErrorMsg[55]
__errcode__=440
ErrCode2Class[440]=ECA_CHANDESTROY
class ECA_BADPRIORITY(caError):
__doc__=_caErrorMsg[56]
__errcode__=450
ErrCode2Class[450]=ECA_BADPRIORITY
class ECA_NOTTHREADED(caError):
__doc__=_caErrorMsg[57]
__errcode__=458
ErrCode2Class[458]=ECA_NOTTHREADED
class ECA_16KARRAYCLIENT(caError):
__doc__=_caErrorMsg[58]
__errcode__=464
ErrCode2Class[464]=ECA_16KARRAYCLIENT
class ECA_CONNSEQTMO(caError):
__doc__=_caErrorMsg[59]
__errcode__=472
ErrCode2Class[472]=ECA_CONNSEQTMO
class ECA_UNRESPTMO(caError):
__doc__=_caErrorMsg[60]
__errcode__=480
ErrCode2Class[480]=ECA_UNRESPTMO