Skip to content

Commit f067ade

Browse files
zkingstonwbthomason
andcommitted
Initial public release of VAMP
Co-authored-by: Wil Thomason <wil.thomason@gmail.com>
1 parent 8cf3f42 commit f067ade

File tree

251 files changed

+369092
-4
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

251 files changed

+369092
-4
lines changed

.clang-format

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
---
2+
BasedOnStyle: Google
3+
4+
AccessModifierOffset: -4
5+
AlignEscapedNewlinesLeft: false
6+
AlignTrailingComments: true
7+
AllowAllParametersOfDeclarationOnNextLine: false
8+
AllowShortBlocksOnASingleLine: false
9+
AllowShortFunctionsOnASingleLine: false
10+
AllowShortIfStatementsOnASingleLine: false
11+
AllowShortLoopsOnASingleLine: false
12+
AlwaysBreakBeforeMultilineStrings: false
13+
AlwaysBreakTemplateDeclarations: true
14+
AlignAfterOpenBracket: AlwaysBreak
15+
BinPackArguments: false
16+
BinPackParameters: false
17+
BreakBeforeBinaryOperators: false
18+
BreakBeforeBraces: Allman
19+
BreakBeforeTernaryOperators: false
20+
BreakConstructorInitializersBeforeComma: true
21+
ColumnLimit: 110
22+
ConstructorInitializerAllOnOneLineOrOnePerLine: true
23+
ConstructorInitializerIndentWidth: 2
24+
ContinuationIndentWidth: 4
25+
Cpp11BracedListStyle: true
26+
DerivePointerBinding: false
27+
ExperimentalAutoDetectBinPacking: false
28+
IndentCaseLabels: true
29+
IndentFunctionDeclarationAfterType: false
30+
IndentWidth: 4
31+
InsertBraces: true
32+
Language: Cpp
33+
MaxEmptyLinesToKeep: 1
34+
NamespaceIndentation: All
35+
ObjCSpaceBeforeProtocolList: true
36+
PenaltyBreakBeforeFirstCallParameter: 19
37+
PenaltyBreakComment: 60
38+
PenaltyBreakFirstLessLess: 1000
39+
PenaltyBreakString: 1
40+
PenaltyExcessCharacter: 1000
41+
PenaltyReturnTypeOnItsOwnLine: 90
42+
PointerAlignment: Right
43+
PointerBindsToType: false
44+
SeparateDefinitionBlocks: Always
45+
SortIncludes: false
46+
SpaceAfterControlStatementKeyword: true
47+
SpaceBeforeAssignmentOperators: true
48+
SpaceInEmptyParentheses: false
49+
SpacesBeforeTrailingComments: 2
50+
SpacesInAngles: false
51+
SpacesInCStyleCastParentheses: false
52+
SpacesInParentheses: false
53+
Standard: Cpp11
54+
TabWidth: 4
55+
UseTab: Never
56+
QualifierAlignment: Custom
57+
QualifierOrder: ['inline', 'static', 'constexpr', 'const', 'type']

