Ingen  0.5.1
Public Member Functions | List of all members
Ingen::Server::Events::Undo Class Reference

A request to undo the last change to the engine. More...

#include <Undo.hpp>

+ Inheritance diagram for Ingen::Server::Events::Undo:
+ Collaboration diagram for Ingen::Server::Events::Undo:

Public Member Functions

 Undo (Engine &engine, SPtr< Interface > client, int32_t id, SampleCount timestamp, bool is_redo)
 
bool pre_process (PreProcessContext &ctx)
 Pre-process event before execution (non-realtime). More...
 
void execute (RunContext &context)
 Execute this event in the audio thread (realtime). More...
 
void post_process ()
 Post-process event after execution (non-realtime). More...
 
- Public Member Functions inherited from Ingen::Server::Event
virtual void undo (Interface &target)
 Write the inverse of this event to sink. More...
 
bool is_prepared () const
 Return true iff this event has been pre-processed. More...
 
SampleCount time () const
 Return the time stamp of this event. More...
 
void set_time (SampleCount time)
 Set the time stamp of this event. More...
 
Eventnext () const
 Get the next event to be processed after this one. More...
 
void next (Event *ev)
 Set the next event to be processed after this one. More...
 
Status status () const
 Return the status (success or error code) of this event. More...
 
virtual Execution get_execution () const
 Return the blocking behaviour of this event (after pre_process())
 
Mode get_mode () const
 Return undo mode of this event. More...
 
void set_mode (Mode mode)
 Set the undo mode of this event. More...
 
Engineengine ()
 

Additional Inherited Members

- Public Types inherited from Ingen::Server::Event
enum  Mode {
  NORMAL,
  UNDO,
  REDO
}
 Event mode to distinguish normal events from undo events. More...
 
enum  Execution {
  NORMAL,
  BLOCK,
  UNBLOCK
}
 Execution mode for events that block and unblock preprocessing. More...
 
- Protected Member Functions inherited from Ingen::Server::Event
 Event (Engine &engine, SPtr< Interface > client, int32_t id, FrameTime time)
 
 Event (Engine &engine)
 Constructor for internal events only.
 
bool pre_process_done (Status st)
 
bool pre_process_done (Status st, const Raul::URI &subject)
 
bool pre_process_done (Status st, const Raul::Path &subject)
 
Status respond ()
 Respond to the originating client. More...
 
- Protected Attributes inherited from Ingen::Server::Event
Engine_engine
 
std::atomic< Event * > _next
 
SPtr< Interface_request_client
 
int32_t _request_id
 
FrameTime _time
 
Status _status
 
std::string _err_subject
 
Mode _mode
 

Detailed Description

A request to undo the last change to the engine.

Member Function Documentation

§ pre_process()

bool Ingen::Server::Events::Undo::pre_process ( PreProcessContext ctx)
virtual

Pre-process event before execution (non-realtime).

Implements Ingen::Server::Event.

§ execute()

void Ingen::Server::Events::Undo::execute ( RunContext context)
virtual

Execute this event in the audio thread (realtime).

Implements Ingen::Server::Event.

§ post_process()

void Ingen::Server::Events::Undo::post_process ( )
virtual

Post-process event after execution (non-realtime).

Implements Ingen::Server::Event.


The documentation for this class was generated from the following files: