chenluhua1980
2026-01-23 08fc60deca0fa2a0658a676d9dd76e0e69436312
SourceCode/Bond/Servo/CVariable.cpp
@@ -7,6 +7,7 @@
   {
      m_nVarialbeId = 0;
      m_format = SVFromat::U1;
      m_nValue = 0;
   }
   CVariable::CVariable(const char* pszId, const char* pszName, const char* pszFormat, const char* pszRemark)
@@ -42,6 +43,9 @@
      if (_strcmpi("A20", pszFormat) == 0) {
         return SVFromat::A20;
      }
      if (_strcmpi("L", pszFormat) == 0) {
         return SVFromat::L;
      }
      return SVFromat::U1;
   }
@@ -63,6 +67,9 @@
      }
      if (SVFromat::A20 == format) {
         return "A20";
      }
      if (SVFromat::L == format) {
         return "L";
      }
      return "U1";
@@ -87,4 +94,60 @@
   {
      return m_strRemark;
   }
   void CVariable::setValue(__int64 value)
   {
      if (m_format == SVFromat::U1 || m_format == SVFromat::U2 || m_format == SVFromat::I2) {
         m_nValue = value;
      }
   }
   void CVariable::setValue(const char* pszValue)
   {
      std::string strTemp = pszValue;
      if (m_format == SVFromat::A20) {
         if (strTemp.length() > 20) {
            strTemp = strTemp.substr(0, 20);
         }
      }
      else if (m_format == SVFromat::A50) {
         if (strTemp.length() > 50) {
            strTemp = strTemp.substr(0, 50);
         }
      }
      m_strValue = strTemp;
   }
   void CVariable::setValue(std::vector<CVariable>& vars)
   {
      m_varsValue = vars;
   }
   std::string CVariable::getValue()
   {
      std::string strRet;
      if (m_format == SVFromat::U1 || m_format == SVFromat::U2 || m_format == SVFromat::I2) {
         strRet = std::to_string(m_nValue);
      }
      else if(m_format == SVFromat::A20 || m_format == SVFromat::A50) {
         strRet = m_strValue;
      }
      return strRet;
   }
   __int64 CVariable::getIntValue()
   {
      if (m_format == SVFromat::U1 || m_format == SVFromat::U2 || m_format == SVFromat::I2) {
         return m_nValue;
      }
      return 0;
   }
   std::vector<CVariable>& CVariable::getVarsValue()
   {
      return m_varsValue;
   }
}