CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
Ardupilot

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place. Commercial Alternative to JupyterHub.

GitHub Repository: Ardupilot/ardupilot
Path: blob/master/Tools/Replay/LogReader.h
Views: 1798
1
#pragma once
2
3
#include "VehicleType.h"
4
#include "DataFlashFileReader.h"
5
#include "LR_MsgHandler.h"
6
#include "Parameters.h"
7
8
class LogReader : public AP_LoggerFileReader
9
{
10
public:
11
LogReader(struct LogStructure *log_structure, NavEKF2 &_ekf, NavEKF3 &_ekf3);
12
13
VehicleType::vehicle_type vehicle;
14
15
static bool check_user_param(const char *name);
16
static bool set_parameter(const char *name, float value, bool force=false);
17
18
bool handle_log_format_msg(const struct log_Format &f) override;
19
bool handle_msg(const struct log_Format &f, uint8_t *msg) override;
20
21
static bool in_list(const char *type, const char *list[]);
22
23
protected:
24
25
private:
26
27
NavEKF2 &ekf2;
28
NavEKF3 &ekf3;
29
30
struct LogStructure *_log_structure;
31
uint8_t _log_structure_count;
32
33
class LR_MsgHandler *msgparser[LOGREADER_MAX_FORMATS] {};
34
};
35
36
// some vars are difficult to get through the layers
37
struct globals {
38
bool no_params;
39
};
40
41
extern struct globals globals;
42
43