File: example_ent.py

package info (click to toggle)
openhpi 3.8.0-2.3
  • links: PTS
  • area: main
  • in suites: sid, trixie
  • size: 31,888 kB
  • sloc: ansic: 225,326; cpp: 63,687; java: 16,472; cs: 15,161; python: 11,884; sh: 11,508; makefile: 4,945; perl: 1,529; xml: 36; asm: 13
file content (57 lines) | stat: -rwxr-xr-x 1,749 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
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
56
57

#      -*- python -*-
#
# Copyright (C) 2012, Pigeon Point Systems
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  This
# file and program are licensed under a BSD style license.  See
# the Copying file included with the OpenHPI distribution for
# full licensing terms.
#
# Author(s):
#      Anton Pak <anton.pak@pigeonpoint.com>
#


import sys
from openhpi_baselib import *

if len( sys.argv ) != 2:
    print "Usage: %s <entity_path>" % sys.argv[0]
    exit()

try:
    parent = HpiUtil.toSaHpiEntityPathT( sys.argv[1] )
except ValueError:
    print "Invalid entity path: %s" % sys.argv[1]
    exit()

( rv, sid ) = saHpiSessionOpen( SAHPI_UNSPECIFIED_DOMAIN_ID, None )
if rv != SA_OK:
    print "ERROR: saHpiSessionOpen: %s " % HpiUtil.fromSaErrorT( rv )
    exit()

print "Entity %s" % HpiUtil.fromSaHpiEntityPathT( parent )

for child in HpiIterators.ChildEntities( sid, parent ):
    print " Child Entity %s" % HpiUtil.fromSaHpiEntityPathT( child )

for rid in HpiIterators.EntityResourceIds( sid, parent ):
    print " Resource %d" % rid

for rdrtype in [ SAHPI_CTRL_RDR,
                 SAHPI_SENSOR_RDR,
                 SAHPI_INVENTORY_RDR,
                 SAHPI_WATCHDOG_RDR,
                 SAHPI_ANNUNCIATOR_RDR,
                 SAHPI_DIMI_RDR,
                 SAHPI_FUMI_RDR ]:
    for ( rid, instrid ) in HpiIterators.EntityInstrumentIds( sid, parent, rdrtype ):
        print " Resource %d Instrument %d (%s)" % ( rid, instrid, HpiUtil.fromSaHpiRdrTypeT( rdrtype ) )

rv = saHpiSessionClose( sid )
if rv != SA_OK:
    print "ERROR: saHpiSessionClose: %s " % HpiUtil.fromSaErrorT( rv )