Table Of Contents
XStick(TM) File Format
XStick(TM) uses a plain ASCII file format, with the default extension of
".stk". This is probably not the most efficient storage method, but the
files are not that big, and it make cross-platform use easier.
The beginning of the file summarizes a number of state variables of the
saved XStick(TM) session. The first line has a standardized identifying
line with the date the file was created. The next line lists the version of
XStick(TM). The next line identifies the
platform the file was created on, allowing the program to fine tune things
when moving from one platform to another.
The next 8 lines describe the state of the "virtual fretboard" when the
file was created: the tuning, "cheat" dots, key, chord/scale, what notes
were activated, the display mode, and the "TapToStaff" mode (not
functional). A sample of these lines is displayed below:
The next 12 lines describe the status of the notation canvas: the key,
the highlight color, the staff titles, the time signature, the number of
staffs, the current note, rest, and bar numbers, the current index of the
free text, and the canvas scroll
range. Again an example is illustrated below:
From here things get real ugly, but it contains all the information
necessary to re-create the notation on screen as it was when the file was
saved. The notation staff is composed of drawing primitives such as lines
and arcs, with text, using both the XStick(TM) font and Helvetica. Here's
a small sample:
I could have done it in a more compact form
to save space, but this format does lend it self to pretty fast reading and
writing. Heck, I'm still nowhere near the size of some of the "large
software company in Redmond, WA" stuff! If you are mailing files
etc., pkzip et.al. will pack these files down tremendously:
omnibook:~/XStick/files$ zip xstick xstick.stk
adding: xstick.stk
(deflated 88%)
omnibook:~/XStick/files$ ls -l
total 34
-rw-r--r-- 1 stew users 29321 Jun 5 08:07 xstick.stk
-rw-r--r-- 1 stew users 3611 Jun 17 15:08 xstick.zip
<<
Previous Next >>