3#include <cgv/base/base.h>
4#include <cgv/base/register.h>
5#include <cgv/signal/signal.h>
7#include <cgv/gui/lib_begin.h>
36 signal::signal<double,double>
shoot;
45 virtual bool is_scheduled(
const trigger*) = 0;
46 virtual bool schedule_one_shot(
trigger*,
double delay) = 0;
47 virtual bool schedule_recuring(
trigger*,
double delay) = 0;
48 virtual bool stop(
trigger*) = 0;
49 virtual double get_current_time()
const = 0;
67#include <cgv/config/lib_end.h>
base class for all classes that can be registered with support for dynamic properties (see also secti...
reference counted pointer, which can work together with types that are derived from ref_counted,...
a trigger provides callbacks after a programmable time delay
bool schedule_one_shot(double delay)
schedule a trigger event in delay seconds, return whether this was successful
signal::signal< double, double > shoot
the shoot signal is called when the trigger is pulled and takes the current time and delay as argumen...
bool is_scheduled() const
return whether a trigger is scheduled
void stop()
stop a recuring trigger
bool is_recuring() const
return whether this is a recuring trigger
static double get_current_time()
return the current time
double get_delay() const
return the delay used for scheduling the last time
trigger()
default construction
bool schedule_recuring(double delay)
start a recuring trigger with the given delay in seconds, return whether this was successful
namespace that holds the abstract gui interface
data::ref_ptr< trigger_server > trigger_server_ptr
ref counted pointer to trigger server
trigger_server_ptr get_trigger_server()
returns the currently registered trigger server
void register_trigger_server(trigger_server_ptr _ts)
registeres a new trigger server, call this in the on_register method of the server implementation
trigger & get_animation_trigger()
return the global trigger used for animation, which runs by default with 60 Hz
this header is dependency free
interfaces that add provides very basic functionality.