Skip to content

Commit f8694f4

Browse files
authored
Merge pull request #5 from JuliaRobotics/poc/distributedfactorgraphs
Proof of concept for API and Graphs.jl implementation
2 parents 756ff3a + 5dc2fd6 commit f8694f4

23 files changed

+801
-665
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@
22
*.jl.*.cov
33
*.jl.mem
44
deps/deps.jl
5+
docs/build

.travis.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ language: julia
22
os:
33
- linux
44
julia:
5-
- 0.6
5+
- 1.0
66
- nightly
77
notifications:
88
email: false
@@ -11,6 +11,6 @@ matrix:
1111
- julia: nightly
1212
script:
1313
- if [[ -a .git/shallow ]]; then git fetch --unshallow; fi
14-
- julia --check-bounds=yes -e 'Pkg.clone(pwd()); Pkg.build("DistributedFactorGraphs"); Pkg.test("DistributedFactorGraphs"; coverage=true)'
14+
- julia --check-bounds=yes -e 'using Pkg; Pkg.clone(pwd()); Pkg.build("DistributedFactorGraphs"); Pkg.test("DistributedFactorGraphs"; coverage=true)'
1515
after_success:
16-
- julia -e 'cd(Pkg.dir("DistributedFactorGraphs")); Pkg.add("Coverage"); using Coverage; Coveralls.submit(process_folder()); Codecov.submit(process_folder())'
16+
- julia -e 'using Pkg; cd(Pkg.dir("DistributedFactorGraphs")); Pkg.add("Coverage"); using Coverage; Coveralls.submit(process_folder()); Codecov.submit(process_folder())'

REQUIRE

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1-
julia 0.6
2-
Graphs 0.9.0
1+
julia 1.0
32
DocStringExtensions 0.4.1
3+
# LightGraphs 1.2.0
4+
# MetaGraphs 0.6.1
5+
Requires 0.5.2
6+
JSON2
7+
Graphs

docs/make.jl

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
using Documenter
2+
using DataFrames
3+
using DistributedFactorGraphs, DistributedFactorGraphs.GraphsJl
4+
5+
makedocs(
6+
modules = [DistributedFactorGraphs, DistributedFactorGraphs.GraphsJl],
7+
format = Documenter.HTML(),
8+
sitename = "DistributedFactorGraphs.jl",
9+
pages = Any[
10+
"Home" => "index.md",
11+
"Getting Started" => [
12+
"Introduction" => "getting_started.md",
13+
"Variables and Factors" => "variables_and_factors.md",
14+
"Common API Interface" => "ref_api.md",
15+
"Example" => "example.md"
16+
],
17+
"DistributedFactorGraph API's" => [
18+
"Graphs.jl" => "apis/graphs.md",
19+
"MetaGraph.jl" => "apis/graphs.md",
20+
"GraffSDK.jl" => "apis/graphs.md",
21+
"CloudGraphs.jl" => "apis/graphs.md",
22+
],
23+
"Reference" => "func_ref.md"
24+
]
25+
# html_prettyurls = !("local" in ARGS),
26+
)
27+
28+
deploydocs(
29+
repo = "github.com/JuliaRobotics/DistributedFactorGraphs.jl.git",
30+
target = "build",
31+
deps = Deps.pip("mkdocs", "python-markdown-math"),
32+
make = nothing,
33+
julia = "1.0",
34+
osname = "linux"
35+
)

docs/src/apis/graphs.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# The Graphs.jl DistributedFactorGraph API

docs/src/example.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Example

docs/src/func_ref.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
## Function Reference
2+
3+
```@contents
4+
Pages = [
5+
"func_ref.md"
6+
]
7+
Depth = 3
8+
```
9+
10+
### Graph Types
11+
```@docs
12+
GraphsDFG
13+
```
14+
15+
### Creating DFG Factor Graphs
16+
```@docs
17+
addVariable!
18+
addFactor!
19+
```
20+
21+
### Getting Factor Graph Nodes
22+
```@docs
23+
getVariables
24+
getFactors
25+
getVariable
26+
getFactor
27+
getNeighbors
28+
ls
29+
lsf
30+
```
31+
32+
### Updating Factor Graph Nodes
33+
```@docs
34+
updateVariable!
35+
updateFactor!
36+
```
37+
38+
### Deleting Factor Graph Nodes
39+
```@docs
40+
deleteVariable!
41+
deleteFactor!
42+
```
43+
44+
### Getting Adjacency Matrix
45+
```@docs
46+
getAdjacencyMatrix
47+
```
48+
49+
### Validating Factor Graph Connectivity
50+
```@docs
51+
isFullyConnected
52+
hasOrphans
53+
```
54+
55+
### Copying Subgraphs
56+
```@docs
57+
getSubgraphAroundNode
58+
getSubgraph
59+
```
60+
61+
### DataFrame Extension Functions
62+
```@docs
63+
getAdjacencyMatrixDataFrame
64+
```

docs/src/getting_started.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Getting Started

docs/src/index.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# GraffSDK.jl Documentation
2+
3+
This package is a Julia SDK for SlamInDb/Graff.
4+
5+
## Installation
6+
This package is not yet registered with JuliaLang/METADATA.jl, but can be easily installed in Julia 0.6 with:
7+
```julia
8+
Pkg.clone("https://github.com/GearsAD/GraffSDK.jl.git")
9+
Pkg.build("GraffSDK")
10+
```
11+
12+
## Manual Outline
13+
```@contents
14+
Pages = [
15+
"index.md"
16+
"getting_started.md"
17+
"variables_and_factors.md"
18+
"ref_api.md"
19+
"example.md"
20+
"func_ref.md"
21+
]
22+
```

docs/src/ref_api.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Common API Interface

0 commit comments

Comments
 (0)