Canorus 0.0
musicxmlexport.h
Go to the documentation of this file.
1
8#ifndef MUSICXMLEXPORT_H_
9#define MUSICXMLEXPORT_H_
10
11#include "export/export.h"
12
13class CAContext;
14class CADocument;
15class CAVoice;
16class CASheet;
17class CAClef;
18class CAKeySignature;
19class CATimeSignature;
20class CANote;
21class CARest;
22
23class CAMusicXmlExport : public CAExport {
24public:
25 CAMusicXmlExport( QTextStream *stream=0 );
26 virtual ~CAMusicXmlExport();
27
28 inline CAVoice *curVoice() { return _curVoice; }
29 inline CASheet *curSheet() { return _curSheet; }
30 inline CADocument *curDocument() { return _curDocument; }
31 inline CAContext *curContext() { return _curContext; }
32 inline int curContextIndex() { return _curContextIndex; }
33
34private:
35 void exportSheetImpl(CASheet *s);
36 void exportStaffImpl( CAStaff*, QDomElement& );
37 void exportMeasure( QList<CAVoice*>&, int*, QDomElement& );
38
39 void exportClef(CAClef*, QDomElement&);
40 void exportTimeSig(CATimeSignature*, QDomElement&);
41 void exportKeySig(CAKeySignature*, QDomElement&);
42 void exportNote(CANote*, QDomElement&);
43 void exportRest(CARest*, QDomElement&);
44
45 inline void setCurVoice(CAVoice *voice) { _curVoice = voice; }
46 inline void setCurSheet(CASheet *sheet) { _curSheet = sheet; }
47 inline void setCurContext(CAContext *context) { _curContext = context; }
48 inline void setCurContextIndex(int c) { _curContextIndex = c; }
49 inline void setCurDocument(CADocument *document) { _curDocument = document; }
50
56
57 QDomDocument *_xmlDoc;
58};
59
60#endif /* MUSICXMLEXPORT_H_ */
Definition: clef.h:18
Line of music elements in the sheet.
Definition: context.h:16
Class which represents the current document.
Definition: document.h:19
Base class for export filters.
Definition: export.h:22
QTextStream * stream()
Definition: file.h:36
Represents a key signature sign in the staff.
Definition: keysignature.h:19
Definition: musicxmlexport.h:23
void setCurContext(CAContext *context)
Definition: musicxmlexport.h:47
void exportMeasure(QList< CAVoice * > &, int *, QDomElement &)
Definition: musicxmlexport.cpp:153
CAVoice * _curVoice
Definition: musicxmlexport.h:51
int _curContextIndex
Definition: musicxmlexport.h:55
void exportRest(CARest *, QDomElement &)
Definition: musicxmlexport.cpp:381
void setCurVoice(CAVoice *voice)
Definition: musicxmlexport.h:45
void setCurDocument(CADocument *document)
Definition: musicxmlexport.h:49
CADocument * _curDocument
Definition: musicxmlexport.h:54
CAMusicXmlExport(QTextStream *stream=0)
Definition: musicxmlexport.cpp:48
void setCurSheet(CASheet *sheet)
Definition: musicxmlexport.h:46
QDomDocument * _xmlDoc
Definition: musicxmlexport.h:57
void exportClef(CAClef *, QDomElement &)
Definition: musicxmlexport.cpp:254
void exportNote(CANote *, QDomElement &)
Definition: musicxmlexport.cpp:321
void exportKeySig(CAKeySignature *, QDomElement &)
Definition: musicxmlexport.cpp:300
CAVoice * curVoice()
Definition: musicxmlexport.h:28
CADocument * curDocument()
Definition: musicxmlexport.h:30
void exportStaffImpl(CAStaff *, QDomElement &)
Definition: musicxmlexport.cpp:118
void exportTimeSig(CATimeSignature *, QDomElement &)
Definition: musicxmlexport.cpp:288
virtual ~CAMusicXmlExport()
Definition: musicxmlexport.cpp:53
int curContextIndex()
Definition: musicxmlexport.h:32
void setCurContextIndex(int c)
Definition: musicxmlexport.h:48
CAContext * curContext()
Definition: musicxmlexport.h:31
void exportSheetImpl(CASheet *s)
Definition: musicxmlexport.cpp:62
CASheet * curSheet()
Definition: musicxmlexport.h:29
CASheet * _curSheet
Definition: musicxmlexport.h:52
CAContext * _curContext
Definition: musicxmlexport.h:53
Represents a note in the score.
Definition: note.h:18
Represents a rest in the score.
Definition: rest.h:15
Represents a single sheet of paper in the document.
Definition: sheet.h:22
Represents a staff in the sheet.
Definition: staff.h:25
Represents a time signature in the staff.
Definition: timesignature.h:18
Class which represents a voice in the staff.
Definition: voice.h:23