pansen
2018-12-19 9d1c4cec973ed6395e25a8c0fe5a8a551f30e146
QiaoJiaSystem/VideoAnalysFromHC/RtspAnalysElement.cpp
@@ -68,6 +68,7 @@
}
void RtspAnalysElement::init() {
    appPref.setIntData("FaceTrackingRet", 1);
    auto lst = m_lDBTool->searchCamDevTableAll();
    auto lst_dev = m_lDBTool->searchConfigTableWithinServerInfo();
@@ -106,7 +107,7 @@
            vector<int> sdkDetCoVec = chnString2Vec(en_sdk.str_det_thr.toStdString());
            vector<int> sdkComCoVec = chnString2Vec(en_sdk.str_cmp_thr.toStdString());
            int camId=item.str_cam_dev_id.toInt();
            int camId = item.str_cam_dev_id.toInt();
            int t_size = sdkVec.size();
            for (int i = 0; i < t_size; i++) {
                switch (sdkVec[i]) {
@@ -116,6 +117,7 @@
                        SETSCORE(sdkDetCoVec, i, t_camIdex + "face.det");
                        SETSCORE(sdkComCoVec, i, t_camIdex + "face.cmp");
                        DBG(" TESTCODE " << sdkDetCoVec[i] << " " << sdkComCoVec[i]);
//                        #todo add param
                        break;
                    }
@@ -137,15 +139,15 @@
                        json["perimeter.enable"] = "1";
                        SETSCORE(sdkDetCoVec, i, t_camIdex + "perimeter.det");
                        SETSCORE(sdkComCoVec, i, t_camIdex + "perimeter.cmp");
                        setDataByType(4,json,camId);
                        setDataByType(4, json, camId);
                        break;
                      }
                    }
                    case 5: {
                        json["crowd.enable"] = "1";
                        SETSCORE(sdkDetCoVec, i, t_camIdex + "crowd.det");
                        SETSCORE(sdkComCoVec, i, t_camIdex + "crowd.cmp");
                        setDataByType(5,json,camId);
                        setDataByType(5, json, camId);
                        break;
                    }
                    case 6: {
@@ -153,7 +155,7 @@
                        json["keepRight.enable"] = "1";
                        SETSCORE(sdkDetCoVec, i, t_camIdex + "keepRight.det");
                        SETSCORE(sdkComCoVec, i, t_camIdex + "keepRight.cmp");
                        setDataByType(6,json,camId);
                        setDataByType(6, json, camId);
                        break;
                    }
                }
@@ -266,39 +268,36 @@
    }
    return result;
}
void RtspAnalysElement::setDataByType(int type,Json::Value& json,int camId)
{
void RtspAnalysElement::setDataByType(int type, Json::Value &json, int camId) {
    switch (type) {
    case 4:
    {
        auto rule=m_lDBTool->searchPerimeterRuleByCamId(camId);
        json["perimeter.area"]=rule.strAreas.toStdString();
        json["perimeter.num"]=rule.nAlarmPeopleNum;
        json["perimeter.delay"]=rule.nTriggerDelay;
        json["perimeter.tolerance"]=rule.nTriggertolerance;
        break;
    }
    case 5:
    {
        auto rule=m_lDBTool->searchCrowdRuleByCamId(camId);
        json["crowd.area"]=rule.strAreas.toStdString();
        json["crowd.num"]=rule.nAlarmPeopleNum;
        json["crowd.delay"]=rule.nTriggerDelay;
        json["crowd.tolerance"]=rule.nTriggertolerance;
        break;
    }
    case 6:
    {
         auto rule=m_lDBTool->searchActRuleByCamId(camId);
         json["keepRight.leftArea"]=rule.strAreas.toStdString();
         json["keepRight.leftLine"]=rule.strLine.toStdString();
         json["keepRight.rightArea"]=rule.strExAreas.toStdString();
         json["keepRight.rightLine"]=rule.strExLine.toStdString();
         json["keepRight.delay"]=rule.nTriggerDelay;
         json["keepRight.tolerance"]=rule.nTriggertolerance;
        break;
    }
    default:
        break;
        case 4: {
            auto rule = m_lDBTool->searchPerimeterRuleByCamId(camId);
            json["perimeter.area"] = rule.strAreas.toStdString();
            json["perimeter.num"] = rule.nAlarmPeopleNum;
            json["perimeter.delay"] = rule.nTriggerDelay;
            json["perimeter.tolerance"] = rule.nTriggertolerance;
            break;
        }
        case 5: {
            auto rule = m_lDBTool->searchCrowdRuleByCamId(camId);
            json["crowd.area"] = rule.strAreas.toStdString();
            json["crowd.num"] = rule.nAlarmPeopleNum;
            json["crowd.delay"] = rule.nTriggerDelay;
            json["crowd.tolerance"] = rule.nTriggertolerance;
            break;
        }
        case 6: {
            auto rule = m_lDBTool->searchActRuleByCamId(camId);
            json["keepRight.leftArea"] = rule.strAreas.toStdString();
            json["keepRight.leftLine"] = rule.strLine.toStdString();
            json["keepRight.rightArea"] = rule.strExAreas.toStdString();
            json["keepRight.rightLine"] = rule.strExLine.toStdString();
            json["keepRight.delay"] = rule.nTriggerDelay;
            json["keepRight.tolerance"] = rule.nTriggertolerance;
            break;
        }
        default:
            break;
    }
}