16.10.2012 Aufrufe

Photoelektron-Photoion-Koinzidenz- spektroskopie mit ...

Photoelektron-Photoion-Koinzidenz- spektroskopie mit ...

Photoelektron-Photoion-Koinzidenz- spektroskopie mit ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

38 Kapitel 1. Das Experiment<br />

entspricht. Mit dem History-Counter (Nr. 3) wird zusatzlich die Anzahl der Elektronensignale<br />

aufeinanderfolgender Me perioden als Intensitats-Historie aufgezeichnet.<br />

Ein AT-486 PC ubernimmt die Steuerung und Datenaufnahme wahrend der Messungen. Die<br />

Ansteuerung der in Abbildung 1.18 <strong>mit</strong> Nr. 1 { 8 bezeichneten Zahler, Gates und Pulser erfolgt<br />

uber das Me programm <strong>mit</strong> Hilfe von Timer-Bausteinen auf zwei AM9513 Chips, die auf einer<br />

Me karte PCL-830 der Firma Datalog untergebracht sind. Der Datenpu er der Firma FAST<br />

wird uber die parallele PC-Schnittstelle ausgelesen. Dieses Gerat lie sich nur sehr widerwillig in<br />

das Me programm integrieren: die Software-Ansteuerung hangt extrem vom richtigen Timing<br />

ab, und der <strong>mit</strong>gelieferte C-Quellcode fur den Treiber la t auf ahnliche Probleme auf seiten<br />

des Herstellers schlie en.<br />

1.3.5 Me software<br />

Im Rahmen dieser Arbeit wurde ein Me programm <strong>mit</strong> Namen " CMAKO\ entwickelt, das<br />

die Durchfuhrung der verschiedenen Me verfahren zur Elektronen-, Ionen- und <strong>Koinzidenz</strong><strong>spektroskopie</strong><br />

ermoglicht. Der Struktur des Me programms liegt ein objektorientierter Ansatz<br />

zugrunde (OOP =object oriented programming), der sich als au erst exibel erwiesen hat. Als<br />

Programmiersprache wurde objektorientiertes Borland Pascal verwendet, weil auf diese Weise<br />

eine zuvor entwickelte Ober ache fur Bildschirm-Eingabemasken ( " VENICE\) im Programm<br />

verwendet werden konnte.<br />

Inzwischen wurde in Zusammenarbeit <strong>mit</strong> Stefan Baier ein erweiterter Ansatz auf Basis der<br />

Programmiersprache C++ [55] entwickelt, der hier kurz in Umrissen dargestellt werden soll:<br />

Die Klasse MObjekt ist die Basis der aufgebauten Klassenhierarchie. Von ihr sind alle anderen<br />

Klassen abgeleitet. Jede im Klassenbaum 1.20 gezeigte Klasse dient selbst wieder als<br />

Basisklasse fur neue, abgeleitete Klassen, was in der Abbildung durch Pfeile veranschaulicht<br />

ist. Dabei ist es moglich, da eine Klasse von mehreren Basisklassen abgeleitet ist (mehrfache<br />

Vererbung), so da die Klassenhierarchie im allgemeinen einen gerichteten, azyklischen<br />

Graphen [55] bildet. Der Vorteil einer Klassenhierarchie ist, da die abgeleiteten Klassen die<br />

Eigenschaften ihrer Basisklassen erben, so da diese nur ein einziges Mal implementiert werden<br />

mussen. Eine Basisklasse fa t folglich Gemeinsamkeiten der abgeleiteten Klassen zusammen.<br />

Jede abgeleitete Klasse ist eine Spezialform ihrer Basisklassen.<br />

Objektorientiertes Programmieren bietet daruber hinaus die Moglichkeit, Funktionen zunachst<br />

rein virtuell, d. h. ohne expliziten Programmcode zu deklarieren. Basisklassen, die solche virtuellen<br />

Elementfunktionen enthalten, sind dann abstrakt: es macht keinen Sinn, Objekte dieser<br />

Klassen zu de nieren. Gleichwohl konnen jedoch die allgemeinen Zusammenhange zwischen<br />

den Elementfunktionen bereits innerhalb der abstrakten Basisklasse de niert werden, so da<br />

der funktionale Ablauf auf dieser ubergeordneten Ebene festgelegt wird. Eine abgeleitete Klasse<br />

mu dann lediglich die virtuellen Elementfunktionen de nieren, d. h. " <strong>mit</strong> Leben fullen\,<br />

und kann automatisch auf die Funktionalitat der Basisklasse zuruckgreifen.<br />

Die gezeigte Klassenhierarchie ist jederzeit erweiterbar und stellt eher einen momentanen Stand<br />

dar als die endgultige Losung: Zunachst wurde eine rein strukturelle Trennung in Hardware-

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!