houxiao
2017-07-19 a88fc40a16cefc8248baa4b6aab7b7577e0ba4cc
RtspFace/PL_Paint.h
@@ -22,7 +22,8 @@
   PLPLC_PEN,
   PLPLC_RECT,
   PLPLC_TEXT,
    PLPLC_WTEXT,
   PLPLC_WTEXT,
   PLPLC__LAST
};
@@ -32,19 +33,20 @@
   float val_f;
   char val_s[10];
    PLPLType() : val_i(0) {}
    PLPLType(int _val_i) : val_i(_val_i) {}
    PLPLType(float _val_f) : val_f(_val_f) {}
    PLPLType(const char* _val_s)
    {
        for (int i = 0; i < sizeof(val_s); i++)
            val_s[i] = _val_s[i];
    }
    PLPLType(const wchar_t* _val_s)
    {
        for (int i = 0; i < sizeof(val_s); i++)
            val_s[i] = _val_s[i];
    }
   PLPLType() : val_i(0) {}
   PLPLType(int _val_i) : val_i(_val_i) {}
   PLPLType(float _val_f) : val_f(_val_f) {}
   PLPLType(const char* _val_s)
   {
      for (int i = 0; i < sizeof(val_s); i++)
         val_s[i] = _val_s[i];
   }
   PLPLType(const wchar_t* _val_s)
   {
      wchar_t* w_val_s = (wchar_t*)val_s;
      for (int i = 0; i < sizeof(val_s) / sizeof(wchar_t); i++)
         w_val_s[i] = _val_s[i];
   }
};
typedef std::vector<PLPLCmd> plplc_vec_t;
@@ -55,30 +57,27 @@
   plplc_vec_t cmds;
   plplt_vec_t params;
    PLGH_Color_RGBA color_front;
    PLGH_Color_RGBA color_back;
    int fill;
    PLGH_Pen pen;
    void* cvxText;
    PLPLContext() :
            cmds(), params(), color_front(), color_back(), fill(0), pen(0, 0), cvxText(nullptr)
    {}
   PLGH_Color_RGBA color_front;
   PLGH_Color_RGBA color_back;
   int fill;
   PLGH_Pen pen;
   void* cvxText;
    ~PLPLContext()
    {
        delete(cvxText);
        cvxText = nullptr;
    }
   PLPLContext() :
      cmds(), params(), color_front(), color_back(), fill(0), pen(0, 0), cvxText(nullptr)
   {}
   ~PLPLContext();
};
struct PL_Paint_Config
{
   bool copyData;
   PLPLContext* plplCtx;
    std::string fontPath;
   std::string fontPath;
   
   PL_Paint_Config() : 
      copyData(false), plplCtx(nullptr), fontPath()
      copyData(false), plplCtx(nullptr), fontPath(" ")
   { }
};