34 lines
781 B
Python
34 lines
781 B
Python
|
|
||
|
|
||
|
class CameraCommander:
|
||
|
class InvalidStateException(Exception):
|
||
|
pass
|
||
|
|
||
|
|
||
|
Cameras = []
|
||
|
|
||
|
|
||
|
def Register(context, camera):
|
||
|
for c in CameraCommander.Cameras:
|
||
|
if c.camera.id == camera.id:
|
||
|
print("[CameraCommander] : Camera ({}) already registered".format(camera.id))
|
||
|
raise CameraCommander.InvalidStateException()
|
||
|
CameraCommander.Cameras.append(context)
|
||
|
print("[CameraCommander] : Camera ({}) registered".format(camera.id))
|
||
|
|
||
|
|
||
|
def GetContext(camera):
|
||
|
for c in CameraCommander.Cameras:
|
||
|
if c.camera.id == camera.id:
|
||
|
return c
|
||
|
return None
|
||
|
|
||
|
|
||
|
def IsRegistered(context):
|
||
|
return context in CameraCommander.Cameras
|
||
|
|
||
|
|
||
|
def Remove(context):
|
||
|
CameraCommander.Cameras.remove(context)
|
||
|
print("[CameraCommander] : Camera ({}) unregistered".format(context.camera.id))
|