Explorar o código

change modulecomm, solve some warning.

yuchuli %!s(int64=3) %!d(string=hai) anos
pai
achega
f31ba59539

+ 4 - 4
src/common/modulecomm/inter/intercomm.cpp

@@ -129,7 +129,7 @@ intercomm::~intercomm()
         p->mMutexUnit.lock();
         InterListenUnit * plisten = (InterListenUnit *)mplistenunit;
         int i;
-        for(i=0;i<p->mvectorlisten.size();i++)
+        for(i=0;i<(int)p->mvectorlisten.size();i++)
         {
             if(plisten == p->mvectorlisten.at(i))
             {
@@ -289,7 +289,7 @@ int intercomm::writemsg(const char *str, const unsigned int nSize)
 
     pinter->mMutexUnit.lock();
 
-    if(nSize > pinter->nbufsize)
+    if(nSize > (unsigned int)pinter->nbufsize)
     {
  //       qDebug("procsm::writemsg message size is very big");
 
@@ -314,7 +314,7 @@ WRITEMSG:
     pD = (char *)pinter->strdatabuf;pD = pD + sizeof(procinter_info) + pinter->nPacCount * sizeof(procinter_head);
     procinter_head * phh = (procinter_head *)pH;
     unsigned int nPac = mpinfo->mNext - mpinfo->mFirst;
-    if(nPac>=pinter->nPacCount)
+    if(nPac>=(unsigned int)pinter->nPacCount)
     {
         unsigned int nRemove = pinter->nPacCount/3;
         if(nRemove == 0)nRemove = 1;
@@ -333,7 +333,7 @@ WRITEMSG:
     }
     else
     {
-        if(((phh+nPac-1)->mnPos+(phh+nPac-1)->mnLen + nSize)>=pinter->nbufsize)
+        if(((phh+nPac-1)->mnPos+(phh+nPac-1)->mnLen + nSize)>=(unsigned int)pinter->nbufsize)
         {
             unsigned int nRemove = pinter->nPacCount/2;
             if(nRemove == 0)nRemove = 1;

+ 5 - 0
src/common/modulecomm/modulecomm.cpp

@@ -78,6 +78,7 @@ void *  RegisterSend(const char * strcommname)
 void *  RegisterSend(const char * strcommname,const unsigned int nBufSize,const unsigned int nMsgBufCount,
                      ModuleComm_TYPE xmctype,const unsigned short nport)
 {
+    (void)nport;
 
     iv::modulecomm::ModeduleInfo * pmi = new iv::modulecomm::ModeduleInfo;
     pmi->mmctype = xmctype;
@@ -130,6 +131,8 @@ void *  RegisterSend(const char * strcommname,const unsigned int nBufSize,const
 void  *  RegisterRecv(const char * strcommname,SMCallBack pCall,ModuleComm_TYPE xmctype,const char * strip,
                       const unsigned short nPort)
 {
+    (void)strip;
+    (void)nPort;
     iv::modulecomm::ModeduleInfo * pmi = new iv::modulecomm::ModeduleInfo;
     pmi->mmctype = xmctype;
     pmi->mphandle = 0;
@@ -181,6 +184,8 @@ void *  RegisterRecvPlus(const char * strcommname,ModuleFun xFun,
                                                 ModuleComm_TYPE xmctype,const char * strip,
                          const unsigned short nPort)
 {
+    (void)strip;
+    (void)nPort;
     iv::modulecomm::ModeduleInfo * pmi = new iv::modulecomm::ModeduleInfo;
     pmi->mmctype = xmctype;
     pmi->mphandle = 0;

+ 11 - 11
src/common/modulecomm/modulecomm.h

@@ -45,14 +45,14 @@ enum ModuleComm_TYPE
     ModuleComm_UNDEFINE = 4
 };
 
-void * MODULECOMMSHARED_EXPORT RegisterSend(const char * strcommname);
+void *  RegisterSend(const char * strcommname);
 
 
-void * MODULECOMMSHARED_EXPORT RegisterSend(const char * strcommname,const unsigned int nBufSize,const unsigned int nMsgBufCount
+void *  RegisterSend(const char * strcommname,const unsigned int nBufSize,const unsigned int nMsgBufCount
                                             ,ModuleComm_TYPE xmctype,const unsigned short nport);
-void * MODULECOMMSHARED_EXPORT RegisterRecv(const char * strcommname,SMCallBack pCall,
+void *  RegisterRecv(const char * strcommname,SMCallBack pCall,
                                             ModuleComm_TYPE xmctype ,const char * strip,const unsigned short );
-void * MODULECOMMSHARED_EXPORT RegisterRecvPlus(const char * strcommname,ModuleFun xFun,
+void *  RegisterRecvPlus(const char * strcommname,ModuleFun xFun,
                                                 ModuleComm_TYPE xmctype,const char * strip,const unsigned short );
 
 
@@ -63,14 +63,14 @@ void * MODULECOMMSHARED_EXPORT RegisterRecvPlus(const char * strcommname,ModuleF
 //void * MODULECOMMSHARED_EXPORT RegisterRecvPlus(const char * strcommname,ModuleFun xFun,
 //                                                ModuleComm_TYPE xmctype = ModuleComm_UNDEFINE,const char * strip = 0,const unsigned short = 5100);
 
-void MODULECOMMSHARED_EXPORT ModuleSendMsg(void * pHandle,const char * strdata,const unsigned int nDataLen);
-void MODULECOMMSHARED_EXPORT Unregister(void * pHandle);
-void MODULECOMMSHARED_EXPORT PauseComm(void * pHandle);
-void MODULECOMMSHARED_EXPORT ContintuComm(void * pHandle);
+void  ModuleSendMsg(void * pHandle,const char * strdata,const unsigned int nDataLen);
+void  Unregister(void * pHandle);
+void  PauseComm(void * pHandle);
+void  ContintuComm(void * pHandle);
 
-void * MODULECOMMSHARED_EXPORT RegisterSend(const char * strcommname,const unsigned int nBufSize,const unsigned int nMsgBufCount);
-void * MODULECOMMSHARED_EXPORT RegisterRecv(const char * strcommname,SMCallBack pCall);
-void * MODULECOMMSHARED_EXPORT RegisterRecvPlus(const char * strcommname,ModuleFun xFun);
+void *  RegisterSend(const char * strcommname,const unsigned int nBufSize,const unsigned int nMsgBufCount);
+void *  RegisterRecv(const char * strcommname,SMCallBack pCall);
+void *  RegisterRecvPlus(const char * strcommname,ModuleFun xFun);
 
 
 }

+ 58 - 68
src/common/modulecomm/shm/procsm.cpp

@@ -119,83 +119,21 @@ bool procsm::checkfailmark()
 
 procsm::procsm(const char * strsmname,const unsigned int nBufSize,const unsigned int nMaxPacCount,const int nMode)
 {
-//    mnBufSize = nBufSize;
-
-//    qDebug("create dbus");
-
-
-
     strncpy(mstrsmname,strsmname,256);
-
     mpASMPtr = new QSharedMemory(strsmname);
-
     mpthreadattmon = new std::thread(&procsm::threadAttachMon,this);
 
+    char strasmname[300];
 
-    char strasmname[256];
-
-    bool bSMExit = false;
 
     if(nMode == ModeWrite)
     {
-        bool bres;
-//        if(checkfailmark())
-//        {
-//            bres = false;
-//        }
-//        else
-//        {
-//            bres = mpASMPtr->attach();
-//        }
-//        if(bres == false)
-//        {
-//            mpASMPtr->create(sizeof(ASM_PTR));
-
-//        }
-
-        bres = mpASMPtr->create(sizeof(ASM_PTR));
-        if(bres == true)
+        int nrtn = CreateASMPTR(strasmname,nBufSize,nMaxPacCount);
+        if(nrtn<0)
         {
-            std::cout<<"\033[1m\033[32m"<<mstrsmname<<" create successfully."<<"\033[0m"<<std::endl;
-        }
-        else
-        {
-            bres = mpASMPtr->attach();
-            if(bres == true)
-            {
-                bSMExit = true;
-                std::cout<<"\033[1m\033[32m"<<mstrsmname<<" exist. attach successfully."<<"\033[0m"<<std::endl;
-            }
-            else
-            {
-                return;
-            }
-        }
-
-        ASM_PTR * pasm = (ASM_PTR *)mpASMPtr->data();
-        if(pasm == NULL)
-        {
-            qDebug("ASM_PTR is NULL.");
+            std::cout<<"CreateASMPTR Fail."<<std::endl;
             return;
         }
-        if(bSMExit == false)
-        {
-            qint64 uptime = std::chrono::system_clock::now().time_since_epoch().count();
-            snprintf(strasmname,256,"%s_%lld",strsmname,uptime);
-            mpASMPtr->lock();
-            pasm->mnshmsize = sizeof(procsm_info)+nMaxPacCount*sizeof(procsm_head) + nBufSize;
-            pasm->mnUpdateTime = uptime;
-            strncpy(pasm->mstrshmname,strasmname,256);
-            mpASMPtr->unlock();
-        }
-        else
-        {
-            mpASMPtr->lock();
-            pasm->mnUpdateTime = std::chrono::system_clock::now().time_since_epoch().count();
-            strncpy(strasmname,pasm->mstrshmname,256);
-            mpASMPtr->unlock();
-        }
-        mASM_State = *pasm;
     }
     else
     {
@@ -391,6 +329,58 @@ procsm::~procsm()
 
 }
 
+int procsm::CreateASMPTR(char * strasmname,const unsigned int nBufSize,const unsigned int nMaxPacCount)
+{
+    bool bSMExit = false;
+    bool bres;
+
+    bres = mpASMPtr->create(sizeof(ASM_PTR));
+    if(bres == true)
+    {
+        std::cout<<"\033[1m\033[32m"<<mstrsmname<<" create successfully."<<"\033[0m"<<std::endl;
+    }
+    else
+    {
+        bres = mpASMPtr->attach();
+        if(bres == true)
+        {
+            bSMExit = true;
+            std::cout<<"\033[1m\033[32m"<<mstrsmname<<" exist. attach successfully."<<"\033[0m"<<std::endl;
+        }
+        else
+        {
+            std::cout<<"Attach Fail."<<std::endl;
+            return -1;
+        }
+    }
+
+    ASM_PTR * pasm = (ASM_PTR *)mpASMPtr->data();
+    if(pasm == NULL)
+    {
+        std::cout<<"ASM_PTR is NULL."<<std::endl;
+        return -1;
+    }
+    if(bSMExit == false)
+    {
+        qint64 uptime = std::chrono::system_clock::now().time_since_epoch().count();
+        snprintf(strasmname,300,"%s_%lld",mstrsmname,uptime);
+        mpASMPtr->lock();
+        pasm->mnshmsize = sizeof(procsm_info)+nMaxPacCount*sizeof(procsm_head) + nBufSize;
+        pasm->mnUpdateTime = uptime;
+        strncpy(pasm->mstrshmname,strasmname,256);
+        mpASMPtr->unlock();
+    }
+    else
+    {
+        mpASMPtr->lock();
+        pasm->mnUpdateTime = std::chrono::system_clock::now().time_since_epoch().count();
+        strncpy(strasmname,pasm->mstrshmname,256);
+        mpASMPtr->unlock();
+    }
+    mASM_State = *pasm;
+    return 0;
+}
+
 void procsm::recreateasm(int nbufsize)
 {
 
@@ -400,9 +390,9 @@ void procsm::recreateasm(int nbufsize)
 
     mnBufSize = std::max(nbufsize*11/10,nbufsize+1000);
  //   mnBufSize = nbufsize+100;
-    char strasmname[256];
+    char strasmname[300];
     ASM_PTR * pasm = (ASM_PTR *)mpASMPtr->data();
-    snprintf(strasmname,256,"%s_%lld",mstrsmname,std::chrono::system_clock::now().time_since_epoch().count());//QDateTime::currentMSecsSinceEpoch());
+    snprintf(strasmname,300,"%s_%lld",mstrsmname,(long long)std::chrono::system_clock::now().time_since_epoch().count());//QDateTime::currentMSecsSinceEpoch());
     pasm->mnshmsize = sizeof(procsm_info)+mnMaxPacCount*sizeof(procsm_head) + mnBufSize;
     pasm->mnUpdateTime = std::chrono::system_clock::now().time_since_epoch().count();
     strncpy(pasm->mstrshmname,strasmname,256);

+ 5 - 2
src/common/modulecomm/shm/procsm.h

@@ -57,6 +57,7 @@ public:
 public:
     void SetDate(QDateTime dt)
     {
+        (void)dt;
 //        mYear = dt.date().year();
 //        mMonth = dt.date().month();
 //        mDay = dt.date().day();
@@ -67,6 +68,7 @@ public:
     }
     void GetDate(QDateTime * pdt)
     {
+        (void)pdt;
 //        QDate dt;
 //        dt.setDate(mYear,mMonth,mDay);
 //        QTime time;
@@ -130,14 +132,15 @@ private:
 #endif
 #endif
 
+private:
+    int CreateASMPTR(char * strasmname,const unsigned int nBufSize,const unsigned int nMaxPacCount);
+
 private:
     int checkasm();
     void recreateasm(int nbufsize);
 
 private:
     char mstrsmname[256];
-
-private:
     bool mbInitComplete = false;
     void threadAttachMon();
     bool mbAttachRun = true;

+ 2 - 2
src/common/modulecomm/shm/procsm_if.cpp

@@ -546,7 +546,7 @@ void procsm_if::ThreadGroupRecv()
 qint64 procsm_if::CalcKey(const char *strsmname)
 {
     qint64 xkey = 0;
-    unsigned int i;
+    int i;
     int nlen = strnlen(strsmname,256);
     for(i=0;i<nlen;i++)
     {
@@ -562,7 +562,7 @@ qint64 procsm_if::CalcKey(const char *strsmname)
         xkey = xkey + temp;
         if(i>=3)break;
     }
-    for(i=0;i<strnlen(strsmname,256);i++)
+    for(i=0;i<(int)strnlen(strsmname,256);i++)
     {
         qint64 temp = *(strsmname+i);
         xkey = xkey + temp;