2#include <Process/TimeValue.hpp> 
    4#include <score/plugins/Interface.hpp> 
    5#include <score/plugins/InterfaceList.hpp> 
    7#include <ossia/editor/scenario/time_value.hpp> 
    9#include <score_plugin_engine_export.h> 
   10#include <smallfun.hpp> 
   13struct DocumentContext;
 
   18class BaseScenarioElement;
 
   39using reverse_time_function = smallfun::function<
TimeVal(
const ossia::time_value&)>;
 
   40class SCORE_PLUGIN_ENGINE_EXPORT 
Clock 
   47  std::shared_ptr<BaseScenarioElement> scenario;
 
   53  virtual bool paused() 
const;
 
   56  virtual void play_impl(
const TimeVal& t) = 0;
 
   57  virtual void pause_impl() = 0;
 
   58  virtual void resume_impl() = 0;
 
   59  virtual void stop_impl() = 0;
 
 
   64  SCORE_INTERFACE(
ClockFactory, 
"fb2b3624-ee6f-4e9a-901a-a096bb5fec0a")
 
   68  virtual QString prettyName() 
const = 0;
 
   72  virtual reverse_time_function
 
 
   84Q_DECLARE_METATYPE(Execution::ClockFactory::ConcreteKey)
 
   85W_REGISTER_ARGTYPE(Execution::ClockFactory::ConcreteKey)
 
Definition ClockFactory.hpp:63
 
Definition ClockFactory.hpp:78
 
Definition ClockFactory.hpp:41
 
Base class for plug-in interfaces.
Definition Interface.hpp:52
 
InterfaceList Default implementation of InterfaceListBase.
Definition InterfaceList.hpp:97
 
Components used for the execution of a score.
Definition ProcessComponent.cpp:14
 
smallfun::function< ossia::time_value(const TimeVal &)> time_function
Sets-up and manages the main execution clock.
Definition ExecutionContext.hpp:66
 
Base toolkit upon which the software is built.
Definition Application.cpp:97
 
Definition ExecutionContext.hpp:76
 
Definition TimeValue.hpp:21
 
Definition DocumentContext.hpp:18