*
* @author Roland Haeder <webmaster@ship-simu.org>
* @version 0.0.0
- * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software
+ * @copyright Copyright (c) 2007, 2008 Roland Haeder, this is free software
* @license GNU GPL 3.0 or any newer version
- * @link http://www.ship-simu.org
+ * @link http://www.ship-simu.org
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
);
// Konstruktor
- protected function __construct ($class) {
+ protected function __construct ($className) {
// Call highest constructor
- parent::__construct($class);
+ parent::__construct($className);
// Set part description and class name
$this->setObjectDescription("Simulator-Basis-Einheit");
// Setter-Methode fuer Laenge
public final function setLength ($length) {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] <strong>%dm</strong> Länge gesetzt.<br />\n",
- $this->__toString(),
- $length
- ));
$this->length = (float) $length;
}
// Setter-Methode fuer Breite
public final function setWidth ($width) {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] <strong>%dm</strong> Breite gesetzt.<br />\n",
- $this->__toString(),
- $width
- ));
$this->width = (float) $width;
}
// Setter-Methode fuer Hoehe
public final function setHeight ($height) {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] <strong>%dm</strong> Höhe gesetzt.<br />\n",
- $this->__toString(),
- $height
- ));
$this->height = (float) $height;
}
// Getter-Methode fuer Laenge
public final function getLength () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Länge angefordert.<br />\n",
- $this->__toString()
- ));
return $this->length;
}
// Getter-Methode fuer Breite
public final function getWidth () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Länge angefordert.<br />\n",
- $this->__toString()
- ));
return $this->width;
}
// Getter-Methode fuer Hoehe
public final function getHeight () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Höhe angefordert.<br />\n",
- $this->__toString()
- ));
return $this->height;
}
// Remover-Methode fuer die Teil-Instanz
public final function removePartInstance () {
- if ($this->getPartInstance() !== null) {
- // Warnung ausgeben
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] partInstance ist nicht null! Instanz-Attribut wird nicht entfernt.<br />\n",
- $this->__toString()
- ));
- } else {
- // Leere Instanz kann entfernt werden
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] partInstance wurde entfernt.<br />\n",
- $this->__toString()
- ));
- unset($this->partInstance);
- }
+ unset($this->partInstance);
}
// Prueft ob all Umberechnungsfaktoren gesetzt sind
$this->currShip = $shipInstance;
$this->currPart = $partInstance;
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Maschinenraum mit Motor <strong>%s</strong> wird fuer das Schiff <strong>%s</strong> konstruiert.<br />\n",
+ if (defined('DEBUG_CORE')) $this->debugOutput(sprintf("[%s:] Maschinenraum mit Motor <strong>%s</strong> wird fuer das Schiff <strong>%s</strong> konstruiert.",
$this->__toString(),
$this->getCurrPart()->getObjectDescription(),
$this->currShip->getShipName()
// Passt ueberhaupt das Schiffsteil in's Schiff?
if ($this->isShipPartSizeValid()) {
// Berechnungen fuer umliegendes Objekt anpassen
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Das Schiffsteil <strong>%s</strong> vom Typ <strong>%s</strong> passt in das Schiff <strong>%s</strong> hinein.<br />\n",
+ if (defined('DEBUG_CORE')) $this->debugOutput(sprintf("[%s:] Das Schiffsteil <strong>%s</strong> vom Typ <strong>%s</strong> passt in das Schiff <strong>%s</strong> hinein.",
$this->__toString(),
$this->getCurrPart()->getObjectDescription(),
$this->getCurrPart()->__toString(),
// Passt dies nun immer noch?
if ($this->isNewSizeValid()) {
// Das passt auch, dann Werte setzen und Motor-Instanz merken
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Das Schiffsteil <strong>%s</strong> passt in das Schiff <strong>%s</strong> hinein.<br />\n",
+ if (defined('DEBUG_CORE')) $this->debugOutput(sprintf("[%s:] Das Schiffsteil <strong>%s</strong> passt in das Schiff <strong>%s</strong> hinein.",
$this->__toString(),
$this->getObjectDescription(),
$this->currShip->getShipName()
// Existiert ein Schiffsteil?
if (!is_null($this->currPart)) {
// Debug-Meldung ausgeben
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Schiffsteil <strong>%s</strong> gefunden.<br />\n",
+ if (defined('DEBUG_CORE')) $this->debugOutput(sprintf("[%s:] Schiffsteil <strong>%s</strong> gefunden.",
$this->getCurrPart()->realClass,
$this->getCurrPart()->getObjectDescription()
));
// Array fuer Umrechnungstabelle entfernen
public final function removeResizeFactorArray () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] removeResizeFactor erreicht.<br />\n",
- $this->__toString()
- ));
unset($this->resizeFactorArray);
}
* @return void
*/
public final function removeCurrShip () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] removeCurrShip erreicht.<br />\n",
- $this->__toString()
- ));
unset($this->currShip);
}
// Aktuelle Schiffsteil-Instanz entfernen
public final function removeCurrPart () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] removeCurrPart erreicht.<br />\n",
- $this->__toString()
- ));
unset($this->currPart);
}
// Breite entfernen
public final function removeWidth () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Breite entfernt.<br />\n",
- $this->__toString()
- ));
unset($this->width);
}
// Hoehe entfernen
public final function removeHeight () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Höhe entfernt.<br />\n",
- $this->__toString()
- ));
unset($this->height);
}
// Laenge entfernen
public final function removeLength () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Länge entfernt.<br />\n",
- $this->__toString()
- ));
unset($this->length);
}
// Tiefgang entfernen
public final function removeDraught () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Tiefgang entfernt.<br />\n",
- $this->__toString()
- ));
unset($this->draught);
}
// Getter-Methode fuer Element aus resizeFactor
public final function getResizeFactorElement ($el) {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] getResizeFactorElement erreicht. (element=%s)<br />\n",
- $this->__toString(),
- $el
- ));
if (isset($this->resizeFactorArray[$el])) {
// Element gefunden
return $this->resizeFactorArray[$el];
} else {
// Element nicht gefunden!
- return 0;
+ return null;
}
}
// Setter-Methode fuer Element in resizeFactor
public final function setResizeFactorElement ($el, $value) {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] Umberechnungsfaktor <strong>%s</strong>=<strong>%s</strong> gesetzt.<br />\n",
- $this->__toString(),
- $el,
- $value
- ));
$this->resizeFactorArray[$el] = (float) $value;
}
// Kontrolliert, ob die Abmasse Schiffsteil->Schiff stimmen
public function isShipPartSizeValid () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] isShipPartSizeValid erreicht.<br />\n",
- $this->__toString()
- ));
return (
(
( // Already defined ship messurings
// Kontrolliert, ob die Abmasse Maschinenraum->Schiff stimmen
public function isNewSizeValid () {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] isNewSizeValid erreicht.<br />\n",
- $this->__toString()
- ));
return (
( // Already defined ship messurings
($this->newWidth < $this->currShip->getWidth())
// Masse extrahieren
public function extractDimensions ($dim) {
- if (defined('DEBUG_CORE')) $this->getDebugInstance()->output(sprintf("[%s:] extractDimensions erreicht für <strong>%s</strong>.<br />\n",
- $this->__toString(),
- $this->getObjectDescription()
- ));
-
// Abmasse setzen
if ((isset($dim)) && (is_array($dim)) && (count($dim) == 3)) {
// Abmasse aus Array holen