platypush/platypush/message/event/camera.py

62 lines
1.6 KiB
Python

from platypush.message.event import Event
class CameraEvent(Event):
""" Base class for camera events """
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
class CameraRecordingStartedEvent(CameraEvent):
"""
Event triggered when a new recording starts
"""
def __init__(self, device, filename=None, *args, **kwargs):
super().__init__(*args, device=device, filename=filename, **kwargs)
class CameraRecordingStoppedEvent(CameraEvent):
"""
Event triggered when a recording stops
"""
def __init__(self, device, *args, **kwargs):
super().__init__(*args, device=device, **kwargs)
class CameraVideoRenderedEvent(CameraEvent):
"""
Event triggered when a sequence of frames has been rendered into a video
"""
def __init__(self, filename=None, *args, **kwargs):
super().__init__(*args, filename=filename, **kwargs)
class CameraPictureTakenEvent(CameraEvent):
"""
Event triggered when a snapshot has been taken
"""
def __init__(self, filename=None, *args, **kwargs):
super().__init__(*args, filename=filename, **kwargs)
class CameraFrameCapturedEvent(CameraEvent):
"""
Event triggered when a camera frame has been captured
"""
disable_logging = True
def __init__(self, filename=None, *args, **kwargs):
super().__init__(*args, filename=filename,
disable_logging=kwargs.pop('disable_logging')
if 'disable_logging' in kwargs else self.disable_logging,
**kwargs)
# vim:sw=4:ts=4:et: