Google のプロトコル バッファに出くわしました。これは、私が書いている C++ バックエンド アプリケーションのソリューションのようです。問題は、ベクトル型に関するものが見つからないようです。ドキュメントには Repeated_types が記載されていますが、何も見つからないようです。
これらのクラスのセットがあるとします:
class UnifiedBinaryHeader
{
public:
UnifiedBinaryHeader();
void Serialize(std::ostream& output) const;
void Deserialize(std::istream& input);
private:
wxString m_name;
wxDateTime m_time;
};
struct UnifiedBinaryRow
{
wxDateTime date;
float value;
UnifiedBinaryRow()
{
value= 0;
}
void Serialize(std::ostream& output) const;
void Deserialize(std::istream& input);
};
class UnifiedBinaryRowCollection
{
private:
typedef std::vector<UnifiedBinaryRow> UnifiedBinaryRowVector;
public:
typedef UnifiedBinaryRowVector::iterator iterator;
typedef UnifiedBinaryRowVector::const_iterator const_iterator;
UnifiedBinaryRowCollection();
iterator begin();
const_iterator begin() const;
iterator end();
const_iterator end() const;
UnifiedBinaryRowCollection& AddRow(const UnifiedBinaryRow& row);
size_t NumRows() const;
private:
UnifiedBinaryRowVector m_rows;
};
class UnifiedBinaryFormat
{
public:
UnifiedBinaryFormat();
UnifiedBinaryHeader& Header();
const UnifiedBinaryHeader& Header() const;
UnifiedBinaryFormat& Header(UnifiedBinaryHeader& header);
UnifiedBinaryRowCollection& Rows();
const UnifiedBinaryRowCollection& Rows() const;
UnifiedBinaryFormat& Rows(const UnifiedBinaryRowCollection& rows);
void Serialize(std::ostream& output) const;
void Deserialize(std::istream& input);
private:
UnifiedBinaryHeader m_header;
UnifiedBinaryRowCollection m_rows;
};
ベクトルである多くのメンバーを使用しているため、これらのクラスの .proto ファイルを作成するにはどうすればよいですか。これらのクラスを私が使用できる .proto ファイルに「移植」する際の助けをいただければ幸いです。