Main Page
Classes
Files
File List
All
Classes
Functions
Utils
VesselCapabilities.hpp
1
// ==============================================================
2
// ORBITER MODULE: LaunchMFD
3
// Part of the ORBITER SDK
4
//
5
// Copyright (C) 2004 rjcroy - robust time based pitch autopilot (borrowed code)
6
// Copyright (C) 2004 Dave "Daver" Rowbotham - conversion of rjcroy's autopolot to C++ (borrowed code)
7
// Copyright (C) 2004 Erik H. "Sputnik" Anderson - conversion of the autopilot to energy based (borrowed code)
8
// Copyright (C) 2007 "Vanguard" - dressing up azimuth calcualtions into an MFD (author)
9
// Copyright (C) 2007 Pawel "She'da'Lier" Stiasny - yaw error visual representation (contributor)
10
// Copyright (C) 2008 Mohd "Computerex" Ali - borrowed his code (multiple vessels support) (borrowed code)
11
// Copyright (C) 2008 Chris "Kwan" Jeppesen - borrowed his code (peg guidance) (borrowed code)
12
// Copyright (C) 2008 Steve "agentgonzo" Arch - peg integration, offplane correction, compass, hud display (co-developer)
13
// Copyright (C) 2007-2012 Szymon "Enjo" Ender - everything else ;> (author and maintainer)
14
// All rights reserved
15
//
16
// Authors:
17
// Chris "Kwan" Jeppesen (original code)
18
// Szymon "Enjo" Ender (cleanups)
19
// Steve "agentgonzo" Arch (IsTailSiter)
20
//
21
// This module calculates the appropriate launch azimuth given
22
// desired orbital inclination and desired orbit altitude. This
23
// MFD takes the planets rotation into account, which provides a
24
// much more accurate azimuth. The calculations are performed
25
// 'on the fly' (technically and methaphorically), meaning that
26
// you get info about necessary course corrections.
27
//
28
// This file is part of LaunchMFD.
29
//
30
// LaunchMFD is free software: you can redistribute it and/or modify
31
// it under the terms of the GNU General Public License as published by
32
// the Free Software Foundation, either version 3 of the License, or
33
// (at your option) any later version.
34
//
35
// LaunchMFD is distributed in the hope that it will be useful,
36
// but WITHOUT ANY WARRANTY; without even the implied warranty of
37
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
38
// GNU General Public License for more details.
39
//
40
// You should have received a copy of the GNU General Public License
41
// along with LaunchMFD. If not, see <http://www.gnu.org/licenses/>.
42
// ==============================================================
43
44
#ifndef VESSELCAPABILITIES_H
45
#define VESSELCAPABILITIES_H
46
47
#include "Engine.hpp"
48
49
#include <orbitersdk.h>
50
51
class
VesselCapabilities
52
{
53
public
:
54
VesselCapabilities
();
55
virtual
~
VesselCapabilities
();
56
57
double
GetThrusterIsp(
const
VESSEL * vessel, OBJHANDLE Thr)
const
;
58
Engine
EstimateMainThrustParm(
const
VESSEL * v,
double
level = 1)
const
;
59
Engine
GetMainThrustParm(
const
VESSEL * v )
const
;
61
63
// By Agentgonzo
64
bool
IsTailSitter
(
const
VESSEL * v )
const
;
65
bool
CheckVesselAirControlSurfaces(
const
VESSEL * vessel )
const
;
66
THGROUP_HANDLE GetMainEnginesHandle(
const
VESSEL * v )
const
;
67
68
protected
:
69
private
:
70
};
71
72
#endif // VESSELCAPABILITIES_H
Generated on Sat Feb 23 2013 09:37:09 by
1.8.1.2