• Stars
    star
    123
  • Rank 290,145 (Top 6 %)
  • Language
    Python
  • License
    Other
  • Created almost 6 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

DEPRECATED: use cxxheaderparser instead

robotpy-cppheaderparser

Build Status

CppHeaderParser is a pure python C++ header parser that parses C++ headers and creates a data structure that you can use to do many types of things. Weโ€™ve found it particularly useful for creating programs that generate python wrappers around existing C++ programs.

robotpy-cppheaderparser is a fork of the CppHeaderParser library originally created by @senex. CppHeaderParser is an excellent library and critical to some of the stuff we do in the RobotPy project. Unfortunately, the maintainer seems to be busy, so robotpy-cppheaderparser was born.

We aim to maintain (some) compatibility with the existing code and make improvements and bugfixes as we need them -- though some decisions made early on in this code's development means some compatibility may be broken as things get fixed.

If you find an bug, we encourage you to submit a pull request! New changes will only be accepted if there are tests to cover the change you made (and if they donโ€™t break existing tests).

Note

CppHeaderParser only does some very minimal interpretation of preprocessor directives -- and we're looking at removing some of that from this library. If you need anything complex, you should preprocess the code yourself. You can use the excellent pure python preprocessor pcpp, or the preprocessing facilities provided by your favorite compiler.

Documentation

Documentation can be found at https://cppheaderparser.readthedocs.io

Install

pip install robotpy-cppheaderparser

License

BSD License

Authors

Originally developed by Jashua Cloutier, this fork is maintained by the RobotPy project.

Past contributors include:

  • Jashua Cloutier
  • Chris Love
  • HartsAntler

More Repositories

1

robotpy-wpilib

Moved to https://github.com/robotpy/mostrobotpy
Python
169
star
2

cxxheaderparser

Modern pure python C++ header parser
Python
91
star
3

pynetworktables

Pure python implementation of the FRC NetworkTables protocol
Python
60
star
4

pyfrc

python3 library designed to make developing RobotPy-based code easier!
Python
50
star
5

pynetworktables2js

Forwards NetworkTables traffic to a web page, allowing you to write custom dashboards for your robot using HTML/Javascript
JavaScript
46
star
6

examples

Repository of RobotPy example projects
Python
44
star
7

robotpy-crio

Obsolete. Python 3 port for cRIO for use in the FIRST Robotics Competition (FRC)
C
43
star
8

roborio-vm

Scripts to create QEMU virtual machine from the RoboRIO image file
Shell
40
star
9

robotpy-build

(mostly) automated C++ wrapping for Python
Python
35
star
10

robotpy-cscore

Moved to https://github.com/robotpy/mostrobotpy
C++
17
star
11

roborio-opencv

Scripts to build OpenCV for the RoboRIO
Shell
13
star
12

robotpy-ctre

RobotPy wrappers for CTRE Phoenix 5 library
Python
13
star
13

robotpy-wpilib-utilities

Useful utility functions/objects for RobotPy
Python
11
star
14

pynivision

Archived obsolete python wrappers for NI Vision (nivision)
Python
11
star
15

robotpy-docs

Unified documentation for RobotPy
Python
10
star
16

mostrobotpy

Official Repository of python implementation of WPILib components
C++
9
star
17

robotpy-rev

RobotPy bindings for REV Robotics' REVLib
Python
9
star
18

pynetconsole

Python package to view the console output of FRC robots
Python
8
star
19

pyrobottraining

Teaches students Robot programming in python by having them create code that passes the unit tests
Python
7
star
20

robotpy-websim

OBSOLETE: Experimental robot simulation html interface
JavaScript
6
star
21

roborio-packages

Build files for RobotPy ipk packages
Python
6
star
22

robotpy-pathfinder

Python wrapper around Jaci's Pathfinder library
Python
6
star
23

robotpysim

Obsolete robot simulator
Python
5
star
24

robotpy-installer

RobotPy installer program
Python
5
star
25

robotpy-frcsim

Python package to connect a RobotPy robot to gazebo with the FRCSim plugins
Python
4
star
26

robotpy-eclipse-plugins

DEPRECATED: Eclipse plugins for RobotPy
Java
3
star
27

wpilib-cpp-crio

Fork of official C++ WPILib prior to 2015
C++
3
star
28

robotpy-navx

Python wrapper for NavX library
C++
3
star
29

fakearmv7l

LD_PRELOAD hook for uname to change the machine type
C
3
star
30

roborio-docker

Build files for roborio-based docker images
Shell
3
star
31

cmp-talk-2024

Slides for a talk given at the FIRST Robotics Championship on April 18, 2024
JavaScript
3
star
32

robotpy-apriltag

Moved to https://github.com/robotpy/mostrobotpy
Python
2
star
33

pyntcore

Moved to https://github.com/robotpy/mostrobotpy
Python
2
star
34

robotpy-playingwithfusion

RobotPy bindings for PWF hardware
Python
2
star
35

robotpy-meta

Provides 'pip install robotpy'
Python
2
star
36

robotpy.github.io

Github pages website for RobotPy project
CSS
2
star
37

robotpy-wpimath

Moved to https://github.com/robotpy/mostrobotpy
C++
2
star
38

robotpy-commands-v2

Python implementation of the WPILib Command Framework (2020+)
Python
2
star
39

shuffleboard2js

OBSOLETE: See https://github.com/frc-web-components/frc-web-components instead
JavaScript
2
star
40

raspbian-cross-docker

Docker image for cross-compiling on raspbian
Dockerfile
1
star
41

robotpy-halsim-ds-socket

Python wrapper around the WPILib halsim_ds_socket extension
Python
1
star
42

robotbuilder-python

Robot Builder with Python support
Java
1
star
43

devtools

RobotPy project administration tools
Python
1
star
44

robotpy-cross-docker

Docker image used for compiling RobotPy for RoboRIO
Dockerfile
1
star