Objects organisation

Author : Clément Soulard

Last Modification Date : May 31, 2004

First I try to make a map and organize the various concepts that interacts in the program. With this grouping, we can have a more clear point of view on the organisation of the sofware. We distinguish the following modules :

Kernel, Core or MC :
Is stored in the kernel directory, it contain the description of all the musical concepts. I call this core because it is the point where every transformation should pass. For instance, transforming an XML file to a Music Sheet, you have to go through a musical concepts before trying to give a representation on a music sheet.

MS :
The musical symbol are the langage used to describe a music sheet. Every symbol that you draw on a music sheet should be a composition of one or several Music Symbols.

Data Flows :
There are as many data flows as there are format of storage. The main flow is the XML and it is in the directory called marker (That stands for the marker in MusicXML file)

Prototypers :
The prototypers module is a sophisticated module that arrange the Music Symbol according to the Kernel representaion of the datas.

Painters :
The painters are a set of object that impress on the screen or on a printer.

As much as possible we try to keep the connections beetween those classes as thin as possible.

Though music can have many support like MIDI, Sheet Music ,musicXML file format... There is a common kernel to all of these representation. That is what we call the kernel. The kernel is something that every representation should take its being.

For saving the Data of our music sheet we will use the musicXML format.

It has numerous advantages

Technical Materials