Coder Social home page Coder Social logo

sylib's Introduction

Sylib

Sylvie's C++ Library For V5

image

Features

  • Easy WS2812B Addressable LED control
  • Accurate motor velocity measurements
  • Template for making custom velocity controllers
  • Many kinds of pre-built filters for general use
  • Platform-agnostic, meaning it works with both PROS and VEXcode (VSC Extension)

Installation

PROS

  1. Download the latest version of the Sylib template from the Releases page

  2. In the directory where you downloaded the zip archive, run pros c fetch sylib@<version>.zip

  3. In your PROS project directory, run pros c apply sylib@<version>

  4. In your main.h file, make sure to include sylib/sylib.hpp

  5. In /include/sylib/env.hpp make sure that SYLIB_SRC_PRESENT and SYLIB_ENV_VEXCODE are not defined, and that SYLIB_ENV_PROS is. This makes sure that the right headers are included, and that sylib uses the pre-compiled library provided by the template instead of trying to build it from the non-existent source (which would not compile in a PROS enviroment anyways).

  6. In your initialize() function, make sure to include sylib::initialize();

note: Sylib requires PROS kernel 3.7.2 or later to run

VEXcode (VEX Visual Studio Code Extension)

Note that this will not work in the VEXcode app itself due to file structure weirdness. It works fine in the VSC extension.

  1. From the Releases page, download the latest version of the Sylib source code

  2. Copy the contents of the include/ directory from the downloaded files into the include/ directory of your project

  3. Copy the contents of the src/ directory from the downloaded files into the src/ directory of your project

  4. Include sylib/sylib.hpp anywhere relevant, probably including at the top of your main.cpp file

  5. In /include/sylib/env.hpp make sure that SYLIB_ENV_PROS is not defined, and that SYLIB_ENV_VEXCODE is. This makes sure that the right headers are included, and that sylib compiles the source code instead of trying to use the non-existent PROS template.

  6. In your pre-auton function, make sure to include sylib::initialize();

Docs

Documentation for Sylib can be found here

Acknowledgements

This project would not have been possible without the contributions of

  • Leo Riesenbach
  • Lachlan Davidson
  • James Pearman
  • Griffin Tabor
  • Nick Mertin
  • Andrew Strauss
  • Jamie Maki-Fern
  • Salmon

sylib's People

Contributors

sy1vi3 avatar djava avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.