GUIDOLib  1.7.7
Guido Engine Internal Documentation
GRRest.h
1 #ifndef GRRest_H
2 #define GRRest_H
3 
4 /*
5  GUIDO Library
6  Copyright (C) 2002 Holger Hoos, Juergen Kilian, Kai Renz
7  Copyright (C) 2002-2017 Grame
8 
9  This Source Code Form is subject to the terms of the Mozilla Public
10  License, v. 2.0. If a copy of the MPL was not distributed with this
11  file, You can obtain one at http://mozilla.org/MPL/2.0/.
12 
13  Grame Research Laboratory, 11, cours de Verdun Gensoul 69002 Lyon - France
14  research@grame.fr
15 
16 */
17 
18 #include "GREvent.h"
19 
20 class ARRest;
21 class ARMMRest;
22 class ARRestFormat;
23 
24 
27 class GRRest : public GREvent
28 {
29  public:
30  GRRest( GRStaff * grstf, const TYPE_DURATION & duration );
31  GRRest( GRStaff * grstf, const ARRest * ar, bool p_ownsAR = false );
32  GRRest( GRStaff * grstf, const ARRest * ar, const TYPE_TIMEPOSITION & timepos, const TYPE_DURATION & duration );
33 
34  virtual ~GRRest() {}
35 
36  virtual void setRestFormat( const ARRestFormat *restfrmt) {}
37  virtual int getWholeMeasure() const { return mWholeMeasure; }
38  virtual void setWholeMeasure(int p) { mWholeMeasure = p; }
39  virtual void setMMRest(const ARMMRest* mrest) { fMMRest = mrest; }
40 
41  virtual void OnDraw( VGDevice & hdc ) const = 0;
42 
43  virtual const GRRest * isRest() const { return this; }
44 
45  const ARRest * getARRest() const;
46  const ARMMRest * getARMMRest() const { return fMMRest; }
47 
48  private:
49  int mWholeMeasure;
50  const ARMMRest * fMMRest = 0;
51 };
52 
53 #endif
54 
55 
GRRest::getARMMRest
const ARMMRest * getARMMRest() const
Definition: GRRest.h:46
GRRest::isRest
virtual const GRRest * isRest() const
Definition: GRRest.h:43
ARRestFormat
not yet documented
Definition: ARRestFormat.h:42
ARRest
Abstract representation of the rest event.
Definition: ARRest.h:22
duration
GuidoDate duration(CGRHandler inHandleGR)
Returns the music duration of a score.
GRRest::setMMRest
virtual void setMMRest(const ARMMRest *mrest)
Definition: GRRest.h:39
Fraction
Numerator and denominator.
Definition: Fraction.h:23
GREvent
Graphical representation for an event (= has duration).
Definition: GREvent.h:61
GRRest::setRestFormat
virtual void setRestFormat(const ARRestFormat *restfrmt)
Definition: GRRest.h:36
GRStaff
A GRStaff represents a single line of music.
Definition: GRStaff.h:181
VGDevice
Generic platform independant drawing device.
Definition: VGDevice.h:68
GRRest::~GRRest
virtual ~GRRest()
Definition: GRRest.h:34
GRRest
The Rest event.
Definition: GRRest.h:27
GRRest::getWholeMeasure
virtual int getWholeMeasure() const
Definition: GRRest.h:37
GRRest::GRRest
GRRest(GRStaff *grstf, const TYPE_DURATION &duration)
ARMMRest
intended to multiple measures rests
Definition: ARMMRest.h:48
GRRest::setWholeMeasure
virtual void setWholeMeasure(int p)
Definition: GRRest.h:38
GRRest::getARRest
const ARRest * getARRest() const
GRRest::OnDraw
virtual void OnDraw(VGDevice &hdc) const =0

Guido Project Copyright © 2019 Grame-CNCM