// $Source: /usr/local/SimSoft/Sfx3D/src/gts/gtsb09.h,v $
// $Revision: 1.2 $
// $Author: baum $
// $Date: 2001/11/29 15:18:10 $
//
// Login name of the user who locked the revision
// $Locker:  $
// Tag name used to checkout the file
// $Name:  $
// State assigned to revision
// $State: Exp $
//
//
// $Log: gtsb09.h,v $
// Revision 1.2  2001/11/29 15:18:10  baum
// -Realzeitsteuerung eingebaut
// -Handsteuerung eingebaut
//

#ifndef _GTSB09_H
#define _GTSB09_H     1

#include "gtsglob.h"
#include "gtsbst.h"

class typBTPMehrfachLader : public typBTPBasis {
  public:
    typBTPMehrfachLader  ();
    typBTPMehrfachLader  (const typBTPMehrfachLader &copy);
    typBTPMehrfachLader  (const typBTPMehrfachLader *zBTP);
    typBTPMehrfachLader  (InputFile& fin);
    Ustring getBTPWerte  ();
    void    setBTPWerte  (const typBTPMehrfachLader *zBTP);
    void    setBTPWerte  (Ustring str);
    void    BTPLesen     (InputFile& fin);
    void    BTPSchreiben (ostream& ostrm, typBaustein* zbst, int satznr);
    virtual ~typBTPMehrfachLader ();
  protected:
    double ObjUebernahmeZeit;
    double ObjXFahrGeschwindigkeit;
    double ObjXFahrBeschleunigung;
    double ObjXFahrVerzoegerung;
    double ObjYFahrGeschwindigkeit;
    double ObjYFahrBeschleunigung;
    double ObjYFahrVerzoegerung;
    double ObjHubGeschwindigkeit;
    double ObjHubBeschleunigung;
    double ObjHubVerzoegerung;
    double ObjQuerGesperrt;
}; // typBTPMehrfachLader

class typBSTMehrfachLader : public typBaustein, typBTPMehrfachLader, typBSPVariante1
{
  public:
    typBSTMehrfachLader (const typBSTMehrfachLader &copy, int nr);
    typBSTMehrfachLader (BstVariante *zaufTGB, int nr);
    typBSTMehrfachLader (InputFile& fin, int nr, int btyp, int vtyp);
    virtual ~typBSTMehrfachLader ();
    void BTPLesen         (InputFile& fin);
    void BTPSchreiben     (ostream& ostrm, int satznr);
    Ustring getBTPWerte   ();
    void setBTPWerte      (const typBTPMehrfachLader *zBTP);
    void setBTPWerte      (Ustring str);
    void VarianteErsetzen (BstVariante *zaufTGB);
    void BSPLesen         (InputFile& fin);
    void BSPSchreiben     (ostream& ostrm, int satznr);
    Ustring getBSPWerte   ();
    void setBSPWerte      (Ustring str);
  protected:
  private:
    GeoObject* ObjHakenKontur;
    GeoObject *ObjHakenGeo;
}; // typBSTMehrfachLader

#endif /* _GTSB09 */
