Add missing const, remove casts in BC_QRCoderErrorCorrectionLevel

Review-Url: https://codereview.chromium.org/2053043004
diff --git a/xfa/fxbarcode/qrcode/BC_QRCoderErrorCorrectionLevel.cpp b/xfa/fxbarcode/qrcode/BC_QRCoderErrorCorrectionLevel.cpp
index c6a81fa..a5450cf 100644
--- a/xfa/fxbarcode/qrcode/BC_QRCoderErrorCorrectionLevel.cpp
+++ b/xfa/fxbarcode/qrcode/BC_QRCoderErrorCorrectionLevel.cpp
@@ -30,33 +30,25 @@
 CBC_QRCoderErrorCorrectionLevel::CBC_QRCoderErrorCorrectionLevel(
     int32_t ordinal,
     int32_t bits,
-    FX_CHAR* name) {
-  m_name += name;
-  m_ordinal = ordinal;
-  m_bits = bits;
-}
+    const FX_CHAR* name)
+    : m_ordinal(ordinal), m_bits(bits), m_name(name) {}
+
 CBC_QRCoderErrorCorrectionLevel::~CBC_QRCoderErrorCorrectionLevel() {}
+
 void CBC_QRCoderErrorCorrectionLevel::Initialize() {
-  L = new CBC_QRCoderErrorCorrectionLevel(0, 0x01, (FX_CHAR*)"L");
-  M = new CBC_QRCoderErrorCorrectionLevel(1, 0x00, (FX_CHAR*)"M");
-  Q = new CBC_QRCoderErrorCorrectionLevel(2, 0x03, (FX_CHAR*)"Q");
-  H = new CBC_QRCoderErrorCorrectionLevel(3, 0x02, (FX_CHAR*)"H");
+  L = new CBC_QRCoderErrorCorrectionLevel(0, 0x01, "L");
+  M = new CBC_QRCoderErrorCorrectionLevel(1, 0x00, "M");
+  Q = new CBC_QRCoderErrorCorrectionLevel(2, 0x03, "Q");
+  H = new CBC_QRCoderErrorCorrectionLevel(3, 0x02, "H");
 }
+
 void CBC_QRCoderErrorCorrectionLevel::Finalize() {
   delete L;
   delete M;
   delete Q;
   delete H;
 }
-int32_t CBC_QRCoderErrorCorrectionLevel::Ordinal() {
-  return m_ordinal;
-}
-int32_t CBC_QRCoderErrorCorrectionLevel::GetBits() {
-  return m_bits;
-}
-CFX_ByteString CBC_QRCoderErrorCorrectionLevel::GetName() {
-  return m_name;
-}
+
 CBC_QRCoderErrorCorrectionLevel* CBC_QRCoderErrorCorrectionLevel::ForBits(
     int32_t bits) {
   switch (bits) {
diff --git a/xfa/fxbarcode/qrcode/BC_QRCoderErrorCorrectionLevel.h b/xfa/fxbarcode/qrcode/BC_QRCoderErrorCorrectionLevel.h
index 9b3a256..a5fdb08 100644
--- a/xfa/fxbarcode/qrcode/BC_QRCoderErrorCorrectionLevel.h
+++ b/xfa/fxbarcode/qrcode/BC_QRCoderErrorCorrectionLevel.h
@@ -10,26 +10,32 @@
 #include "core/fxcrt/include/fx_string.h"
 
 class CBC_QRCoderErrorCorrectionLevel {
- private:
-  int32_t m_ordinal;
-  int32_t m_bits;
-  CFX_ByteString m_name;
-  CBC_QRCoderErrorCorrectionLevel(int32_t ordinal, int32_t bits, FX_CHAR* name);
-  CBC_QRCoderErrorCorrectionLevel();
-
  public:
   static CBC_QRCoderErrorCorrectionLevel* L;
   static CBC_QRCoderErrorCorrectionLevel* M;
   static CBC_QRCoderErrorCorrectionLevel* Q;
   static CBC_QRCoderErrorCorrectionLevel* H;
-  virtual ~CBC_QRCoderErrorCorrectionLevel();
+
   static void Initialize();
   static void Finalize();
-  int32_t Ordinal();
-  int32_t GetBits();
-  CFX_ByteString GetName();
   static void Destroy();
   static CBC_QRCoderErrorCorrectionLevel* ForBits(int32_t bits);
+
+  ~CBC_QRCoderErrorCorrectionLevel();
+
+  int32_t Ordinal() const { return m_ordinal; }
+  int32_t GetBits() const { return m_bits; }
+  CFX_ByteString GetName() const { return m_name; }
+
+ private:
+  CBC_QRCoderErrorCorrectionLevel(int32_t ordinal,
+                                  int32_t bits,
+                                  const FX_CHAR* name);
+  CBC_QRCoderErrorCorrectionLevel();
+
+  int32_t m_ordinal;
+  int32_t m_bits;
+  CFX_ByteString m_name;
 };
 
 #endif  // XFA_FXBARCODE_QRCODE_BC_QRCODERERRORCORRECTIONLEVEL_H_