1import logging; logger = logging.getLogger("morse." + __name__) 2from morse.core.services import service, async_service, interruptible 3from morse.core.overlay import MorseOverlay 4from morse.core import status 5from morse.middleware.pocolibs_datastream import DummyPoster 6 7class ViamModule(MorseOverlay): 8 def __init__(self, overlaid_object): 9 # Call the constructor of the parent class 10 MorseOverlay.__init__(self, overlaid_object) 11 self._cntrl = DummyPoster("viamCntrl") 12 13 def Acquire_cb(self, answer): 14 status, res = answer 15 return status, [ self._bench, self._n] 16 17 @service 18 def Init(self, *args): 19 pass 20 21 @service 22 def Configure(self, *args): 23 pass 24 25 @service 26 def Reset(self, *args): 27 pass 28 29 @service 30 def DriverLoad(self, *args): 31 pass 32 33 @service 34 def BusPrint(self, *args): 35 pass 36 37 @service 38 def BankCreate(self, *args): 39 pass 40 41 @service 42 def CameraCreate(self, *args): 43 pass 44 45 @service 46 def BankAddCamera(self, *args): 47 pass 48 49 @service 50 def PushFormatFilter(self, *args): 51 pass 52 53 @service 54 def UpdateFormatFilter(self, *args): 55 pass 56 57 @service 58 def PushGeoFilter(self, *args): 59 pass 60 61 @service 62 def UpdateGeoFilter(self, *args): 63 pass 64 65 @service 66 def PushLumFilter(self, *args): 67 pass 68 69 @service 70 def UpdateLumFilter(self, *args): 71 pass 72 73 @service 74 def PushColorFilter(self, *args): 75 pass 76 77 @service 78 def UpdateColorFilter(self, *args): 79 pass 80 81 @service 82 def PushImProcFilter(self, *args): 83 pass 84 85 @service 86 def UpdateImProcFilter(self, *args): 87 pass 88 89 @service 90 def PushMiscFilter(self, *args): 91 pass 92 93 @service 94 def UpdateMiscFilter(self, *args): 95 pass 96 97 @service 98 def FilterList(self, *args): 99 pass 100 101 @service 102 def FilterGetCap(self, *args): 103 pass 104 105 @service 106 def CameraListHWModes(self, *args): 107 pass 108 109 @service 110 def CameraSetHWMode(self, *args): 111 pass 112 113 @service 114 def Display(self, *args): 115 pass 116 117 @service 118 def Calibrate(self, *args): 119 pass 120 121 @service 122 def CalibrationIO(self, *args): 123 pass 124 125 @service 126 def Save(self, *args): 127 pass 128 129 130 @interruptible 131 @async_service 132 def Acquire(self, bench, n): 133 n = int(n) 134 self._n = n 135 self._bench = bench 136 if n == 0: 137 n = -1 138 self.overlaid_object.capture(self.chain_callback(self.Acquire_cb), n) 139 140 @async_service 141 def Stop(self, bench): 142 self.completed(status.SUCCESS) 143 144 def name(self): 145 return "viam" 146 147