Kurzdokumentation zu irshow.cc
------------------------------
irshow.cc       Hauptprogramm
irlesen.cc      Einleseprogramm (urspruengliches Format vom Perkin-Elmer)
irlesen_spc.cc  Unterstuetzung des SPC-Formats (vom Biorad FTS Spektrometer)
irlesen_abs.cc  ABS-Format (von WinFirst vom Mattson 5000 FTIR Spektrometer)
spctest.cc      Eigenstaendiges Programm um SPC-Dateien zu testen
abstest.cc      Eigenstaendiges Programm um ABS-Dateien zu testen
psan.cc         Hilfsprogramm um im PostScript-Bild Peaks anzuschreiben

Aktuelles Format IRTRANS2
-------------------------
8 Bytes  Kennung "IRTRANS2"
40 Bytes Name der Substanz und/oder Kommentar
10 WORDs (=20 Bytes) struct kopf_2:
         UWORD startH,startL,endeH,endeL,deltaH,deltaL,amodeH,amodeL;
         WORD npkt,nmulti;
n WORDs  gepackte Daten (n ist npkt auf durch 10 teilbaren Wert aufgerundet)

Neues Format IRABSOR3 (noch nicht fertig implementiert)
---------------------
8 Bytes  Kennung "IRABSOR3"
x Bytes  Name der Substanz und/oder Kommentar mit 0-Byte abgeschlossen
         (entspricht snam in struct kopf_3)
1 LONG   Testzahl 0x01020304 um die Bytereihenfolge klarzustellen
6 floats Testzahlen um das float-Format klarzustellen: 100 1 0.01 0 -0.01 -100
4 floats (=16 Bytes) aus struct kopf_3:
         float start,ende,delta,amode;
3 LONGs  (=12 Bytes) aus struct kopf_3:
	 LONG npkt,nmulti,datum;
n floats OD-Werte (n=npkt) 
1 LONG   Pruefdaten (alle Bytes nach den Testzahlen addiert).
floats sind jeweils im IEEE-754 Format

Noch zu machen:
---------------
Vergleichen von 2 Spektren mit unterschiedlichen Grenzen oder Aufloesungen
geht noch nicht. Dazu sind wahrscheinlich groessere Umstellungen im Programm
noetig.

Die Struktur kopf_1 sollte ersetzt werden (z.B. durch kopf_3).
Wuerde Beschraenkung des Namens auf 40 Zeichen aufheben und Umkopiererei
in abs_lesen() und spc_lesen() koennte auch entfallen.

Das Speicherformat (IRTRANS2) ist nicht optimal: Beim Subtrahieren von
Spektren untereinander koennen Werte entstehen, die den Wertebereich
ueberschreiten. Fixe Laenge fuer Namen ist auch bloed.
Das Problem mit dem uerberlaufenden Wertebereich ist natuerlich schon
innerhalb des Programms da. Dazu muessten Felder von WORD* auf LONG*
geaendert werden. (double* ist zum Speichern ungeeignet!)

--
6.9.2007
