OSSIA
Open Scenario System for Interactive Application
Loading...
Searching...
No Matches
expression_pulse.hpp
Go to the documentation of this file.
1#pragma once
2#include <ossia/detail/config.hpp>
3
5#include <ossia/network/base/node.hpp>
6#include <ossia/network/base/parameter.hpp>
7#include <ossia/network/value/value.hpp>
8
9#include <memory>
10
14namespace ossia
15{
16class destination;
17
18namespace expressions
19{
24class OSSIA_EXPORT expression_pulse final : public expression_callback_container
25{
26public:
27 expression_pulse(const destination& destination);
28 expression_pulse(expression_pulse&& other) = delete;
29 expression_pulse& operator=(expression_pulse&& other) = delete;
30 expression_pulse(const expression_pulse& other) = delete;
31 expression_pulse& operator=(const expression_pulse& other) = delete;
32
33 virtual ~expression_pulse();
34
39 bool evaluate() const;
40
42 void update() const;
43
44 void reset();
45
46 const destination& get_destination() const;
47
48private:
49 void on_first_callback_added() override;
50 void on_removing_last_callback() override;
51
52 void destination_callback(const value& value);
53
54 destination m_destination;
55
56 net::parameter_base::callback_index m_callback;
57 mutable bool m_result{};
58};
59}
60}
expression_pulse : becomes true when a message happens
Definition expression_pulse.hpp:25
The value class.
Definition value.hpp:173
Definition git_info.h:7