Skip to content

Class definition

Device

Bases: PviObject

class representing a device

Typical usage example:

line = Line( pviConnection.root, 'LNANSL', CD='LNANSL')
device = Device( line, 'TCP', CD='/IF=TcpIp' )
cpu = Cpu( device, 'myArsim', CD='/IP=127.0.0.1' )
Source code in pvi\pvi_objects\Device.py
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
class Device(PviObject):
    '''class representing a device

        Typical usage example:
        ```
        line = Line( pviConnection.root, 'LNANSL', CD='LNANSL')
        device = Device( line, 'TCP', CD='/IF=TcpIp' )
        cpu = Cpu( device, 'myArsim', CD='/IP=127.0.0.1' )
        ```    
    '''
    def __init__( self, parent : PviObject, name : str, **objectDescriptor: Union[str,int, float]):
        '''
        Args:
            parent : line object  
            name : the device's name in PVI hierarchy, e.g. 'TCP'  
            objectDescriptor :  see PVI documentation for details
                ANSL : CD='/IF=TcpIp'
                INA2000 : e.g. CD='/IF=com1' or CD='/IF='tcpip /SA=113' or CD='inacan1'
                SNMP : CD='/IF=snmp' 
        '''
        if parent.type != T_POBJ_TYPE.POBJ_LINE:
            raise PviError(12009)            
        super().__init__( parent, T_POBJ_TYPE.POBJ_DEVICE, name, **objectDescriptor)


    def __repr__(self):
        return f"Device( name={self._name}, linkID={self._linkID} )"

descriptor: dict property

errorChanged: Union[Callable[[PviObject, int], None], Callable[[int], None]] property writable

name: str property

objectName: str property

status: dict property writable

type: T_POBJ_TYPE property

__init__(parent, name, **objectDescriptor)

Parameters:

Name Type Description Default
parent

line object

required
name

the device's name in PVI hierarchy, e.g. 'TCP'

required
objectDescriptor

see PVI documentation for details ANSL : CD='/IF=TcpIp' INA2000 : e.g. CD='/IF=com1' or CD='/IF='tcpip /SA=113' or CD='inacan1' SNMP : CD='/IF=snmp'

{}
Source code in pvi\pvi_objects\Device.py
39
40
41
42
43
44
45
46
47
48
49
50
51
def __init__( self, parent : PviObject, name : str, **objectDescriptor: Union[str,int, float]):
    '''
    Args:
        parent : line object  
        name : the device's name in PVI hierarchy, e.g. 'TCP'  
        objectDescriptor :  see PVI documentation for details
            ANSL : CD='/IF=TcpIp'
            INA2000 : e.g. CD='/IF=com1' or CD='/IF='tcpip /SA=113' or CD='inacan1'
            SNMP : CD='/IF=snmp' 
    '''
    if parent.type != T_POBJ_TYPE.POBJ_LINE:
        raise PviError(12009)            
    super().__init__( parent, T_POBJ_TYPE.POBJ_DEVICE, name, **objectDescriptor)

kill()

Source code in pvi\pvi_objects\Object.py
262
263
264
265
266
267
268
269
def kill(self) -> None:
    if self._linkID != 0 and self._connection is not None:  
        self._connection._linkIDs.pop(self._linkID)
        self._connection._pviObjects.remove(self)
        self._result = PviXUnlink(self._hPvi, self._linkID)
        self._linkID = 0
        if self._result != 0 and self._result != 12045:
            raise PviError(self._result, self)