summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Fiore <mfiore@multitech.com>2015-12-02 16:50:07 -0600
committerMike Fiore <mfiore@multitech.com>2015-12-02 16:50:07 -0600
commit29960cf233c3ccf8c938764052feddfdac113d1d (patch)
tree72be89d6e03774f941826aee30beed9e559ee854
parent85a5200fe6e04ed51a97f289261bef3c84ffa18c (diff)
downloadmtdot-box-evb-factory-firmware-29960cf233c3ccf8c938764052feddfdac113d1d.tar.gz
mtdot-box-evb-factory-firmware-29960cf233c3ccf8c938764052feddfdac113d1d.tar.bz2
mtdot-box-evb-factory-firmware-29960cf233c3ccf8c938764052feddfdac113d1d.zip
implement AT command to delete survey data file
-rw-r--r--CommandTerminal/CmdDeleteSurveyDataFile.cpp13
-rw-r--r--FileName.h6
-rw-r--r--Mode/Mode.cpp10
-rw-r--r--Mode/Mode.h2
-rw-r--r--Mode/ModeSingle.cpp4
-rw-r--r--Mode/ModeSweep.cpp4
-rw-r--r--main.cpp4
7 files changed, 25 insertions, 18 deletions
diff --git a/CommandTerminal/CmdDeleteSurveyDataFile.cpp b/CommandTerminal/CmdDeleteSurveyDataFile.cpp
index d6eca22..325ee7c 100644
--- a/CommandTerminal/CmdDeleteSurveyDataFile.cpp
+++ b/CommandTerminal/CmdDeleteSurveyDataFile.cpp
@@ -1,4 +1,5 @@
#include "CmdDeleteSurveyDataFile.h"
+#include "FileName.h"
CmdDeleteSurveyDataFile::CmdDeleteSurveyDataFile(mDot* dot, mts::MTSSerial& serial) :
Command(dot, "Delete Survey Data File", "AT+DSDF", "Delete the survey data file"), _serial(serial)
@@ -8,14 +9,12 @@ CmdDeleteSurveyDataFile::CmdDeleteSurveyDataFile(mDot* dot, mts::MTSSerial& seri
uint32_t CmdDeleteSurveyDataFile::action(std::vector<std::string> args)
{
-//ToDo: Delete the file.
- if (!_dot->saveConfig()) {
- setErrorMessage("Failed to save to flash");
- return 1;
- }
-
- return 0;
+ if (!_dot->deleteUserFile(file_name)) {
+ setErrorMessage("Failed to delete survey data file");
+ return 1;
+ }
+ return 0;
}
diff --git a/FileName.h b/FileName.h
new file mode 100644
index 0000000..745981d
--- /dev/null
+++ b/FileName.h
@@ -0,0 +1,6 @@
+#ifndef __FILENAME_H__
+#define __FILENAME_H__
+
+extern char* file_name;
+
+#endif
diff --git a/Mode/Mode.cpp b/Mode/Mode.cpp
index 68a1d0e..f6223d8 100644
--- a/Mode/Mode.cpp
+++ b/Mode/Mode.cpp
@@ -1,8 +1,6 @@
#include "Mode.h"
#include "MTSLog.h"
-const char* Mode::_file_name = "SurveyData.txt";
-
/*
* union for converting from 16- bit to 2 8-bit values
*/
@@ -38,8 +36,8 @@ bool Mode::deleteDataFile() {
// if survey data file exists, attempt to delete it
std::vector<mDot::mdot_file> files = _dot->listUserFiles();
for (std::vector<mDot::mdot_file>::iterator it = files.begin(); it != files.end(); it++)
- if (it->name == _file_name) {
- if (! _dot->deleteUserFile(_file_name))
+ if (it->name == file_name) {
+ if (! _dot->deleteUserFile(file_name))
ret = false;
break;
}
@@ -120,7 +118,7 @@ bool Mode::appendDataFile(const DataItem& data) {
return false;
}
- if (! _dot->appendUserFile(_file_name, (void*)main_buf, size)) {
+ if (! _dot->appendUserFile(file_name, (void*)main_buf, size)) {
logError("failed to write survey data to file");
return false;
} else {
@@ -165,7 +163,7 @@ uint32_t Mode::getIndex(DataType type) {
else
search = 'S';
- file = _dot->openUserFile(_file_name, mDot::FM_RDONLY);
+ file = _dot->openUserFile(file_name, mDot::FM_RDONLY);
if (file.fd < 0) {
logError("failed to open survey data file");
} else {
diff --git a/Mode/Mode.h b/Mode/Mode.h
index ce4890f..61687f1 100644
--- a/Mode/Mode.h
+++ b/Mode/Mode.h
@@ -9,6 +9,7 @@
#include "ISL29011.h"
#include "MMA845x.h"
#include "MPL3115A2.h"
+#include "FileName.h"
class Mode {
public:
@@ -59,7 +60,6 @@ class Mode {
LoRaHandler* _lora;
GPSPARSER* _gps;
osThreadId _main_id;
- static const char* _file_name;
uint32_t _index;
uint8_t _band;
uint8_t _sub_band;
diff --git a/Mode/ModeSingle.cpp b/Mode/ModeSingle.cpp
index bc2cb4f..326ba1d 100644
--- a/Mode/ModeSingle.cpp
+++ b/Mode/ModeSingle.cpp
@@ -30,7 +30,7 @@ bool ModeSingle::start() {
// see if survey data file exists
std::vector<mDot::mdot_file> files = _dot->listUserFiles();
for (std::vector<mDot::mdot_file>::iterator it = files.begin(); it != files.end(); it++) {
- if (strcmp(it->name, _file_name) == 0) {
+ if (strcmp(it->name, file_name) == 0) {
logInfo("found survey data file");
data_file = true;
break;
@@ -95,7 +95,7 @@ bool ModeSingle::start() {
case confirm:
_state = show_help;
logInfo("deleting survey data file");
- _dot->deleteUserFile(_file_name);
+ _dot->deleteUserFile(file_name);
_index = 0;
displayHelp();
break;
diff --git a/Mode/ModeSweep.cpp b/Mode/ModeSweep.cpp
index 2ac495f..12dbd1e 100644
--- a/Mode/ModeSweep.cpp
+++ b/Mode/ModeSweep.cpp
@@ -54,7 +54,7 @@ bool ModeSweep::start() {
// see if survey data file exists
std::vector<mDot::mdot_file> files = _dot->listUserFiles();
for (std::vector<mDot::mdot_file>::iterator it = files.begin(); it != files.end(); it++) {
- if (strcmp(it->name, _file_name) == 0) {
+ if (strcmp(it->name, file_name) == 0) {
logInfo("found survey data file");
data_file = true;
break;
@@ -133,7 +133,7 @@ bool ModeSweep::start() {
case confirm:
_state = show_help;
logInfo("deleting survey data file");
- _dot->deleteUserFile(_file_name);
+ _dot->deleteUserFile(file_name);
_index = 1;
displayHelp();
break;
diff --git a/main.cpp b/main.cpp
index 3fdec38..c3b341a 100644
--- a/main.cpp
+++ b/main.cpp
@@ -21,6 +21,7 @@
#include "ModeSweep.h"
#include "ModeConfig.h"
// misc heders
+#include "FileName.h"
#include <string>
// LCD and backlight controllers
@@ -54,6 +55,8 @@ ModeConfig* modeConfig;
// Serial debug port
Serial debug(USBTX, USBRX);
+// Survey Data File
+char* file_name;
// Prototypes
void mainMenu();
@@ -64,6 +67,7 @@ void surveySweep();
int main() {
debug.baud(115200);
+ file_name = "SurveyData.txt";
lcd = new DOGS102(lcd_spi, lcd_spi_cs, lcd_cd);
lcd_backlight = new NCP5623B(backlight_i2c);