ROOT logo
// $Id: Crawler.h 2342 2010-01-24 20:10:41Z matevz $

// Copyright (C) 1999-2008, Matevz Tadel. All rights reserved.
// This file is part of GLED, released under GNU General Public License version 2.
// For the licensing terms see $GLEDSYS/LICENSE or http://www.gnu.org/.

#ifndef Var1_Crawler_H
#define Var1_Crawler_H

#include <Glasses/Dynamico.h>

class Crawler : public Dynamico
{
  MAC_RNR_FRIENDS(Crawler);

public:
  enum DriveMode_e { DM_Parked, DM_ConstVelocities, DM_Controllers };

private:
  void _init();

protected:
  DriveMode_e   mDriveMode; // X{GS}   7 PhonyEnum()
  Float_t       mLevH;      // X{RGS}  7 Value(-range=>[0,2, 1,100])

  Float_t       mRayOffset; //!
  HPointF       mTerrainUp; //!

  SDesireVarF   mThrottle;  // X{RGSD} 7 DesireVar(-range=>["mThrottle.GetMin()", "mThrottle.GetMax()", 1, 10])
  SDesireVarF   mWheel;     // X{RGSD} 7 DesireVar(-range=>["mWheel.GetMin()",    "mWheel.GetMax()",    1, 50])

  SDesireVarF   mLaserUpDn;   // X{RGSD} 7 DesireVar(-range=>["mLaserUpDn.GetMin()", "mLaserUpDn.GetMax()", 1, 100])
  SDesireVarF   mLaserLtRt;   // X{RGSD} 7 DesireVar(-range=>["mLaserLtRt.GetMin()", "mLaserLtRt.GetMax()", 1, 100])
  SMinMaxVarF   mLaserCharge; // X{RG}   7 MinMaxVar(-const=>1)
  Float_t       mLaserLen;    // X{GS}   7 Value(-range=>[0.1, 5, 1, 100]);
  HPointF       mLaserBeg;    // X{R}

public:
  Crawler(const Text_t* n="Crawler", const Text_t* t=0);
  virtual ~Crawler();

  virtual void SetTringula(Tringula* tring);

  virtual void TimeTick(Double_t t, Double_t dt);

  virtual void ShootLaser(); // X{E}

#include "Crawler.h7"
  ClassDef(Crawler, 1);
}; // endclass Crawler

#endif
 Crawler.h:1
 Crawler.h:2
 Crawler.h:3
 Crawler.h:4
 Crawler.h:5
 Crawler.h:6
 Crawler.h:7
 Crawler.h:8
 Crawler.h:9
 Crawler.h:10
 Crawler.h:11
 Crawler.h:12
 Crawler.h:13
 Crawler.h:14
 Crawler.h:15
 Crawler.h:16
 Crawler.h:17
 Crawler.h:18
 Crawler.h:19
 Crawler.h:20
 Crawler.h:21
 Crawler.h:22
 Crawler.h:23
 Crawler.h:24
 Crawler.h:25
 Crawler.h:26
 Crawler.h:27
 Crawler.h:28
 Crawler.h:29
 Crawler.h:30
 Crawler.h:31
 Crawler.h:32
 Crawler.h:33
 Crawler.h:34
 Crawler.h:35
 Crawler.h:36
 Crawler.h:37
 Crawler.h:38
 Crawler.h:39
 Crawler.h:40
 Crawler.h:41
 Crawler.h:42
 Crawler.h:43
 Crawler.h:44
 Crawler.h:45
 Crawler.h:46
 Crawler.h:47
 Crawler.h:48
 Crawler.h:49
 Crawler.h:50
 Crawler.h:51
 Crawler.h:52