From: Benjamin Wolf Date: Tue, 24 Nov 1998 20:17:45 +0100 (MET) Programmteil "counters" - Komponenten und ihre Interaktion: **************************************************************** Der Header fuer counters.cpp ist auf mehrere h-Files verteilt: 1. rc_def.h: aussschliesslich defines -> anscheinend um Funktionsaufrufe entsprechend zu parametrisieren 2. comhead.h: - include zahlreicher Systemheader (cstring.h etc) - defines haufig gebrauchter Konstanten (MaxString, EOL etc) - typedefs fuer Aufzaehlungstypen - typedefs verwendeter Strukturen ( echte C-Strukturen, also insb. ohne Methoden ) - defines fuer Return-Codes 3. m_devcom.h: - defines -> anscheinend fuer Funktionscodes/ Ausgabecodes - class TDevice -> viele friends/ virtuelle Methoden -> die Basisklasse fuer alle Zaehlerkarten - class TDList -> keine friends/virt. -> Verwaltung einer Liste von TDevice-Objekten - class TCounterWindow -> erbt TMDIWindow (aus comclass.h) -> Darstellung des Zaehlerfensters - class TCounterShowParam -> erbt TModalDlg (aus dlg_tpl.h) - die Ansteuerung der/des PSD geschiet hier nicht, sondern ist ueber eine Reihe weiter Datein verstreut 4. m_devhw.h: - include: am9531a.h m_psd.h radicon.h ,also die Header fuer die verschiedenen Zaehlerkarten/bausteine - class TGenericDevice -> erbt TDevice,TAm9513a - class TRadicon -> erbt TDevice - die beiden Klassen impl. Methoden zur Benutzung der entsprechenden Geraete; ausserdem jeweils eigene Klassen zur Einstellung von Parametern - class TEncoder -> erbt TDevice -> auch eine Hardwareschnittstelle, aber zu welchem Geraet? 5. c_layer.h: - wrapper -> implementiert in c_layer.cpp - das "c" steht wohl fuer counter, da solche Funktionen nach aussen gereicht werden *************************************************************** am9513.cpp = timer.cpp /am9513a.h : - implementiert Hardwarezugriff auf diesen Zaehlertyp - Funktionalitaet wird in class TGenericDevice eingeerbt - **************************************************************** PSD-Funktionalitaet: 1. braunpsd.cpp: - implementiert TBraun_Psd - erweitert class TPsd: public TDevice aus m_psd.h 2. m_psd.h: - class TPsd: public TDevice -> in counters.cpp impl. - class TStoe_Psd: public TPsd -> impl. in counters.cpp - class TBraun_Psd: public TPsd -> impl. in braunpsd.cpp - Klasse, um Paramter fuer TPsd-Geraet zu setzen 3. m_xscan.h: - vor allem Fenster fuer Einstellungen **************************************************************** Radikon-Funktionalitaet (Copyrightvermerk vom Hersteller) - kisl1.c -> gibt relativ abstraktes Modell der eigentlichen Steuerkarte inkl. Testbetrieb ("Fakedevice") - kmpt1.c, prkmpt1.h -> Hilffunktionen fuer kisl1.c - dfkisl.h -> defines fuer kmptl.c - radikon.h Header fuer Funktionen aus kisl1.c ***************************************************************** Ergaenzungen zur bereits vorliegenden Beschreibung des Modul "counters" die sich aus der Sichtung der Quellen ergab: - Unterstuetzung eines zweiten PSD-Types, neben dem BRAUN-PSD ist implementiert (in der Klasse TStoe_Psd) (?) *****************************************************************