/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Copyright (C) 2019, Google Inc. * * event_loop.h - cam - Event loop */ #ifndef __CAM_EVENT_LOOP_H__ #define __CAM_EVENT_LOOP_H__ #include <atomic> #include <libcamera/event_notifier.h> namespace libcamera { class EventDispatcher; } class EventLoop { public: EventLoop(libcamera::EventDispatcher *dispatcher); ~EventLoop(); int exec(); void exit(int code = 0); private: libcamera::EventDispatcher *dispatcher_; std::atomic<bool> exit_; int exitCode_; }; #endif /* __CAM_EVENT_LOOP_H__ */ ef='/'><img src='/logo.png' alt='cgit logo'/></a></td> <td class='main'><a href='/'>index</a> : <a title='libcamera/vivid.git' href='/libcamera/vivid.git/'>libcamera/vivid.git</a></td><td class='form'><form method='get'> <input type='hidden' name='id' value='22b61a4f3054089090f62cb8acaa6b96aae79903'/><select name='h' onchange='this.form.submit();'> <option value='pobrn/rebase'>pobrn/rebase</option> <option value='vivid'>vivid</option> </select> <input type='submit' value='switch'/></form></td></tr> <tr><td class='sub'>libcamera pipeline handler for VIVID</td><td class='sub right'>git repository hosting on libcamera.org</td></tr></table> <table class='tabs'><tr><td> <a href='/libcamera/vivid.git/?h=v0.0.1'>summary</a><a href='/libcamera/vivid.git/refs/?h=v0.0.1&id=22b61a4f3054089090f62cb8acaa6b96aae79903'>refs</a><a href='/libcamera/vivid.git/log/src/qcam/assets/feathericons/shopping-bag.svg?h=v0.0.1'>log</a><a class='active' href='/libcamera/vivid.git/tree/src/qcam/assets/feathericons/shopping-bag.svg?h=v0.0.1&id=22b61a4f3054089090f62cb8acaa6b96aae79903'>tree</a><a href='/libcamera/vivid.git/commit/src/qcam/assets/feathericons/shopping-bag.svg?h=v0.0.1&id=22b61a4f3054089090f62cb8acaa6b96aae79903'>commit</a><a href='/libcamera/vivid.git/diff/src/qcam/assets/feathericons/shopping-bag.svg?h=v0.0.1&id=22b61a4f3054089090f62cb8acaa6b96aae79903'>diff</a></td><td class='form'><form class='right' method='get' action='/libcamera/vivid.git/log/src/qcam/assets/feathericons/shopping-bag.svg'> <input type='hidden' name='h' value='v0.0.1'/><input type='hidden' name='id' value='22b61a4f3054089090f62cb8acaa6b96aae79903'/><select name='qt'> <option value='grep'>log msg</option> <option value='author'>author</option> <option value='committer'>committer</option> <option value='range'>range</option> </select> <input class='txt' type='search' size='10' name='q' value=''/> <input type='submit' value='search'/> </form> </td></tr></table> <div class='path'>path: <a href='/libcamera/vivid.git/tree/?h=v0.0.1&id=22b61a4f3054089090f62cb8acaa6b96aae79903'>root</a>/<a href='/libcamera/vivid.git/tree/src?h=v0.0.1&id=22b61a4f3054089090f62cb8acaa6b96aae79903'>src</a>/<a href='/libcamera/vivid.git/tree/src/qcam?h=v0.0.1&id=22b61a4f3054089090f62cb8acaa6b96aae79903'>qcam</a>/<a href='/libcamera/vivid.git/tree/src/qcam/assets?h=v0.0.1&id=22b61a4f3054089090f62cb8acaa6b96aae79903'>assets</a>/<a href='/libcamera/vivid.git/tree/src/qcam/assets/feathericons?h=v0.0.1&id=22b61a4f3054089090f62cb8acaa6b96aae79903'>feathericons</a>/<a href='/libcamera/vivid.git/tree/src/qcam/assets/feathericons/shopping-bag.svg?h=v0.0.1&id=22b61a4f3054089090f62cb8acaa6b96aae79903'>shopping-bag.svg</a></div><div class='content'>blob: eaa39e815d9c4e519859523b0f010e7150b0a92b (<a href='/libcamera/vivid.git/plain/src/qcam/assets/feathericons/shopping-bag.svg?h=v0.0.1&id=22b61a4f3054089090f62cb8acaa6b96aae79903'>plain</a>) <table summary='blob content' class='blob'> <tr><td class='linenumbers'><pre><a id='n1' href='#n1'>1</a> </pre></td> <td class='lines'><pre><code>