August'24: Kamaelia is in maintenance mode and will recieve periodic updates, about twice a year, primarily targeted around Python 3 and ecosystem compatibility. PRs are always welcome. Latest Release: 1.14.32 (2024/3/24)

Kamaelia.Util.FirstOnly

Pass on the first item only

The first item sent to FirstOnly will be passed on. All other items are ignored.

Example Usage

Displaying the frame rate, just once, from video when it is decoded:

Pipeline( ...
          DiracDecoder(),
          FirstOnly(),
          SimpleDetupler("frame_rate"),
          ConsoleEchoer(),
        )

Behaviour

The first data item sent to FirstOnly's "inbox" inbox is immediately sent on out of its "outbox" outbox.

Any subsequent data sent to its "inbox" inbox is discarded.

If a producerFinished or shutdownMicroprocess message is received on the "control" inbox. It is immediately sent on out of the "signal" outbox and the component then immediately terminates.


Kamaelia.Util.FirstOnly.FirstOnly

class FirstOnly(Axon.Component.component)

FirstOnly() -> new FirstOnly component.

Passes on the first item sent to it, and discards everything else.

Inboxes

  • control : Shutdown signalling
  • inbox : Data items

Outboxes

  • outbox : First data item received
  • signal : Shutdown signalling

Methods defined here

Warning!

You should be using the inbox/outbox interface, not these methods (except construction). This documentation is designed as a roadmap as to their functionalilty for maintainers and new component developers.

main(self)

Main loop

Feedback

Got a problem with the documentation? Something unclear that could be clearer? Want to help improve it? Constructive criticism is very welcome - especially if you can suggest a better rewording!

Please leave you feedback here in reply to the documentation thread in the Kamaelia blog.

-- Automatic documentation generator, 05 Jun 2009 at 03:01:38 UTC/GMT