.dockerignore

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
docker/
2+
.git/
3+
.gitignore
4+
.gitmodules
5+
6+
7+
build/
8+
.cache/
9+
compile_commands.json
10+
*.out.*
11+
*.swp
12+
*.swo
13+
resources/*/problems/
14+
*.log
15+
*.png
16+
__pycache__/
17+
problems.json
18+
problems.pkl
19+
*.pyc
20+
*.pyo
21+
*.pyd
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
---
2+
name: Bug/Error
3+
about: Describe a technical issue
4+
title: ''
5+
labels: bug
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
A clear and concise description of what the bug is.
12+
13+
**To Reproduce**
14+
Steps to reproduce the behavior:
15+
1. ...
16+
17+
**Expected behavior**
18+
A clear and concise description of what you expected to happen.
19+
20+
**Environment:**
21+
- OS: [e.g. iOS]
22+
- Python version:
23+
- GCC/Clang version:
24+
25+
**Additional context**
26+
Add any other context about the problem here.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context or screenshots about the feature request here.

.github/workflows/build.yml

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
name: Build Check
2+
3+
on:
4+
push:
5+
paths:
6+
- src/impl/**
7+
- CMakeLists.txt
8+
- cmake/Dependencies.cmake
9+
branches:
10+
- main
11+
12+
pull_request:
13+
paths:
14+
- src/impl/**
15+
- CMakeLists.txt
16+
- cmake/Dependencies.cmake
17+
branches:
18+
- main
19+
20+
workflow_dispatch:
21+
22+
jobs:
23+
build:
24+
runs-on: ${{ matrix.os }}
25+
26+
strategy:
27+
fail-fast: false
28+
matrix:
29+
os: [ubuntu-20.04, ubuntu-22.04, macos-latest]
30+
build_type: [Release]
31+
c_compiler: [gcc, clang]
32+
include:
33+
- os: ubuntu-20.04
34+
c_compiler: gcc
35+
cpp_compiler: g++
36+
- os: ubuntu-20.04
37+
c_compiler: clang
38+
cpp_compiler: clang++
39+
- os: ubuntu-22.04
40+
c_compiler: gcc
41+
cpp_compiler: g++
42+
- os: ubuntu-22.04
43+
c_compiler: clang
44+
cpp_compiler: clang++
45+
- os: macos-latest
46+
c_compiler: clang
47+
cpp_compiler: clang++
48+
- os: macos-latest
49+
c_compiler: gcc
50+
cpp_compiler: g++
51+
52+
steps:
53+
- uses: actions/checkout@v4
54+
55+
- name: Set reusable strings
56+
id: strings
57+
shell: bash
58+
run: |
59+
echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT"
60+
61+
62+
- name: Install packages (Linux)
63+
if: runner.os == 'Linux'
64+
run: >
65+
sudo apt-get install -y libeigen3-dev llvm
66+
67+
68+
- name: Install packages (MacOS)
69+
if: runner.os == 'macOS'
70+
run: >
71+
brew install eigen
72+
73+
- name: Install GCC (MacOS)
74+
if: runner.os == 'macOS' && matrix.c_compiler == 'gcc'
75+
run: >
76+
brew install gcc
77+
78+
79+
- name: Install Python packages
80+
run: >
81+
pip install typing_extensions
82+
83+
- name: Configure CMake
84+
run: >
85+
cmake -B ${{ steps.strings.outputs.build-output-dir }}
86+
-DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }}
87+
-DCMAKE_C_COMPILER=${{ matrix.c_compiler }}
88+
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
89+
-S ${{ github.workspace }}
90+
91+
- name: Build
92+
run: cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build_type }}

.github/workflows/format.yml

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
name: Format Check
2+
3+
on:
4+
push:
5+
paths:
6+
- src/**
7+
- scripts/**
8+
branches:
9+
- main
10+
11+
pull_request:
12+
paths:
13+
- src/**
14+
- scripts/**
15+
branches:
16+
- main
17+
18+
workflow_dispatch:
19+
20+
jobs:
21+
formatting-check:
22+
name: Formatting Check
23+
24+
runs-on: ubuntu-latest
25+
26+
steps:
27+
- uses: actions/checkout@v4
28+
29+
- name: Install packages
30+
run: |
31+
wget https://apt.llvm.org/llvm.sh
32+
chmod +x llvm.sh
33+
yes | sudo ./llvm.sh 16 || true
34+
sudo apt-get install -y clang-format-16 python3-pip
35+
pip install yapf
36+
37+
- name: Run clang-format style check.
38+
run: >
39+
find . -iname *.hh -o -iname *.cc | xargs -I{} clang-format-16 --dry-run -Werror {}
40+
41+
- name: Run yapf style check.
42+
run: >
43+
find . -iname *.py | xargs -I{} yapf -d {}

.gitignore

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
build/
2+
.cache/
3+
compile_commands.json
4+
*.out.*
5+
*.swp
6+
*.swo
7+
resources/*/problems/
8+
*.log
9+
*.png
10+
__pycache__/
11+
problems.json
12+
problems.pkl
13+
*.pyc
14+
*.pyo
15+
*.pyd
16+
*.el
17+
venv/
18+
/resources/panda/*.json
19+
/resources/panda/*.pkl
20+
src/vamp/_core/*.pyi

.style.yapf

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
[style]
2+
based_on_style = pep8
3+
column_limit = 110
4+
5+
spaces_around_default_or_named_assign = true
6+
spaces_before_comment = 4, 6, 8, 10, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52
7+
8+
split_before_first_argument = true
9+
split_all_top_level_comma_separated_values = true
10+
split_before_dot = true
11+
split_before_logical_operator = true
12+
split_complex_comprehension = true
13+
14+
blank_line_before_nested_class_or_def = true
15+
blank_lines_around_top_level_definition = 2
16+
17+
indent_closing_brackets = true
18+
align_closing_bracket_with_visual_indent = true
19+
20+
use_tabs = False
21+
indent_width = 4

CITATION.bib

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
@InProceedings{vamp,
2+
title = {Motions in Microseconds via Vectorized Sampling-Based Planning},
3+
author = {Thomason, Wil and Kingston, Zachary and Kavraki, Lydia E.},
4+
booktitle = {IEEE International Conference on Robotics and Automation},
5+
date = {2024},
6+
url = {http://arxiv.org/abs/2309.14545},
7+
note = {To Appear.}
8+
}

0 commit comments

Comments
 (0)