CEL: Crystal Entity Layer: propclass/craft.h Source File (CEL: Crystal Entity Layer Public API Reference)

| ## Public API Reference

- Main Page
- Classes
- Files

# propclass/craft.h

    00001 /*
    00002     Crystal Space Entity Layer
    00003     Copyright (C) 2005 by Jorrit Tyberghein
    00004
    00005     This library is free software; you can redistribute it and/or
    00006     modify it under the terms of the GNU Library General Public
    00007     License as published by the Free Software Foundation; either
    00008     version 2 of the License, or (at your option) any later version.
    00009
    00010     This library is distributed in the hope that it will be useful,
    00011     but WITHOUT ANY WARRANTY; without even the implied warranty of
    00012     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    00013     Library General Public License for more details.
    00014
    00015     You should have received a copy of the GNU Library General Public
    00016     License along with this library; if not, write to the Free
    00017     Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
    00018 */
    00019
    00020 #ifndef __CEL_PF_CRAFTCONTROLLER__
    00021 #define __CEL_PF_CRAFTCONTROLLER__
    00022
    00023 #include "cstypes.h"
    00024 #include "csutil/ref.h"
    00025 #include "csutil/scf.h"
    00026
    00034 struct iPcCraftController : public virtual iBase
    00035 {
    00036   SCF_INTERFACE (iPcCraftController, 0, 0, 1);
    00037
    00041   virtual void StartTurnLeft() = 0;
    00045   virtual void StopTurnLeft() = 0;
    00049   virtual void StartTurnRight() = 0;
    00053   virtual void StopTurnRight() = 0;
    00054
    00058   virtual void StartTurnUp() = 0;
    00062   virtual void StopTurnUp() = 0;
    00066   virtual void StartTurnDown() = 0;
    00070   virtual void StopTurnDown() = 0;
    00071
    00076   virtual void SetAccTurn(float tacc) = 0;
    00081   virtual void SetAccPitch(float uacc) = 0;
    00082
    00087   virtual void SetMaxTurn(float turn) = 0;
    00092   virtual void SetMaxPitch(float mud) = 0;
    00096   virtual void SetThrustForce(float tf) = 0;
    00101   virtual void SetTopSpeed(float tspeed) = 0;
    00105   virtual void SetRedirectVelocityRatio (float rdvr) = 0;
    00106
    00107   virtual void SetDecelerationRate (float decr) = 0;
    00108   virtual void SetBrakingSpeed (float bspd) = 0;
    00109
    00113   virtual void ThrustOn() = 0;
    00117   virtual void ThrustOff() = 0;
    00122   virtual bool IsThrusterOn () = 0;
    00123
    00124   virtual void SetAfterBurnerTopSpeed (float tspeed) = 0;
    00125   virtual void AfterBurnerOn () = 0;
    00126   virtual void AfterBurnerOff () = 0;
    00127
    00128   virtual void BrakesOn () = 0;
    00129   virtual void BrakesOff () = 0;
    00130
    00131   virtual void SlideOn () = 0;
    00132   virtual void SlideOff () = 0;
    00133 };
    00134
    00135 #endif