Differences between revisions 26 and 27
Revision 26 as of 2014-04-09 09:02:05
Size: 2256
Revision 27 as of 2014-04-09 09:02:53
Size: 2314
Deletions are marked like this. Additions are marked like this.
Line 54: Line 54:
{{attachment:CPrimitiveControllerColorChangeOnStatus.jpeg|height="20"|width="300"}}}} [[attachment:CPrimitiveControllerColorChangeOnStatus.jpeg|{{attachment:CPrimitiveControllerColorChangeOnStatus.jpeg|height="20"|width="300"}}]]

Design Concepts

1. doxygen generated API reference

The automatically generated class reference can be read at this location. It has been generated with the nice doxygen tool.

2. Object Model

With the tool freemind we have created a diagram showing some of the nrec objects and their relationships:


3. Using Font Primitives

nrec uses a special bitmap file format (.bmf) for fonts. There is a command line tool called ttf2bmf that can be used to convert ttf font files into bmf files. The font size specified defines the file size and the resolution of the font bitmaps and defaults to 12. The program, its source code and some example files are located in the folder run/Fonts.


./ttf2bmf fontfile outputfile [fontsize]


$ ./ttf2bmf LucidaTypewriterRegular.ttf default.bmf 24
./ttf2bmf: Wrote default.bmf, 256 by 256 pixels.
$ ./ttf2bmf LucidaTypewriterRegular.ttf default.bmf 10
./ttf2bmf: Wrote default.bmf, 256 by 64 pixels.
$ ./ttf2bmf LucidaTypewriterRegular.ttf default.bmf 48
./ttf2bmf: Wrote default.bmf, 256 by 1024 pixels.
$ ./ttf2bmf LucidaTypewriterRegular.ttf default.bmf
./ttf2bmf: Wrote default.bmf, 256 by 128 pixels.

4. Understanding the logger mechanism

The Logger is used to transfer messages between different threads running at different priority. Here is an illustration on how it works and an example of a LogReader implementation.

5. FlowCondFixation and all it's actions


6. PrimitiveControllerColorChangeOnStatus and it's timing


nrec: DesignInformation (last edited 2017-05-19 08:53:00 by FriedemannBunjes)