generate C++ interface header, proxy and stub headers and sources.
diff --git a/EnumType.h b/EnumType.h
index 7f44d59..a0d866a 100644
--- a/EnumType.h
+++ b/EnumType.h
@@ -4,7 +4,7 @@
 
 #include "NamedType.h"
 
-#include <utils/Vector.h>
+#include <vector>
 
 namespace android {
 
@@ -13,6 +13,9 @@
 
     void dump(Formatter &out) const;
 
+    std::string name() const;
+    const char *value() const;
+
 private:
     std::string mName;
     const char *mValue;
@@ -22,13 +25,25 @@
 
 struct EnumType : public NamedType {
     EnumType(const char *name,
-             Vector<EnumValue *> *values,
+             std::vector<EnumValue *> *values,
              Type *storageType = NULL);
 
     void dump(Formatter &out) const override;
 
+    std::string getCppType(StorageMode mode, std::string *extra) const override;
+
+    void emitReaderWriter(
+            Formatter &out,
+            const std::string &name,
+            const std::string &parcelObj,
+            bool parcelObjIsPointer,
+            bool isReader,
+            ErrorMode mode) const override;
+
+    status_t emitTypeDeclarations(Formatter &out) const override;
+
 private:
-    Vector<EnumValue *> *mValues;
+    std::vector<EnumValue *> *mValues;
     Type *mStorageType;
 
     DISALLOW_COPY_AND_ASSIGN(EnumType);