Ardour  9.2-541-gc1841a13dd
ghost_event.h
Go to the documentation of this file.
1 #ifndef __gtk2_ardour_ghost_event_h__
2 #define __gtk2_ardour_ghost_event_h__
3 
4 #include <memory>
5 #include <unordered_map>
6 #include <sigc++/trackable.h>
7 
8 #include "evoral/Note.h"
9 #include "temporal/beats.h"
10 
11 namespace ArdourCanvas {
12  class Container;
13  class Item;
14  class Lollipop;
15 }
16 
17 class NoteBase;
18 
19 
20 class GhostEvent : public sigc::trackable
21 {
22  public:
25  virtual ~GhostEvent ();
26 
27  void set_sensitive (bool yn);
28 
31  bool is_hit;
33 
34  /* must match typedef in NoteBase */
36  typedef std::unordered_map<std::shared_ptr<NoteType>, GhostEvent* > EventList;
37 
38  static GhostEvent* find (std::shared_ptr<NoteType> parent, EventList& events, EventList::iterator& opti);
39 };
40 
41 
42 #endif /* __gtk2_ardour_ghost_event_h__ */
bool is_hit
Definition: ghost_event.h:31
NoteBase * event
Definition: ghost_event.h:29
Evoral::Note< Temporal::Beats > NoteType
Definition: ghost_event.h:35
int velocity_while_editing
Definition: ghost_event.h:32
void set_sensitive(bool yn)
static GhostEvent * find(std::shared_ptr< NoteType > parent, EventList &events, EventList::iterator &opti)
GhostEvent(::NoteBase *, ArdourCanvas::Lollipop *lolli)
ArdourCanvas::Item * item
Definition: ghost_event.h:30
virtual ~GhostEvent()
GhostEvent(::NoteBase *, ArdourCanvas::Item *parent)
std::unordered_map< std::shared_ptr< NoteType >, GhostEvent * > EventList
Definition: ghost_event.h:36