Esempio n. 1
0
def scenario_2():
    """
    Declare system with the inheritance based API
    """
    class MyEvent(Event):

        def on_start(self, context, event):
            print(context, '=>', event)
            print('STARTED')

        def on_cycle_begin(self, context, event):
            print('LOOP STARTED')

        def on_cycle_end(self, context, event):
            print('LOOP FINISHED')
            context.stop()

        def on_stop(self, context, event):
            print('FINISHED')
            context.exit()

        def on_exit(self, context, event):
            print('EXITING')


    context = Context()
    event   = MyEvent(context)

    # Make event active
    event.activate()
    # Start looping
    context.start()
Esempio n. 2
0
def scenario_1():
    """
    Declare events with the decorator based API
    """

    # Create containers
    context = Context()
    event   = Event(context)

    @event
    def on_start(context, event):
        print(context, '=>', event)
        print('STARTED')

    @event
    def on_cycle_begin(context, event):
        print('LOOP STARTED')

    @event
    def on_cycle_end(context, event):
        print('LOOP FINISHED')
        context.stop()

    @event
    def on_stop(context, event):
        print('FINISHED')
        context.exit()

    @event
    def on_exit(context, event):
        print('EXITING')

    # Make event active
    event.activate()
    # Start looping
    context.start()
Esempio n. 3
0
# Key press events when `event2` is active
@four_keys2
def on_key_pressed_1(context, event, sensor):
    print('KEY PRESSED: 1 => TURN LED: OFF')
    led2.off()

@four_keys2
def on_key_pressed_2(context, event, sensor):
    print('KEY PRESSED: 2 => TURN LED: ON')
    led2.on()

@four_keys2
def on_key_pressed_3(context, event, sensor):
    print('KEY PRESSED: 3 => SWITCHING MODE: event1')
    context.switch(event1)


# Key press events either `event1` or `event2` active
@four_keys1
@four_keys2
def on_key_pressed_4(context, event, sensor):
    print('KEY PRESSED: 4 => EXITING...')
    context.exit()


# Start event loop
print('STARTING (from event1)')
context.switch(event1)
context.start()
Esempio n. 4
0
@four_keys2
def on_key_pressed_1(context, event, sensor):
    print('KEY PRESSED: 1 => TURN LED: OFF')
    led2.off()


@four_keys2
def on_key_pressed_2(context, event, sensor):
    print('KEY PRESSED: 2 => TURN LED: ON')
    led2.on()


@four_keys2
def on_key_pressed_3(context, event, sensor):
    print('KEY PRESSED: 3 => SWITCHING MODE: event1')
    context.switch(event1)


# Key press events either `event1` or `event2` active
@four_keys1
@four_keys2
def on_key_pressed_4(context, event, sensor):
    print('KEY PRESSED: 4 => EXITING...')
    context.exit()


# Start event loop
print('STARTING (from event1)')
context.switch(event1)
context.start()