User:Callahanp/Flightgear Directories

From FlightGear wiki
Jump to navigation Jump to search

Directories

What's in em? What Topics to they cover? What's a topic anyway?

Short notes stating what the topic is all about in the context of flightgear's codebase.

Individual Cxx and Hxx files are represented by a single line, usually a word or two taken from a cxx, hxx pair. I'm calling that a topic. Explanatory notes may be added for topics.

These lists are intended for scanning through to get a sense of where things are and what they might be composed of.

Are narratives needed for each topic in a directory, or justat the level of bvh?

Not sure this is a useful page.

WIP.png Work in progress
This article or section will be worked on in the upcoming hours or days.
See history for the latest developments.

anyway

At this point the page is mostly scaffolding I'm using as a collection point for stuff I learn by looking in specific directories.


Flightgear Source Directories

Add Ons
AIModel
Aircraft
Airports
ATC

Air Traffic Controller

Autopilot
Canvas

Canvas is a dynamically created read/write image processor

Cockpit
EmbeddedResources
Environment
FDM

Flight Dynamics Model

GUI

Graphical User Interface

Include
Input
Instrumentation
Main
Model
MultiPlayer
Navaids

Navigational aids such as Marker Beacons, VOR/TACAN and NDBs

Network
Radio
Scenery
Scripting

Nasal scripting language and clipboard support

Sound
Systems
Time
Traffic
Viewer

Simgear Source Directories

  • embedded_resources - tbs Explanation
  • package - tbs Explanation
  • std - tbs Explanation (is this a wrapper on something in std::?
  • props -
  • canvas - A Canvas is a dynamically created read/write image
  • misc - Miscellaneous - Explain what's there for simgear
  • nasal - Nasal scripting language

simgear/bucket

Used in the management of Scenery Tiles and terrain data

1 Module

  • New Bucket

simgear/bvh

BVH is an abbreviation for Bounding Volume Hierarchy

19 modules

simgear/bvh contains modules that support the use of a bounding volume hierarchy to do what exactly?

It includes C++ and header files for:

  • Group
  • Line Geometry
  • Line Segment Visitor
  • Material
  • Motion Transform
  • Nearest Point Visitor
  • Node
  • Page Node
  • Pager
  • Page Request
  • Static
    • Binary
    • Data
    • Geometry
    • Leaf
    • Node
    • Triangle
  • Sub Tree Collector
  • test
  • Transform
  • Visitor


====simgear/canvas

simgear/canvas contains 4 sub-directories and C++ modules

  • Canvas
  • Event
  • Event Manager
  • Event Types
  • Event Visitor
  • Forward
  • Mgr
  • Object Placement
  • Placement
  • System Adapter
  • Window
  • OD Gauge
  • VG Init Operation

I'ts sub folders are: simgear/canvas/elements

  • * Canvas Element
  • Canvas Image
  • Map

simgear/canvas/elements/map

  • Geo Node Pair

simgear/canvas/events

  • Custom
  • device
  • test
  • Input Demo
  • Keyboard
  • Mouse

simgear/canvas/layout

  • Layout
  • Layout Item
  • Spacer Item
  • Nasal Widget
  • Align Flag
  • Box
  • test

simgear/canvas/ShivaVG

An open-source LGPL ANSI C implementation of the OpenVG specification by Ivan Leben

  • Arrays
  • Context

====simgear/debug ====simgear/embedded_resources ====simgear/environment ====simgear/ephemeris ====simgear/hla High-Level Architecture - Not currently implemented, but the road to this is being cleared in the current codebase. ====simgear/io ====simgear/magvar ====simgear/math ====simgear/misc ====simgear/nasal ====simgear/package

simgear/props=

Not Propellers, Properties! ====simgear/scene ====simgear/screen ====simgear/serial ====simgear/sound ====simgear/std ====simgear/structure ====simgear/threads ====simgear/timing ====simgear/xml

  • note that flightgear's source directory names start with Capital letters while simgear's start with lowercase letters.
  • note also that the one directory shared by both is two words. Flightgear uses camelCase, Simgear uses underscores: embedded_resources

Aircraft Directories

Scenery Directories

tbd: make the directory names links to the actual directory. tbd: finish merging original layout to new layout tbd: figure out if this is worth doing.