+class BlockTypeRegistry {
+
+public:
+ BlockTypeRegistry();
+
+public:
+ int Add(const BlockType &);
+
+ BlockType *operator [](int id) { return &types[id]; }
+ const BlockType *Get(int id) const { return &types[id]; }
+
+private:
+ std::vector<BlockType> types;
+
+};
+
+