Skip to content

bill-egert/proto2cpp

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Doxygen filter for Google Protocol Buffers .proto files

How to enable this filter in Doxygen:

  1. Generate Doxygen configuration file with command 'doxygen -g ': e.g. doxygen -g doxyfile
  2. In the Doxygen configuration file, find FILE_PATTERNS and add *.proto: FILE_PATTERNS = *.proto
  3. In the Doxygen configuration file, find EXTENSION_MAPPING and add proto=C++: EXTENSION_MAPPING = proto=C++
  4. In the Doxygen configuration file, find INPUT_FILTER and add this script: INPUT_FILTER = "python proto2cpp.py"
  5. Run Doxygen with the modified configuration: doxygen doxyfile

Following change is recommended by Timo Marjoniemi but must not be used: In the Doxygen configuration file, find JAVADOC_AUTOBRIEF and set it enabled: JAVADOC_AUTOBRIEF = YES

Version history

0.8-beta (2018-12-09) OSI

0.7-beta (2018-04-19) OSI

  • Include changes from University of California.
  • Support for all OSI *.proto files.
  • Separate statement and comments to treat both parts differently (remove bugs regarding string modifications).
  • Remove "option" statements.
  • Add support for "extend" statements.
  • Change "repeat" from Template to standard member. --> Better collaboration diagrams.
  • Fix problems with references of nested messages (replace "." with "::").
  • Change mapping from C to C++.
  • Bugfix and extensions have been made by Open Simulation Interface (OSI) Carsten Kuebler https://github.com/OpenSimulationInterface

0.6-beta (2015-07-27)

  • made output to be more compact by removing extra empty lines and not moving member comments before the member but keeping it after the member instead
    • these changes lead into need of enabling JAVADOC_AUTOBRIEF
  • added steps for enabling the filter in Doxygen in this file

0.5-beta (2014-11-16)

  • fixed enum ending to have semicolon to have proper enum syntax in struct (thanks to m47iast for pointing this out)

0.4-beta (2013-08-29)

  • 'classified' proto2cpp and updated documentation to make the script itself Doxygen compatible
  • changed all print statements to print() functions
    • 64-bit Python v3.3.1 running on 64-bit Windows 7 Home Premium did not automatically convert print statements to print() functions but instead raised a syntax error
  • made a change so that .proto files are converted before printing and other files are printed to stdout as is
    • this allows using the filter with multiple file types

0.3-alpha (2013-01-29)

  • moved .proto file parsing logic to another function
  • added comments to the file

0.2-pre-alpha (2012-06-15)

  • added support for enums

0.1-pre-alpha (2012-06-13)

  • initial version

Copyright

Version 0.7-beta -

Extensions for Open Simulation Interface - License MIT

Version 0.7-beta

Copyright (C) 2016 Regents of the University of California https://github.com/vgteam/vg

Version 0.1-beta - 0.6-beta

Copyright (C) 2012-2015 Timo Marjoniemi https://sourceforge.net/p/proto2cpp/wiki/Home/

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%