fctom1215
2020-02-21 4581cc42ba485366603ca8e3f61183f6a50ad72f
lib/src/main/cpp/master/comm_if.cpp
@@ -45,12 +45,14 @@
#define ID_SM_RTK_BRIEF         0x000B
#define ID_SM_EXAM_BRIEF         0x000C
#define ID_SM_ENTER_MAP         0x000D
#define ID_MS_EXAM_MAP          0x800D
#define ID_SM_CAR               0x000E
#define ID_SM_RTCM_IND           0x000F
#define ID_SM_DEBUG_INFO        0x0010
#define ID_MS_FILE              0x8100
#define ID_MS_READ_CARD         0x800F
#define ID_SM_PUT_CARD          0x000F
#define ID_MS_SYS_SHUTDOWN      0x8010
#define MA_OUT_GPS_BRIEF        0x0001
#define MA_OUT_RTK_BRIEF        0x0002
@@ -706,6 +708,19 @@
            }
            break;
        }
        case ID_MS_EXAM_MAP: {
            Document doc;
            doc.Parse(value);
            if (!doc.HasParseError()) {
                if (doc.HasMember("map_id") && doc.HasMember("exam")) {
                    Value& s = doc["map_id"];
                    Value& s2 = doc["exam"];
                    StartMapExam(s.GetInt(), s2.GetInt());
                }
            }
            break;
        }
        case ID_MS_IND_ONOFF: {
            Document doc;
            doc.Parse(value);
@@ -723,6 +738,24 @@
            ReadCard();
            break;
        }
        case ID_MS_SYS_SHUTDOWN: {
            Document doc;
            doc.Parse(value);
            if (!doc.HasParseError()) {
                int event = 0, timeout = 15;
                if (doc.HasMember("event")) {
                    Value& s = doc["event"];
                    event = s.GetInt();
                }
                if (doc.HasMember("timeout")) {
                    Value& s = doc["timeout"];
                    timeout = s.GetInt();
                }
                SystemShutdown(event, timeout);
            }
            break;
        }
        default:break;
    }
}
@@ -738,3 +771,18 @@
            break;
    }
}
void MA_EnterMap(int map_id, int enter)
{
    StringBuffer sb;
    Writer<StringBuffer> writer(sb);
    writer.StartObject();
    writer.Key("map_id");
    writer.Int(map_id);
    writer.Key("enter");
    writer.Int(enter);
    writer.EndObject();
    SendMsgToMainProc(ID_SM_ENTER_MAP, sb.GetString());
}