|
FlightGear next
|
#include <float.h>#include <locale>#include <string.h>#include <simgear/misc/sg_dir.hxx>#include <simgear/props/props_io.hxx>#include <simgear/structure/commands.hxx>#include <simgear/structure/exception.hxx>#include <simgear/structure/subsystem_mgr.hxx>#include <Main/fg_props.hxx>#include <MultiPlayer/mpmessages.hxx>#include <Time/TimeManager.hxx>#include <Viewer/viewmgr.hxx>#include "continuous.hxx"#include "flightrecorder.hxx"#include "replay.hxx"Go to the source code of this file.
Classes | |
| struct | NumberCommasHelper |
Namespaces | |
| namespace | ReplayContainer |
Enumerations | |
| enum | ReplayContainer::Type { ReplayContainer::Invalid = -1 , ReplayContainer::Header = 0 , ReplayContainer::MetaData = 1 , ReplayContainer::Properties = 2 , ReplayContainer::RawData = 3 } |
Functions | |
| template<typename T> | |
| static void | readRaw (std::istream &in, T &data) |
| template<typename T> | |
| static void | writeRaw (std::ostream &out, const T &data) |
| static int | PropertiesRead (std::istream &in, SGPropertyNode *node) |
| static void | popupTip (const char *message, int delay) |
| SGPath | makeSavePath (FGTapeType type, SGPath *path_timeless) |
| static void | clear (FGReplayInternal &self) |
| static void | loadMessages (FGReplayInternal &self) |
| void | fillRecycler (FGReplayInternal &self) |
| static void | printTimeStr (char *pStrBuffer, int bufferSize, double _Time, bool ShowDecimal=true) |
| static void | setTimeStr (const char *property_path, double t, bool show_decimal=false) |
| static void | guiMessage (const char *message) |
| double | get_start_time (FGReplayInternal &self) |
| double | get_end_time (FGReplayInternal &self) |
| static const char * | MultiplayerMessageCallsign (const std::vector< char > &raw_message) |
| static bool | CallsignsEqual (const std::vector< char > &a_message, const std::vector< char > &b_message) |
| static void | MoveFrontMultiplayerPackets (std::deque< FGReplayData * > &list) |
| static bool | saveRawReplayData (simgear::gzContainerWriter &output, const std::deque< FGReplayData * > &replay_data, size_t record_size, SGPropertyNode *meta) |
| Save raw replay data in a separate container. | |
| SGPropertyNode_ptr | saveSetup (const SGPropertyNode *extra, const SGPath &path, double duration, FGTapeType tape_type, int continuous_compression) |
| std::ostream & | operator<< (std::ostream &out, const FGFrameInfo &frame_info) |
| static void | replayMessage (FGReplayInternal &self, double time) |
| static void | replayNormal2 (FGReplayInternal &self, double time, const FGReplayData *current_frame, const FGReplayData *old_frame=nullptr, int *xpos=nullptr, int *ypos=nullptr, int *xsize=nullptr, int *ysize=nullptr) |
| given two FGReplayData elements and a time, interpolate between them | |
| static void | interpolate (FGReplayInternal &self, double time, const std::deque< FGReplayData * > &list) |
| interpolate a specific time from a specific list | |
| bool | replayNormal (FGReplayInternal &self, double time) |
| bool | replay (FGReplayInternal &self, double time) |
| Replay a saved frame based on time, interpolate from the two nearest saved frames. | |
| static FGReplayData * | record (FGReplayInternal &self, double sim_time) |
| static bool | loadRawReplayData (simgear::gzContainerReader &input, std::deque< FGReplayData * > &replay_data, size_t record_size, bool multiplayer, bool multiplayer_legacy) |
| Load raw replay data from a separate container. | |
| static bool | saveTape2 (FGReplayInternal &self, const SGPath &filename, SGPropertyNode_ptr metadata) |
| Write flight recorder tape with given filename and meta properties to disk. | |
| int | loadContinuousHeader (const std::string &path, std::istream *in, SGPropertyNode *properties) |
| static void | indexContinuousRecording (FGReplayInternal &self, const void *data, size_t numbytes) |
| bool | loadTapeContinuous (FGReplayInternal &replay_internal, std::ifstream &in, const SGPath &filename, bool preview, bool create_video, double fixed_dt, SGPropertyNode &meta_meta, simgear::HTTP::FileRequestRef file_request) |
| static std::locale | s_comma_locale (std::locale(), new NumberCommasHelper()) |
| static std::string | numberCommas (size_t n) |
| bool | listTapes (bool same_aircraft_filter, const SGPath &tape_directory) |
| List available tapes in current directory. | |
Variables | |
| const char *const | FlightRecorderFileMagic = "FlightGear Flight Recorder Tape" |
| Magic string to verify valid FG flight recorder tapes. | |
|
static |
Definition at line 475 of file replay-internal.cxx.
|
static |
Definition at line 203 of file replay-internal.cxx.
| void fillRecycler | ( | FGReplayInternal & | self | ) |
Definition at line 278 of file replay-internal.cxx.
| double get_end_time | ( | FGReplayInternal & | self | ) |
Definition at line 403 of file replay-internal.cxx.
| double get_start_time | ( | FGReplayInternal & | self | ) |
Definition at line 373 of file replay-internal.cxx.
|
static |
Definition at line 368 of file replay-internal.cxx.
|
static |
Definition at line 1331 of file replay-internal.cxx.
|
static |
interpolate a specific time from a specific list
Definition at line 683 of file replay-internal.cxx.
| bool listTapes | ( | bool | same_aircraft_filter, |
| const SGPath & | tape_directory ) |
List available tapes in current directory.
Limits to tapes matching current aircraft when same_aircraft_filter is enabled.
Definition at line 1767 of file replay-internal.cxx.
| int loadContinuousHeader | ( | const std::string & | path, |
| std::istream * | in, | ||
| SGPropertyNode * | properties ) |
Definition at line 1286 of file replay-internal.cxx.
|
static |
Definition at line 257 of file replay-internal.cxx.
|
static |
Load raw replay data from a separate container.
Definition at line 1120 of file replay-internal.cxx.
| bool loadTapeContinuous | ( | FGReplayInternal & | replay_internal, |
| std::ifstream & | in, | ||
| const SGPath & | filename, | ||
| bool | preview, | ||
| bool | create_video, | ||
| double | fixed_dt, | ||
| SGPropertyNode & | meta_meta, | ||
| simgear::HTTP::FileRequestRef | file_request ) |
Definition at line 1479 of file replay-internal.cxx.
| SGPath makeSavePath | ( | FGTapeType | type, |
| SGPath * | path_timeless ) |
Definition at line 175 of file replay-internal.cxx.
|
static |
Definition at line 489 of file replay-internal.cxx.
|
static |
Definition at line 469 of file replay-internal.cxx.
|
static |
Definition at line 1573 of file replay-internal.cxx.
| std::ostream & operator<< | ( | std::ostream & | out, |
| const FGFrameInfo & | frame_info ) |
Definition at line 636 of file replay-internal.cxx.
|
static |
Definition at line 166 of file replay-internal.cxx.
|
static |
Definition at line 334 of file replay-internal.cxx.
|
static |
Definition at line 156 of file replay-internal.cxx.
|
static |
Definition at line 143 of file replay-internal.cxx.
|
static |
Definition at line 800 of file replay-internal.cxx.
| bool replay | ( | FGReplayInternal & | self, |
| double | time ) |
Replay a saved frame based on time, interpolate from the two nearest saved frames.
Returns true when replay sequence has finished, false otherwise.
Definition at line 782 of file replay-internal.cxx.
|
static |
Definition at line 645 of file replay-internal.cxx.
| bool replayNormal | ( | FGReplayInternal & | self, |
| double | time ) |
Definition at line 718 of file replay-internal.cxx.
|
static |
given two FGReplayData elements and a time, interpolate between them
Definition at line 667 of file replay-internal.cxx.
|
static |
|
static |
Save raw replay data in a separate container.
Definition at line 518 of file replay-internal.cxx.
| SGPropertyNode_ptr saveSetup | ( | const SGPropertyNode * | extra, |
| const SGPath & | path, | ||
| double | duration, | ||
| FGTapeType | tape_type, | ||
| int | continuous_compression ) |
Definition at line 577 of file replay-internal.cxx.
|
static |
Write flight recorder tape with given filename and meta properties to disk.
Definition at line 1204 of file replay-internal.cxx.
|
static |
Definition at line 360 of file replay-internal.cxx.
|
static |
Definition at line 150 of file replay-internal.cxx.
| const char* const FlightRecorderFileMagic = "FlightGear Flight Recorder Tape" |
Magic string to verify valid FG flight recorder tapes.
Definition at line 29 of file replay-internal.cxx.