Canorus 0.0
transpose.h
Go to the documentation of this file.
1
8#ifndef TRANSPOSE_H_
9#define TRANSPOSE_H_
10
11#include <QList>
12#include <QSet>
13
14#include "score/interval.h"
15#include "score/diatonickey.h"
16
17class CAMusElement;
18class CASheet;
19class CAContext;
20
22public:
24 CATranspose( CASheet *sheet );
25#ifndef SWIG
26 CATranspose( QList<CAContext*> contexts );
27#endif
28 CATranspose( QList<CAMusElement*> selection );
30
31 void transposeBySemitones( int semitones );
33 void transposeByKeySig( CADiatonicKey from, CADiatonicKey to, int direction );
34 void reinterpretAccidentals( int type );
35
36 void addSheet( CASheet *s );
37 void addContext( CAContext *context );
38 void addMusElement( CAMusElement *musElt) { _elements << musElt; }
39
40private:
41 QSet<CAMusElement*> _elements;
42};
43
44#endif /* TRANSPOSE_H_ */
Line of music elements in the sheet.
Definition: context.h:16
Musical key.
Definition: diatonickey.h:15
Music interval expressed with diatonical quality and quantity.
Definition: interval.h:15
An abstract class which represents every music element in the score.
Definition: muselement.h:21
Represents a single sheet of paper in the document.
Definition: sheet.h:22
Class used for transposing a set of notes for the given interval.
Definition: transpose.h:21
void transposeByInterval(CAInterval)
Definition: transpose.cpp:118
void addContext(CAContext *context)
Definition: transpose.cpp:66
CATranspose()
Definition: transpose.cpp:37
QSet< CAMusElement * > _elements
Definition: transpose.h:41
~CATranspose()
Definition: transpose.cpp:56
void addSheet(CASheet *s)
Definition: transpose.cpp:60
void transposeBySemitones(int semitones)
Definition: transpose.cpp:92
void addMusElement(CAMusElement *musElt)
Definition: transpose.h:38
void reinterpretAccidentals(int type)
Definition: transpose.cpp:157
void transposeByKeySig(CADiatonicKey from, CADiatonicKey to, int direction)
Definition: transpose.cpp:100