Update of /cvsroot/gcblue/gcb_wx/include/ai
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11821/include/ai
Added Files:
Nav.h
Log Message:
Better sensor ageout behavior, more ai work, misc cleanup
--- NEW FILE: Nav.h ---
/**
** @file Nav.h
*/
/* Copyright (C) 2005 Dewitt Colclough (de...@tw...)
** All rights reserved.
** This file is part of the Global Conflict Blue (GCB) program.
** GCB is free software; you can redistribute it and/or modify
** it under the terms of version 2 of the GNU General Public License as
** published by the Free Software Foundation.
** GCB is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
** GNU General Public License for more details.
** You should have received a copy of the GNU General Public License
** along with GCB; if not, write to the Free Software
** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef _NAV_H_
#define _NAV_H_
#if _MSC_VER > 1000
#pragma once
#endif
#include "ai/Task.h"
#include <map>
#include <string>
#include <vector>
class tcPlatformObject;
class GeoPoint;
namespace ai
{
/**
* Basic navigation with waypoints
*/
class Nav : public Task
{
public:
void AddWaypoint(double lon_rad, double lat_rad, float alt_m);
void ClearWaypoints();
const std::vector<GeoPoint>& GetWaypoints() const;
void Update(double t);
Nav(tcPlatformObject* platform_, Blackboard* bb,
long id_, double priority_, const std::string& taskName_);
~Nav();
private:
std::vector<GeoPoint> waypoints;
unsigned currentWaypoint;
};
}
#endif
|