All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class Oszi.GeneratorElement

java.lang.Object
   |
   +----java.awt.Component
           |
           +----java.awt.Container
                   |
                   +----java.awt.Panel
                           |
                           +----Oszi.BildPanel
                                   |
                                   +----Oszi.BauElement
                                           |
                                           +----Oszi.GeneratorElement

public class GeneratorElement
extends BauElement
implements ItemListener, ActionListener, TextListener
Eingabeströme:0
Ausgabeströme:1
Dieses Bauelement dient dem Erzeugen verschiedener Signalformen. Diese von der abstrakten Klasse BauElement abgeleitete Klasse ist ein reiner Produzent von Daten.
Als Bildschirmrepräsentation enthält diese Klasse ein Panel, an dem die Werte des Generators eingestellt werden können. Bei Änderung von Einstellwerten werden alle registrierten WerteGeaendertListener davon in Kenntnis gesetzt. Das EventObject enthält als Kennung den String tit, der am Konstruktor übergeben wird.

See Also:
Konventionen, wertAenderung, addWerteGeaendertListener

Variable Index

 o dreieck
Konstante für die Signalform "Dreieck" (/\/\).
 o glatt
Konstante für die Signalform "reine Gleichspannung".
 o nadel
Konstante für die Signalform "Nadelimpuls".
 o rechteck
Konstante für die Signalform "Rechteck".
 o saegezahn
Konstante für die Signalform "Sägezahn" (/|/|).
 o sinus
Konstante für die Signalform "Sinus".

Constructor Index

 o GeneratorElement(String)
Konstruktor mit vorgegebenen Standardwerten.
 o GeneratorElement(String, double, double, double, double, int, int)
Der Konstruktor initialisiert den Datenstrom und die AWT-Komponenten des Bedienpanels.

Method Index

 o abgleich()
dient der Synchronisierung.
 o actionPerformed(ActionEvent)
Event-Handler für Buttons.
 o getAmplitude()
holt den Amplitudenwert.
 o getFrequenz()
holt den Frequenzwert.
 o getGleichAnteil()
holt den Gleichspannungsoffset.
 o getPhase()
holt den Phasenwert.
 o getSignalform()
holt die Signalform.
 o getWerteProPeriode()
holt die Anzahl der Werte pro Periode.
 o isAktiv()
testet, ob der Generator aktiv ist.
 o isAktivBedienbar()
testet, ob die "aktiv"-Checkbox bedienbar ist.
 o itemStateChanged(ItemEvent)
Event-Handler für Checkboxen.
 o run()
Die run-Methode enthält eine Endlosschleife zur Erzeugung der Zeit- und Spannungswerte, die auf dem Ausgabekanal ausgegeben werden.
 o schreibeWerte()
aktualisiert die Bildschirmanzeige der Werte im Bedienpanel.
 o setAktiv(boolean)
setzt den Generator aktiv oder inaktiv.
 o setAktivBedienbar(boolean)
setzt die Bedienbarkeit der "aktiv"-Checkbox.
 o setAmplitude(double)
setzt den Amplitudenwert.
 o setFrequenz(double)
setzt den Frequenzwert.
 o setGleichAnteil(double)
setzt den Gleichspannungsoffset.
 o setPhase(double)
setzt die Phase.
 o setSignalform(int)
setzt die Signalform.
 o setWerteProPeriode(int)
setzt die Anzahl der Werte pro Periode (nur für sinusförmiges Signal relevant).
 o textValueChanged(TextEvent)
Event-Handler für Textfelder.

Variables

 o sinus
  public final static int sinus
Konstante für die Signalform "Sinus".

 o rechteck
  public final static int rechteck
Konstante für die Signalform "Rechteck".

 o dreieck
  public final static int dreieck
Konstante für die Signalform "Dreieck" (/\/\).

 o saegezahn
  public final static int saegezahn
Konstante für die Signalform "Sägezahn" (/|/|).

 o nadel
  public final static int nadel
Konstante für die Signalform "Nadelimpuls".

 o glatt
  public final static int glatt
Konstante für die Signalform "reine Gleichspannung".

Constructors

 o GeneratorElement
  public GeneratorElement(String tit)
Konstruktor mit vorgegebenen Standardwerten. Entspricht:
GeneratorElement(tit, 1000.0, 1.0, 0.0, 0.0, 25, GeneratorElement.sinus).

Parameters:
tit - String für die Titelzeile des Panels.
See Also:
GeneratorElement
 o GeneratorElement
  public GeneratorElement(String tit,
                          double f,
                          double a,
                          double g,
                          double p,
                          int w,
                          int s)
Der Konstruktor initialisiert den Datenstrom und die AWT-Komponenten des Bedienpanels.

Parameters:
tit - String für die Titelzeile des Panels.
f - Frequenz in Hertz.
a - Amplitude in Volt.
g - Gleichspannungsoffset in Volt.
p - Phase in rad.
w - Anzahl der diskreten Werte, die pro Periode berechnet werden sollen (nur für sinusförmige Spannung relevant).
s - Signalform.
See Also:
setWerteProPeriode, sinus, rechteck, dreieck, saegezahn, nadel, glatt

Methods

 o run
  public void run()
