Nuttx: fixed missing changes from AppMgr to AppState

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
This commit is contained in:
Mark Charlebois
2015-03-13 16:58:24 -07:00
parent 7b0783a070
commit fd7863270e
9 changed files with 38 additions and 22 deletions
+2 -2
View File
@@ -44,7 +44,7 @@
using namespace px4;
PublisherExample::PublisherExample() :
_n(mgr),
_n(appState),
_rc_channels_pub(_n.advertise<px4_rc_channels>()),
_v_att_pub(_n.advertise<px4_vehicle_attitude>()),
_parameter_update_pub(_n.advertise<px4_parameter_update>())
@@ -55,7 +55,7 @@ int PublisherExample::main()
{
px4::Rate loop_rate(10);
while (!mgr.exitRequested()) {
while (!appState.exitRequested()) {
loop_rate.sleep();
_n.spinOnce();
+1 -1
View File
@@ -50,7 +50,7 @@ public:
int main();
static px4::AppMgr mgr;
static px4::AppState appState;
protected:
px4::NodeHandle _n;
px4::Publisher<px4::px4_rc_channels> *_rc_channels_pub;
@@ -49,7 +49,7 @@ void rc_channels_callback_function(const px4_rc_channels &msg)
}
SubscriberExample::SubscriberExample() :
_n(_mgr),
_n(_appState),
_p_sub_interv("SUB_INTERV", PARAM_SUB_INTERV_DEFAULT),
_p_test_float("SUB_TESTF", PARAM_SUB_TESTF_DEFAULT)
{
+1 -1
View File
@@ -58,7 +58,7 @@ protected:
px4::ParameterFloat _p_test_float;
px4::Subscriber<px4_rc_channels> *_sub_rc_chan;
AppMgr _mgr;
AppState _appState;
void rc_channels_callback(const px4_rc_channels &msg);
void vehicle_attitude_callback(const px4_vehicle_attitude &msg);
+29 -13
View File
@@ -40,7 +40,7 @@
* @author Thomas Gubler
*/
#include <px4_config.h>
#include <px4_platform.h>
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
@@ -129,7 +129,12 @@ static sem_t g_sys_state_mutex;
/* The data manager store file handle and file name */
static int g_fd = -1, g_task_fd = -1;
// FIXME - need a configurable path that is not OS specific
#ifdef __PX4_NUTTX
static const char *k_data_manager_device_path = "/fs/microsd/dataman";
#else
static const char *k_data_manager_device_path = "/tmp/dataman";
#endif
/* The data manager work queues */
@@ -668,7 +673,7 @@ task_main(int argc, char *argv[])
}
/* Open or create the data manager file */
g_task_fd = open(k_data_manager_device_path, O_RDWR | O_CREAT | O_BINARY);
g_task_fd = open(k_data_manager_device_path, O_RDWR | O_CREAT | O_BINARY, 0x0777);
if (g_task_fd < 0) {
warnx("Could not open data manager file %s", k_data_manager_device_path);
@@ -827,31 +832,40 @@ stop(void)
static void
usage(void)
{
errx(1, "usage: dataman {start|stop|status|poweronrestart|inflightrestart}");
warnx("usage: dataman {start|stop|status|poweronrestart|inflightrestart}");
}
int
dataman_main(int argc, char *argv[])
{
if (argc < 2)
if (argc < 2) {
usage();
return -1;
}
if (!strcmp(argv[1], "start")) {
if (g_fd >= 0)
errx(1, "already running");
if (g_fd >= 0) {
warnx("dataman already running");
return -1;
}
start();
if (g_fd < 0)
errx(1, "start failed");
if (g_fd < 0) {
warnx("dataman start failed");
return -1;
}
exit(0);
return 0;
}
/* Worker thread should be running for all other commands */
if (g_fd < 0)
errx(1, "not running");
if (g_fd < 0) {
warnx("dataman worker thread not running");
usage();
return -1;
}
if (!strcmp(argv[1], "stop"))
stop();
@@ -861,8 +875,10 @@ dataman_main(int argc, char *argv[])
dm_restart(DM_INIT_REASON_POWER_ON);
else if (!strcmp(argv[1], "inflightrestart"))
dm_restart(DM_INIT_REASON_IN_FLIGHT);
else
else {
usage();
return -1;
}
exit(1);
return 1;
}
@@ -71,7 +71,7 @@ MulticopterAttitudeControl::MulticopterAttitudeControl() :
_att_sp_pub(nullptr),
_v_rates_sp_pub(nullptr),
_actuators_0_pub(nullptr),
_n(_mgr),
_n(_appState),
/* parameters */
_params_handles({
@@ -94,7 +94,7 @@ private:
px4::NodeHandle _n;
px4::AppMgr _mgr;
px4::AppState _appState;
struct {
px4::ParameterFloat roll_p;
@@ -65,7 +65,7 @@ MulticopterPositionControl::MulticopterPositionControl() :
_local_pos_sp_msg(),
_global_vel_sp_msg(),
_n(_mgr),
_n(_appState),
/* parameters */
_params_handles({
@@ -107,7 +107,7 @@ protected:
px4::NodeHandle _n;
px4::AppMgr _mgr;
px4::AppState _appState;
struct {
px4::ParameterFloat thr_min;