Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Apr 8, 2024. It is now read-only.

wml-frc/WML

Repository files navigation

A modularity-based library designed for use in the FIRST Robotics Competition.

Build Status

Build Status

WML As FRC Vendor

WML As Submodule

Setting up WML in your own project

  • First you will need to 'install' the submodule to your root directory. Navigate to your root dir and install via git submodule add https://github.com/wml-frc/WML.git.

  • Once complete you will need to apply the project to your own codebase. Every team has their own style of programming, building & deploying. But in general most will have a build.gradle and settings.gradle, and you would apply the library via appending the two.

Adding WML to your project's gradle config

  • First we need to link the directories in settings.gradle
  • WML currently consists of two section (WML-Core & WML-Rev) and may soom be seperated further for efficiency.
// WML
include 'WML-Core', 'WML-Rev'
project(':WML-Core').projectDir = file('WML/WML-Core')
project(':WML-Rev').projectDir = file('WML/WML-Rev')
  • Inside your project file (e.g. build.gradle) append the libraries:
model {
	components {
		frcUserProgram(NativeExecutableSpec) {
			// ...
			binaries.all {
				lib project: ':WML-Core', library: 'WML-Core', linkage: 'shared' // can also be static
				lib project: ':WML-Rev', library: 'WML-Core', linkage: 'shared' // can also be static
			}
			// ...
		}
	}
	testSuites {
		frcUserProgramTest(GoogleTestTestSuiteSpec) {
			// ...
			binaries.all {
				lib project: ':WML-Core', library: 'WML-Core', linkage: 'shared'
				lib project: ':WML-Rev', library: 'WML-Core', linkage: 'shared'
			}
			// ...
		}
	}
}
  • Note that :WML-Rev is not required if you are not using Rev products (Neo Motor)

Doxygen

Library examples

  • Added to the library is an example folder. More examples are planned, however, I am aware that there are not many examples currently (especially compared to the breadth of the content in the library).

  • I recommend looking at code that uses the library to get a better idea of what to do. (e.g. CurtinFRC's code -> Code)

Contributing to WML

CONTRIBUTING.md

readme written by @CJBuchel, 20/12/21

About

WPILib Modularisation Lib

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

AltStyle によって変換されたページ (->オリジナル) /