Die run-Methode enthält eine Endlosschleife zur Erzeugung der Zeit- und Spannungswerte, die auf dem Ausgabekanal ausgegeben werden. Die Aktivierung des Threads erfolgt mittels myGeneratorElement.getThread().start().

Overrides:
run in class BauElement
See Also:
getThread
 o abgleich
  public void abgleich()
dient der Synchronisierung. Das Synchronisierungssignal (Zeit = Double.NaN, Spannung = 0.0) wird gesendet. Anschließend beginnt die Berechnung des Signals von vorn.

See Also:
addWerteGeaendertListener, werteGeaendert, Konventionen
 o setFrequenz
  public void setFrequenz(double x)
setzt den Frequenzwert.

Parameters:
x - neue Frequenz in Hertz.
See Also:
getFrequenz
 o getFrequenz
  public double getFrequenz()
holt den Frequenzwert.

Returns:
aktuelle Frequenz in Hertz.
See Also:
setFrequenz
 o setAmplitude
  public void setAmplitude(double x)
setzt den Amplitudenwert.

Parameters:
x - neue Amplitude in Volt.
See Also:
getAmplitude
 o getAmplitude
  public double getAmplitude()
holt den Amplitudenwert.

Returns:
aktuelle Amplitude in Volt.
See Also:
setAmplitude
 o setGleichAnteil
  public void setGleichAnteil(double x)
setzt den Gleichspannungsoffset.

Parameters:
x - neuer Gleichspannungsoffset in Volt.
See Also:
getGleichAnteil
 o getGleichAnteil
  public double getGleichAnteil()
holt den Gleichspannungsoffset.

Returns:
aktueller Gleichspannungsoffset in Volt.
See Also:
setGleichAnteil
 o setPhase
  public void setPhase(double x)
setzt die Phase.

Parameters:
x - neue Phase in rad.
See Also:
getPhase
 o getPhase
  public double getPhase()
holt den Phasenwert.

Returns:
aktuelle Phase in rad.
See Also:
setPhase
 o setWerteProPeriode
  public void setWerteProPeriode(int x)
setzt die Anzahl der Werte pro Periode (nur für sinusförmiges Signal relevant). Ein Wert von ca. 25 sollte für eine ordentliche Darstellung der Sinuskurve ausreichen. Größere Werte machen die Kurve glatter aber auch die Darstellung langsamer.

Parameters:
x - neuer Wert für die Anzahl der Werte pro Periode.
See Also:
getWerteProPeriode
 o getWerteProPeriode
  public int getWerteProPeriode()
holt die Anzahl der Werte pro Periode.

Returns:
aktueller Wert für die Anzahl der Werte pro Periode.
See Also:
setWerteProPeriode
 o setSignalform
  public void setSignalform(int x)
setzt die Signalform.

Parameters:
x - neue Signalform.
See Also:
getSignalform, sinus, rechteck, dreieck, saegezahn, nadel, glatt
 o getSignalform
  public int getSignalform()
holt die Signalform.

Returns:
aktuelle Signalform.
See Also:
setSignalform, sinus, rechteck, dreieck, saegezahn, nadel, glatt
 o setAktiv
  public void setAktiv(boolean x)
setzt den Generator aktiv oder inaktiv.
Ist der Generator deaktiviert, dann sendet er ständig das Signal "ungültiger Wert" (Zeit = Double.POSITIVE_INFINITY, Spannung = Double.POSITIVE_INFINITY).

Parameters:
x - true für "aktivieren", false für "deaktivieren".
See Also:
isAktiv, setAktivBedienbar, Konventionen
 o isAktiv
  public boolean isAktiv()
testet, ob der Generator aktiv ist.

Returns:
true für "aktiv", false für "inaktiv".
See Also:
setAktiv
 o setAktivBedienbar
  public void setAktivBedienbar(boolean x)
setzt die Bedienbarkeit der "aktiv"-Checkbox. Die Bedienbarkeit der "aktiv"-Checkbox im Bedienpanel kann für den Benutzer abgeschaltet werden, um ihn daran zu hindern, den Generator zu aktivieren oder zu deaktivieren.

Parameters:
x - true für "Checkbox bedienbar", false für "Checkbox nicht bedienbar".
See Also:
isAktivBedienbar, setAktiv
 o isAktivBedienbar
  public boolean isAktivBedienbar()
testet, ob die "aktiv"-Checkbox bedienbar ist.

Returns:
true für "Checkbox bedienbar", false für "Checkbox nicht bedienbar".
See Also:
setAktivBedienbar
 o schreibeWerte
  public void schreibeWerte()
aktualisiert die Bildschirmanzeige der Werte im Bedienpanel. Bei Änderungen durch den Benutzer und beim Initialisieren wird diese Methode automatisch aufgerufen.
Nach Änderung der Werte durch Aufruf der set-Methoden "von außen" sollte diese Methode explizit aufgerufen werden.

 o itemStateChanged
  public void itemStateChanged(ItemEvent e)
Event-Handler für Checkboxen.

Parameters:
e - zu behandelndes Event.
 o actionPerformed
  public void actionPerformed(ActionEvent e)
Event-Handler für Buttons.

Parameters:
e - zu behandelndes Event.
 o textValueChanged
  public void textValueChanged(TextEvent e)
Event-Handler für Textfelder.

Parameters:
e - zu behandelndes Event.

All Packages  Class Hierarchy  This Package  Previous  Next  Index