From 0728f567f4ba9b8ed914c23a9805d26d5815509c Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 19 Nov 2023 08:08:06 -0800 Subject: [PATCH 01/34] Cleaning up logging so things function with the dashboard --- .../java/com/technototes/library/logger/Logger.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java index bbe5831e..1f3c9867 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java @@ -126,11 +126,13 @@ private Entry[] generate(Set> a) { private void update(Entry[] choice) { try { - for (int i = 0; i < choice.length; i++) { - telemetry.addLine( - (i > 9 ? i + "| " : i + " | ") + - (choice[i] == null ? "" : choice[i].getTag().replace('`', captionDivider) + choice[i].toString()) - ); + for (Entry item : choice) { + // telemetry.addLine( + // (i > 9 ? i + "| " : i + " | ") + + // (choice[i] == null ? "" : choice[i].getTag().replace('`', captionDivider) + choice[i].toString()) + // ); + // All teh fancy HTML stuff gets in the way of the FTC Dashboard graph + telemetry.addData(item.getName(), item.get()); } telemetry.update(); } catch (Exception ignored) {} From 6a7b365354566ff3c0312db426140363cdde2a77 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 19 Nov 2023 09:58:29 -0800 Subject: [PATCH 02/34] Ripped out the NumberBar and NumberSlider lines. Colors are next. --- .../com/technototes/library/logger/Log.java | 131 ------------------ .../technototes/library/logger/Logger.java | 37 +---- .../library/logger/entry/NumberBarEntry.java | 35 ----- .../logger/entry/NumberSliderEntry.java | 60 -------- 4 files changed, 1 insertion(+), 262 deletions(-) delete mode 100644 RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberBarEntry.java delete mode 100644 RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberSliderEntry.java diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java b/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java index fedcf771..ac604932 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java @@ -100,137 +100,6 @@ Color numberColor() default Color.NO_COLOR; } - /** Log a number, but store it as a number bar - * - */ - @Retention(RetentionPolicy.RUNTIME) - @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) - @interface NumberBar { - /** Store index for this annotation (position in telemetry) - * - * @return The index - */ - int index() default -1; - - /** Store priority for this log entry (to pick the most wanted entry over others with same index) - * - * @return The priority - */ - int priority() default -1; - - /** Store the min for the number bar to scale to - * - * @return The min - */ - double min() default -1; - - /** Store the max for the number bar to scale to - * - * @return The max - */ - double max() default 1; - - /** Store the scale for the number bar to scale to - * - * @return The scale - */ - double scale() default 0.1; - - /** Store the name for this annotation to be be beside - * - * @return The name as a string - */ - String name() default ""; - - /** The color for the tag for the bar - * - * @return The color - */ - Color color() default Color.NO_COLOR; - - /** The color for the filled in bar color - * - * @return The color - */ - Color completeBarColor() default Color.NO_COLOR; - - /** The color for the not filled in bar color - * - * @return The color - */ - Color incompleteBarColor() default Color.NO_COLOR; - - /** The color for the bar outlines - * - * @return The color - */ - Color outline() default Color.NO_COLOR; - } - - @Retention(RetentionPolicy.RUNTIME) - @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) - @interface NumberSlider { - /** Store index for this annotation (position in telemetry) - * - * @return The index - */ - int index() default -1; - - /** Store priority for this log entry (to pick the most wanted entry over others with same index) - * - * @return The priority - */ - int priority() default -1; - - /** Store the min for the number bar to scale to - * - * @return The min - */ - double min() default -1; - - /** Store the max for the number bar to scale to - * - * @return The max - */ - double max() default 1; - - /** Store the scale for the number bar to scale to - * - * @return The scale - */ - double scale() default 0.1; - - /** Store the name for this annotation to be be beside - * - * @return The name as a string - */ - String name() default ""; - - /** The color for the tag for the slider - * - * @return The color - */ - Color color() default Color.NO_COLOR; - - /** The color for the slider background - * - * @return The color - */ - Color sliderBackground() default Color.NO_COLOR; - - /** The color for the slider outline - * - * @return The color - */ - Color outline() default Color.NO_COLOR; - - /** The color for the slider slide - * - * @return The color - */ - Color slider() default Color.NO_COLOR; - } - @Retention(RetentionPolicy.RUNTIME) @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) @interface Boolean { diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java index 1f3c9867..2023a89c 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java @@ -3,15 +3,12 @@ import com.qualcomm.robotcore.eventloop.opmode.OpMode; import com.technototes.library.logger.entry.BooleanEntry; import com.technototes.library.logger.entry.Entry; -import com.technototes.library.logger.entry.NumberBarEntry; import com.technototes.library.logger.entry.NumberEntry; -import com.technototes.library.logger.entry.NumberSliderEntry; import com.technototes.library.logger.entry.StringEntry; import java.lang.annotation.Annotation; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; -import java.sql.Array; import java.util.ArrayList; import java.util.Arrays; import java.util.LinkedHashSet; @@ -67,8 +64,6 @@ private void configure(Object root) { } else if ( field.isAnnotationPresent(Log.class) || field.isAnnotationPresent(Log.Number.class) || - field.isAnnotationPresent(Log.NumberSlider.class) || - field.isAnnotationPresent(Log.NumberBar.class) || field.isAnnotationPresent(Log.Boolean.class) ) { if (field.getType().isPrimitive() || o instanceof String) { @@ -185,37 +180,7 @@ private void set(Annotation[] a, Supplier m) { boolean init = false, run = true; Entry e = null; for (Annotation as : a) { - if (as instanceof Log.NumberSlider) { - e = - new NumberSliderEntry( - ((Log.NumberSlider) as).name(), - (Supplier) m, - ((Log.NumberSlider) as).index(), - ((Log.NumberSlider) as).min(), - ((Log.NumberSlider) as).max(), - ((Log.NumberSlider) as).scale(), - ((Log.NumberSlider) as).color(), - ((Log.NumberSlider) as).sliderBackground(), - ((Log.NumberSlider) as).outline(), - ((Log.NumberSlider) as).slider() - ); - e.setPriority(((Log.NumberSlider) as).priority()); - } else if (as instanceof Log.NumberBar) { - e = - new NumberBarEntry( - ((Log.NumberBar) as).name(), - (Supplier) m, - ((Log.NumberBar) as).index(), - ((Log.NumberBar) as).min(), - ((Log.NumberBar) as).max(), - ((Log.NumberBar) as).scale(), - ((Log.NumberBar) as).color(), - ((Log.NumberBar) as).completeBarColor(), - ((Log.NumberBar) as).outline(), - ((Log.NumberBar) as).incompleteBarColor() - ); - e.setPriority(((Log.NumberBar) as).priority()); - } else if (as instanceof Log.Number) { + if (as instanceof Log.Number) { e = new NumberEntry( ((Log.Number) as).name(), diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberBarEntry.java b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberBarEntry.java deleted file mode 100644 index f2ec744f..00000000 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberBarEntry.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.technototes.library.logger.entry; - -import com.technototes.library.logger.Logger; -import com.technototes.library.util.Color; -import java.util.function.Supplier; - -public class NumberBarEntry extends NumberSliderEntry { - - // primary is bar color, secondary is outline, tertiary is incomplete bar - public NumberBarEntry( - String n, - Supplier s, - int x, - Number mi, - Number ma, - Number sc, - Color c, - Color pri, - Color sec, - Color tert - ) { - super(n, s, x, mi, ma, sc, c, pri, sec, tert); - } - - @Override - public String toString() { - StringBuilder r = new StringBuilder(secondary.format("[")); - int totalAmt = (int) ((max() - min()) / scale()); - int fullAmt = (int) (Math.round((getDouble() - min()) / scale())); - r.append(primary.format(Logger.repeat("█", fullAmt + 1))); - r.append(tertiary.format(Logger.repeat("━", totalAmt - fullAmt))); - r.append(secondary.format("]")); - return r.toString(); - } -} diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberSliderEntry.java b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberSliderEntry.java deleted file mode 100644 index 59f212ed..00000000 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberSliderEntry.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.technototes.library.logger.entry; - -import com.technototes.library.logger.Logger; -import com.technototes.library.util.Color; -import java.util.function.Supplier; - -public class NumberSliderEntry extends NumberEntry { - - protected Number min, max, scale; - protected Color primary, secondary, tertiary; - - public NumberSliderEntry( - String n, - Supplier s, - int x, - Number mi, - Number ma, - Number sc, - Color c, - Color pr, - Color sec, - Color tert - ) { - super(n, s, x, c); - min = mi; - max = ma; - scale = sc; - primary = pr; - secondary = sec; - tertiary = tert; - } - - public double min() { - return min.doubleValue(); - } - - public double max() { - return max.doubleValue(); - } - - public double scale() { - return scale.doubleValue(); - } - - public double getDouble() { - return get().doubleValue(); - } - - @Override - public String toString() { - StringBuilder r = new StringBuilder(secondary.format("[")); - int totalAmt = (int) ((max() - min()) / scale()); - int fullAmt = (int) (Math.round((getDouble() - min()) / scale())); - r.append(tertiary.format(Logger.repeat("━", fullAmt))); - r.append(primary.format("█")); - r.append(tertiary.format(Logger.repeat("━", totalAmt - fullAmt))); - r.append(secondary.format("]")); - return r.toString(); - } -} From 9bba9bc02ad357c7ec4f764492610eb46b5262fd Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 19 Nov 2023 10:05:33 -0800 Subject: [PATCH 03/34] Removed the color support from the logging stuff --- .../com/technototes/library/logger/Log.java | 40 ------------------- .../technototes/library/logger/Logger.java | 13 ++---- .../library/logger/entry/BooleanEntry.java | 11 ++--- .../library/logger/entry/Entry.java | 27 ++----------- .../library/logger/entry/NumberEntry.java | 9 +---- .../library/logger/entry/StringEntry.java | 9 ++--- 6 files changed, 15 insertions(+), 94 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java b/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java index ac604932..3c971503 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java @@ -4,7 +4,6 @@ import static java.lang.annotation.ElementType.LOCAL_VARIABLE; import static java.lang.annotation.ElementType.METHOD; -import com.technototes.library.util.Color; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.annotation.Repeatable; @@ -44,18 +43,6 @@ */ String format() default "%s"; - /** The color for the entry - * - * @return The color - */ - Color entryColor() default Color.NO_COLOR; - - /** The color for the tag for the entry - * - * @return The color - */ - Color color() default Color.NO_COLOR; - @Documented @Retention(RetentionPolicy.RUNTIME) @Target({ ElementType.FIELD, ElementType.METHOD }) @@ -86,18 +73,6 @@ * @return The name as a string */ String name() default ""; - - /** The color for the tag for the number - * - * @return The color - */ - Color color() default Color.NO_COLOR; - - /** The color for the number - * - * @return The color - */ - Color numberColor() default Color.NO_COLOR; } @Retention(RetentionPolicy.RUNTIME) @@ -127,11 +102,6 @@ */ String trueFormat() default "%s"; - /** The color for the true String - * - * @return The color - */ - Color trueColor() default Color.NO_COLOR; /** Store the string when the annotated method returns false * @@ -145,11 +115,6 @@ */ String falseFormat() default "%s"; - /** The color for the false String - * - * @return The color - */ - Color falseColor() default Color.NO_COLOR; /** Store the name for this annotation to be be beside * @@ -157,10 +122,5 @@ */ String name() default ""; - /** The color for the tag for the boolean - * - * @return The color - */ - Color color() default Color.NO_COLOR; } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java index 2023a89c..c240bbf9 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java @@ -185,9 +185,7 @@ private void set(Annotation[] a, Supplier m) { new NumberEntry( ((Log.Number) as).name(), (Supplier) m, - ((Log.Number) as).index(), - ((Log.Number) as).color(), - ((Log.Number) as).numberColor() + ((Log.Number) as).index() ); e.setPriority(((Log.Number) as).priority()); } else if (as instanceof Log) { @@ -196,9 +194,7 @@ private void set(Annotation[] a, Supplier m) { ((Log) as).name(), (Supplier) m, ((Log) as).index(), - ((Log) as).color(), - ((Log) as).format(), - ((Log) as).entryColor() + ((Log) as).format() ); e.setPriority(((Log) as).priority()); } else if (as instanceof Log.Boolean) { @@ -209,11 +205,8 @@ private void set(Annotation[] a, Supplier m) { ((Log.Boolean) as).index(), ((Log.Boolean) as).trueValue(), ((Log.Boolean) as).falseValue(), - ((Log.Boolean) as).color(), ((Log.Boolean) as).trueFormat(), - ((Log.Boolean) as).falseFormat(), - ((Log.Boolean) as).trueColor(), - ((Log.Boolean) as).falseColor() + ((Log.Boolean) as).falseFormat() ); e.setPriority(((Log.Boolean) as).priority()); } else if (as instanceof LogConfig.Run) { diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java index 21d201ed..4cf8ba17 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java @@ -13,15 +13,12 @@ public BooleanEntry( int index, String wt, String wf, - Color c, String tf, - String ff, - Color tc, - Color fc + String ff ) { - super(n, s, index, c); - trueEntry = new StringEntry("", () -> wt, -1, Color.NO_COLOR, tf, tc); - falseEntry = new StringEntry("", () -> wf, -1, Color.NO_COLOR, ff, fc); + super(n, s, index); + trueEntry = new StringEntry("", () -> wt, -1, tf); + falseEntry = new StringEntry("", () -> wf, -1, ff); } @Override diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/Entry.java b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/Entry.java index a4adf087..aa788e02 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/Entry.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/Entry.java @@ -1,6 +1,5 @@ package com.technototes.library.logger.entry; -import com.technototes.library.util.Color; import java.util.function.Supplier; /** @@ -27,29 +26,18 @@ public abstract class Entry implements Supplier { * The name of the Entry */ protected String name; - /** - * String to use a 'header' (calculated from name and color) - */ - protected String tag; - /** - * Color to display - */ - protected Color color; /** - * Create an entry with name, value, index, and color + * Create an entry with name, value, index * * @param n Name of the entry * @param s Value function to display * @param index Index of the entry - * @param c Color to display */ - public Entry(String n, Supplier s, int index, Color c) { + public Entry(String n, Supplier s, int index) { x = index; supplier = s; name = n; - color = c; - tag = (name.equals("") ? " " : color.format(name) + " ` "); } /** @@ -79,16 +67,7 @@ public String toString() { } /** - * The tag for the entry - * - * @return The tag - */ - public String getTag() { - return tag; - } - - /** - * Get the name (unformatted tag) + * Get the name * * @return The name */ diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberEntry.java b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberEntry.java index fa024288..72b01293 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberEntry.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberEntry.java @@ -7,15 +7,10 @@ public class NumberEntry extends Entry { protected Color numberColor; - public NumberEntry(String n, Supplier s, int x, Color c, Color num) { - super(n, s, x, c); - numberColor = num; + public NumberEntry(String n, Supplier s, int x) { + super(n, s, x); } - public NumberEntry(String n, Supplier s, int x, Color c) { - super(n, s, x, c); - numberColor = Color.NO_COLOR; - } @Override public String toString() { diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/StringEntry.java b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/StringEntry.java index 0f515650..1c1bc536 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/StringEntry.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/StringEntry.java @@ -1,21 +1,18 @@ package com.technototes.library.logger.entry; -import com.technototes.library.util.Color; import java.util.function.Supplier; public class StringEntry extends Entry { private String format; - private Color entryColor; - public StringEntry(String n, Supplier s, int x, Color c, String f, Color ec) { - super(n, s, x, c); + public StringEntry(String n, Supplier s, int x, String f) { + super(n, s, x); format = f; - entryColor = ec; } @Override public String toString() { - return entryColor.format(format, get()); + return String.format(format, get()); } } From 7d9b05e35b3c8360dd972e10b06ec77541381c39 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 19 Nov 2023 10:39:30 -0800 Subject: [PATCH 04/34] Minor cleaning up --- .../java/com/technototes/library/logger/Log.java | 14 -------------- .../com/technototes/library/logger/LogConfig.java | 12 ++++++------ .../com/technototes/library/logger/Logger.java | 12 +++++------- .../library/logger/entry/BooleanEntry.java | 12 +++++------- build.dependencies.gradle | 8 ++++---- readme.md | 4 ++-- 6 files changed, 22 insertions(+), 40 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java b/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java index 3c971503..67d61546 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java @@ -96,26 +96,12 @@ */ String trueValue() default "true"; - /** The format for when the boolean returns true - * - * @return The String format - */ - String trueFormat() default "%s"; - - /** Store the string when the annotated method returns false * * @return The string */ String falseValue() default "false"; - /** The format for when the boolean returns false - * - * @return The String format - */ - String falseFormat() default "%s"; - - /** Store the name for this annotation to be be beside * * @return The name as a string diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/LogConfig.java b/RobotLibrary/src/main/java/com/technototes/library/logger/LogConfig.java index 3288579e..e3f4919d 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/LogConfig.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/LogConfig.java @@ -32,26 +32,26 @@ boolean duringInit() default false; } - /** Annotation for Whitelisting Opmodes to log this item + /** Annotation for allowing Opmodes to log this item * */ @Retention(RetentionPolicy.RUNTIME) @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) - @interface Whitelist { - /** The whitelisted opmodes + @interface AllowList { + /** The allowed opmodes * * @return Opmode Classes */ Class[] value(); } - /** Annotation for Blacklisting Opmodes to log this item + /** Annotation for denying Opmodes to log this item * */ @Retention(RetentionPolicy.RUNTIME) @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) - @interface Blacklist { - /** The blacklisted opmodes + @interface DenyList { + /** The denied opmodes * * @return Opmode Classes */ diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java index c240bbf9..693fabee 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java @@ -204,9 +204,7 @@ private void set(Annotation[] a, Supplier m) { (Supplier) m, ((Log.Boolean) as).index(), ((Log.Boolean) as).trueValue(), - ((Log.Boolean) as).falseValue(), - ((Log.Boolean) as).trueFormat(), - ((Log.Boolean) as).falseFormat() + ((Log.Boolean) as).falseValue() ); e.setPriority(((Log.Boolean) as).priority()); } else if (as instanceof LogConfig.Run) { @@ -260,13 +258,13 @@ private static Supplier getCustom(Object o) { } private boolean isFieldAllowed(Field f) { - if (f.isAnnotationPresent(LogConfig.Whitelist.class)) { - if (!Arrays.asList(f.getAnnotation(LogConfig.Whitelist.class).value()).contains(opMode.getClass())) { + if (f.isAnnotationPresent(LogConfig.AllowList.class)) { + if (!Arrays.asList(f.getAnnotation(LogConfig.AllowList.class).value()).contains(opMode.getClass())) { return false; } } - if (f.isAnnotationPresent(LogConfig.Blacklist.class)) { - if (Arrays.asList(f.getAnnotation(LogConfig.Blacklist.class).value()).contains(opMode.getClass())) { + if (f.isAnnotationPresent(LogConfig.DenyList.class)) { + if (Arrays.asList(f.getAnnotation(LogConfig.DenyList.class).value()).contains(opMode.getClass())) { return false; } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java index 4cf8ba17..e6521b76 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java @@ -5,24 +5,22 @@ public class BooleanEntry extends Entry { - private StringEntry trueEntry, falseEntry; + private String trueEntry, falseEntry; public BooleanEntry( String n, Supplier s, int index, String wt, - String wf, - String tf, - String ff + String wf ) { super(n, s, index); - trueEntry = new StringEntry("", () -> wt, -1, tf); - falseEntry = new StringEntry("", () -> wf, -1, ff); + trueEntry = wt; + falseEntry = wf; } @Override public String toString() { - return (get() ? trueEntry : falseEntry).get(); + return (get() ? trueEntry : falseEntry); } } diff --git a/build.dependencies.gradle b/build.dependencies.gradle index 4cbf1215..3f94b0d1 100644 --- a/build.dependencies.gradle +++ b/build.dependencies.gradle @@ -6,9 +6,9 @@ repositories { } dependencies { - implementation 'org.firstinspires.ftc:RobotCore:9.0.0' - implementation 'org.firstinspires.ftc:RobotServer:9.0.0' - implementation 'org.firstinspires.ftc:Hardware:9.0.0' - implementation 'org.firstinspires.ftc:FtcCommon:9.0.0' + implementation 'org.firstinspires.ftc:RobotCore:9.0.1' + implementation 'org.firstinspires.ftc:RobotServer:9.0.1' + implementation 'org.firstinspires.ftc:Hardware:9.0.1' + implementation 'org.firstinspires.ftc:FtcCommon:9.0.1' implementation 'androidx.appcompat:appcompat:1.3.1' } diff --git a/readme.md b/readme.md index e4f40b11..54c0f6d9 100644 --- a/readme.md +++ b/readme.md @@ -4,8 +4,8 @@ TechnoLib is a FTC Library for everyone: - WPILib inspired command structure - Tons of simple implementations to provide abstractions, and teach you the basics -- EOCV integration for vision -- RoadRunner integration for pathfollowing +- EasyOpenCV integration for vision +- RoadRunner integration for path-following - Annotation based Telemetry - And much much more From 57ae0d7fe6cfa9a0d574225e26b86bc1445dc2df Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 19 Nov 2023 10:43:24 -0800 Subject: [PATCH 05/34] Updated the docs link. I should also update github.io... --- docs/Path/allclasses-index.html | 1248 +- docs/Path/allpackages-index.html | 170 +- .../path/command/MecanumDriveCommand.html | 18 +- .../RegenerativeTrajectoryCommand.html | 14 +- .../command/TrajectorySequenceCommand.html | 8 +- docs/Path/help-doc.html | 437 +- docs/Path/index-all.html | 7753 +------ docs/Path/index.html | 189 +- docs/Path/jquery-ui.overrides.css | 6 +- docs/Path/member-search-index.js | 1564 +- docs/Path/module-search-index.js | 3 +- docs/Path/overview-summary.html | 48 +- docs/Path/overview-tree.html | 1421 +- docs/Path/package-search-index.js | 11 +- docs/Path/script.js | 156 +- docs/Path/search.js | 608 +- docs/Path/serialized-form.html | 227 +- .../path/command/MecanumDriveCommand.html | 81 +- .../RegenerativeTrajectoryCommand.html | 81 +- .../command/TrajectorySequenceCommand.html | 56 +- docs/Path/stylesheet.css | 1092 +- docs/Path/tag-search-index.js | 3 +- docs/Path/type-search-index.js | 89 +- docs/TechnoLib/allclasses-index.html | 1979 +- docs/TechnoLib/allpackages-index.html | 268 +- .../library/control/CommandAxis.html | 20 +- .../library/control/CommandGamepad.html | 2 +- .../library/control/GamepadBase.Button.html | 128 +- .../library/control/GamepadBase.html | 174 +- .../library/logger/Log.Boolean.html | 134 +- .../technototes/library/logger/Log.Logs.html | 4 +- .../library/logger/Log.Number.html | 58 +- .../library/logger/Log.NumberBar.html | 312 - .../library/logger/Log.NumberSlider.html | 311 - .../com/technototes/library/logger/Log.html | 58 +- ...lacklist.html => LogConfig.AllowList.html} | 16 +- ...Whitelist.html => LogConfig.DenyList.html} | 16 +- .../technototes/library/logger/LogConfig.html | 16 +- .../technototes/library/logger/Logger.html | 16 +- .../library/logger/entry/BooleanEntry.html | 24 +- .../library/logger/entry/Entry.html | 117 +- .../library/logger/entry/NumberBarEntry.html | 217 - .../library/logger/entry/NumberEntry.html | 36 +- .../logger/entry/NumberSliderEntry.html | 317 - .../library/logger/entry/StringEntry.html | 22 +- .../library/logger/entry/package-summary.html | 6 +- .../library/logger/entry/package-tree.html | 10 +- .../library/logger/package-summary.html | 22 +- .../library/logger/package-tree.html | 6 +- docs/TechnoLib/constant-values.html | 349 +- docs/TechnoLib/deprecated-list.html | 311 +- docs/TechnoLib/help-doc.html | 451 +- docs/TechnoLib/index-all.html | 18048 +++------------- docs/TechnoLib/index.html | 308 +- docs/TechnoLib/jquery-ui.overrides.css | 6 +- docs/TechnoLib/member-search-index.js | 2353 +- docs/TechnoLib/module-search-index.js | 3 +- docs/TechnoLib/overview-summary.html | 48 +- docs/TechnoLib/overview-tree.html | 1800 +- docs/TechnoLib/package-search-index.js | 23 +- docs/TechnoLib/script.js | 156 +- docs/TechnoLib/search.js | 608 +- .../library/control/CommandAxis.html | 98 +- .../library/control/GamepadBase.Axis.html | 128 +- .../library/control/GamepadBase.Button.html | 128 +- .../library/control/GamepadBase.html | 128 +- .../library/logger/Log.Boolean.html | 391 +- .../technototes/library/logger/Log.Logs.html | 391 +- .../library/logger/Log.Number.html | 391 +- .../library/logger/Log.NumberBar.html | 375 - .../library/logger/Log.NumberSlider.html | 375 - .../com/technototes/library/logger/Log.html | 391 +- ...lacklist.html => LogConfig.AllowList.html} | 14 +- ...Whitelist.html => LogConfig.DenyList.html} | 14 +- .../library/logger/LogConfig.Disabled.html | 12 +- .../library/logger/LogConfig.Run.html | 12 +- .../technototes/library/logger/LogConfig.html | 12 +- .../technototes/library/logger/Logger.html | 574 +- .../library/logger/entry/BooleanEntry.html | 29 +- .../library/logger/entry/Entry.html | 225 +- .../library/logger/entry/NumberBarEntry.html | 113 - .../library/logger/entry/NumberEntry.html | 21 +- .../logger/entry/NumberSliderEntry.html | 138 - .../library/logger/entry/StringEntry.html | 35 +- docs/TechnoLib/stylesheet.css | 1092 +- docs/TechnoLib/tag-search-index.js | 3 +- docs/TechnoLib/type-search-index.js | 119 +- docs/Vision/allclasses-index.html | 216 +- docs/Vision/allpackages-index.html | 142 +- docs/Vision/deprecated-list.html | 154 +- docs/Vision/help-doc.html | 438 +- docs/Vision/index-all.html | 1174 +- docs/Vision/index.html | 150 +- docs/Vision/jquery-ui.overrides.css | 6 +- docs/Vision/member-search-index.js | 178 +- docs/Vision/module-search-index.js | 3 +- docs/Vision/overview-summary.html | 48 +- docs/Vision/overview-tree.html | 218 +- docs/Vision/package-search-index.js | 7 +- docs/Vision/script.js | 156 +- docs/Vision/search.js | 608 +- docs/Vision/stylesheet.css | 1092 +- docs/Vision/tag-search-index.js | 3 +- docs/Vision/type-search-index.js | 10 +- 104 files changed, 11806 insertions(+), 42042 deletions(-) delete mode 100644 docs/TechnoLib/com/technototes/library/logger/Log.NumberBar.html delete mode 100644 docs/TechnoLib/com/technototes/library/logger/Log.NumberSlider.html rename docs/TechnoLib/com/technototes/library/logger/{LogConfig.Blacklist.html => LogConfig.AllowList.html} (92%) rename docs/TechnoLib/com/technototes/library/logger/{LogConfig.Whitelist.html => LogConfig.DenyList.html} (92%) delete mode 100644 docs/TechnoLib/com/technototes/library/logger/entry/NumberBarEntry.html delete mode 100644 docs/TechnoLib/com/technototes/library/logger/entry/NumberSliderEntry.html delete mode 100644 docs/TechnoLib/src-html/com/technototes/library/logger/Log.NumberBar.html delete mode 100644 docs/TechnoLib/src-html/com/technototes/library/logger/Log.NumberSlider.html rename docs/TechnoLib/src-html/com/technototes/library/logger/{LogConfig.Blacklist.html => LogConfig.AllowList.html} (96%) rename docs/TechnoLib/src-html/com/technototes/library/logger/{LogConfig.Whitelist.html => LogConfig.DenyList.html} (96%) delete mode 100644 docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberBarEntry.html delete mode 100644 docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberSliderEntry.html diff --git a/docs/Path/allclasses-index.html b/docs/Path/allclasses-index.html index 6a44fed8..3a2573d4 100644 --- a/docs/Path/allclasses-index.html +++ b/docs/Path/allclasses-index.html @@ -1,995 +1,257 @@ - + - - - All Classes and Interfaces (Path API) - - - - - - - - - - - - - - -
- -
-
-
-

All Classes and Interfaces

-
-
-
- -
-
-
-
Class
-
Description
-
- AxesSigns -
-
-
IMU axes signs in the order XYZ (after remapping).
-
- -
-
Various utility functions for the BNO055 IMU.
-
- -
-   -
- -
-   -
- -
-   -
- -
-
- Set of helper functions for drawing Road Runner paths and trajectories on - dashboard canvases. -
-
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-
Utility functions for log files.
-
- -
-
Collection of utilites for interacting with Lynx modules.
-
- -
-
Parsed representation of a Lynx module firmware version.
-
- -
-
Exception indicating an outdated Lynx firmware version.
-
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-
Various regression utilities.
-
- -
-
- Feedforward parameter estimates from the ramp regression and additional summary - statistics -
-
- -
-
- Feedforward parameter estimates from the ramp regression and additional summary - statistics -
-
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
- -
-   -
-
-
-
-
-
-
- + + +All Classes and Interfaces (Path API) + + + + + + + + + + + + + + +
+ +
+
+
+

All Classes and Interfaces

+
+
+
+
+
+
Class
+
Description
+ +
+
IMU axes signs in the order XYZ (after remapping).
+
+ +
+
Various utility functions for the BNO055 IMU.
+
+ +
 
+ +
 
+ +
 
+ +
+
Set of helper functions for drawing Road Runner paths and trajectories on dashboard canvases.
+
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
+
Utility functions for log files.
+
+ +
+
Collection of utilites for interacting with Lynx modules.
+
+ +
+
Parsed representation of a Lynx module firmware version.
+
+ +
+
Exception indicating an outdated Lynx firmware version.
+
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
+
Various regression utilities.
+
+ +
+
Feedforward parameter estimates from the ramp regression and additional summary statistics
+
+ +
+
Feedforward parameter estimates from the ramp regression and additional summary statistics
+
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+
+
+
+
+
+
+ diff --git a/docs/Path/allpackages-index.html b/docs/Path/allpackages-index.html index 18ff0e7a..387f5c74 100644 --- a/docs/Path/allpackages-index.html +++ b/docs/Path/allpackages-index.html @@ -1,101 +1,73 @@ - + - - - All Packages (Path API) - - - - - - - - - - - - - - -
- -
-
-
-

All Packages

-
-
Package Summary
- -
-
-
- + + +All Packages (Path API) + + + + + + + + + + + + + + +
+ + +
+ diff --git a/docs/Path/com/technototes/path/command/MecanumDriveCommand.html b/docs/Path/com/technototes/path/command/MecanumDriveCommand.html index e3e0ba8a..13585d5c 100644 --- a/docs/Path/com/technototes/path/command/MecanumDriveCommand.html +++ b/docs/Path/com/technototes/path/command/MecanumDriveCommand.html @@ -79,7 +79,7 @@

Class MecanumDriveCommandcom.technototes.library.command.Command, Runnable, Supplier<com.technototes.library.command.Command.CommandState>
-
public class MecanumDriveCommand +
public class MecanumDriveCommand extends Object implements com.technototes.library.command.Command
@@ -180,25 +180,25 @@

Field Details

  • subsystem

    - +
  • x

    -
    public DoubleSupplier x
    +
    public DoubleSupplier x
  • y

    -
    public DoubleSupplier y
    +
    public DoubleSupplier y
  • r

    -
    public DoubleSupplier r
    +
    public DoubleSupplier r
  • @@ -212,7 +212,7 @@

    Constructor Details

  • MecanumDriveCommand

    -
    public MecanumDriveCommand(PathingMecanumDrivebaseSubsystem sub, + @@ -229,7 +229,7 @@

    Method Details

  • execute

    -
    public void execute()
    +
    public void execute()
    Specified by:
    execute in interface com.technototes.library.command.Command
    @@ -239,7 +239,7 @@

    execute

  • isFinished

    -
    public boolean isFinished()
    +
    public boolean isFinished()
    Specified by:
    isFinished in interface com.technototes.library.command.Command
    @@ -249,7 +249,7 @@

    isFinished

  • end

    -
    public void end(boolean cancel)
    +
    public void end(boolean cancel)
    Specified by:
    end in interface com.technototes.library.command.Command
    diff --git a/docs/Path/com/technototes/path/command/RegenerativeTrajectoryCommand.html b/docs/Path/com/technototes/path/command/RegenerativeTrajectoryCommand.html index 892cec25..b1616bfe 100644 --- a/docs/Path/com/technototes/path/command/RegenerativeTrajectoryCommand.html +++ b/docs/Path/com/technototes/path/command/RegenerativeTrajectoryCommand.html @@ -81,7 +81,7 @@

    Class Regenerative
    com.technototes.library.command.Command, Runnable, Supplier<com.technototes.library.command.Command.CommandState>


    -
    @@ -181,7 +181,7 @@

    Field Details

  • trajFunc

    -
    public Supplier<com.acmerobotics.roadrunner.trajectory.Trajectory> trajFunc
    +
    public Supplier<com.acmerobotics.roadrunner.trajectory.Trajectory> trajFunc
  • @@ -195,21 +195,21 @@

    Constructor Details

  • RegenerativeTrajectoryCommand

    -
    public RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, +
    public RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, Function<Function<com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.TrajectoryBuilder>,com.acmerobotics.roadrunner.trajectory.Trajectory> t)
  • RegenerativeTrajectoryCommand

    -
    public RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, +
    public RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, Supplier<com.acmerobotics.roadrunner.trajectory.Trajectory> t)
  • RegenerativeTrajectoryCommand

    -
    public RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, +
    public RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, BiFunction<Function<com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.TrajectoryBuilder>,T,com.acmerobotics.roadrunner.trajectory.Trajectory> t, T mux)
    @@ -217,7 +217,7 @@

    RegenerativeTrajectoryCommand

    -
    public RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, +
    public RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, Function<T,com.acmerobotics.roadrunner.trajectory.Trajectory> t, T mux)
  • @@ -233,7 +233,7 @@

    Method Details

  • initialize

    -
    public void initialize()
    +
    public void initialize()
    Specified by:
    initialize in interface com.technototes.library.command.Command
    diff --git a/docs/Path/com/technototes/path/command/TrajectorySequenceCommand.html b/docs/Path/com/technototes/path/command/TrajectorySequenceCommand.html index 1ec0a42c..9a807af7 100644 --- a/docs/Path/com/technototes/path/command/TrajectorySequenceCommand.html +++ b/docs/Path/com/technototes/path/command/TrajectorySequenceCommand.html @@ -258,7 +258,7 @@

    Method Details

  • initialize

    -
    public void initialize()
    +
    public void initialize()
    Specified by:
    initialize in interface com.technototes.library.command.Command
    @@ -268,7 +268,7 @@

    initialize

  • execute

    -
    public void execute()
    +
    public void execute()
    Specified by:
    execute in interface com.technototes.library.command.Command
    @@ -278,7 +278,7 @@

    execute

  • isFinished

    -
    public boolean isFinished()
    +
    public boolean isFinished()
    Specified by:
    isFinished in interface com.technototes.library.command.Command
    @@ -288,7 +288,7 @@

    isFinished

  • end

    -
    public void end(boolean cancel)
    +
    public void end(boolean cancel)
    Specified by:
    end in interface com.technototes.library.command.Command
    diff --git a/docs/Path/help-doc.html b/docs/Path/help-doc.html index 5d7423c3..a2e7a2eb 100644 --- a/docs/Path/help-doc.html +++ b/docs/Path/help-doc.html @@ -1,261 +1,180 @@ - + - - - API Help (Path API) - - - - - - - - - - - - - - -
    - -
    -
    -

    JavaDoc Help

    - -
    -
    -

    Navigation

    - Starting from the Overview page, you can browse the - documentation using the links in each page, and in the navigation bar at the top of each - page. The Index and Search box allow you to navigate to - specific declarations and summary pages, including: - All Packages, - All Classes and Interfaces - -
    -
    -
    -

    Kinds of Pages

    - The following sections describe the different kinds of pages in this collection. -
    -

    Overview

    -

    - The Overview page is the front page of this API document - and provides a list of all packages with a summary for each. This page can also - contain an overall description of the set of packages. -

    -
    -
    -

    Package

    -

    - Each package has a page that contains a list of its classes and interfaces, with a - summary for each. These pages may contain the following categories: -

    -
      -
    • Interfaces
    • -
    • Classes
    • -
    • Enum Classes
    • -
    • Exceptions
    • -
    • Errors
    • -
    • Annotation Interfaces
    • -
    -
    -
    -

    Class or Interface

    -

    - Each class, interface, nested class and nested interface has its own separate page. - Each of these pages has three sections consisting of a declaration and description, - member summary tables, and detailed member descriptions. Entries in each of these - sections are omitted if they are empty or not applicable. -

    -
      -
    • Class Inheritance Diagram
    • -
    • Direct Subclasses
    • -
    • All Known Subinterfaces
    • -
    • All Known Implementing Classes
    • -
    • Class or Interface Declaration
    • -
    • Class or Interface Description
    • -
    -
    -
      -
    • Nested Class Summary
    • -
    • Enum Constant Summary
    • -
    • Field Summary
    • -
    • Property Summary
    • -
    • Constructor Summary
    • -
    • Method Summary
    • -
    • Required Element Summary
    • -
    • Optional Element Summary
    • -
    -
    -
      -
    • Enum Constant Details
    • -
    • Field Details
    • -
    • Property Details
    • -
    • Constructor Details
    • -
    • Method Details
    • -
    • Element Details
    • -
    -

    - Note: Annotation interfaces have required and - optional elements, but not methods. Only enum classes have enum constants. The - components of a record class are displayed as part of the declaration of the record - class. Properties are a feature of JavaFX. -

    -

    - The summary entries are alphabetical, while the detailed descriptions are in the - order they appear in the source code. This preserves the logical groupings - established by the programmer. -

    -
    -
    -

    Other Files

    -

    - Packages and modules may contain pages with additional information related to the - declarations nearby. -

    -
    -
    -

    Tree (Class Hierarchy)

    -

    - There is a Class Hierarchy page for all packages, - plus a hierarchy for each package. Each hierarchy page contains a list of classes - and a list of interfaces. Classes are organized by inheritance structure starting - with java.lang.Object. Interfaces do not inherit from - java.lang.Object. -

    -
      -
    • - When viewing the Overview page, clicking on TREE displays the hierarchy for all - packages. -
    • -
    • - When viewing a particular package, class or interface page, clicking on TREE - displays the hierarchy for only that package. -
    • -
    -
    -
    -

    Serialized Form

    -

    - Each serializable or externalizable class has a description of its serialization - fields and methods. This information is of interest to those who implement rather - than use the API. While there is no link in the navigation bar, you can get to this - information by going to any serialized class and clicking "Serialized Form" in the - "See Also" section of the class description. -

    -
    -
    -

    All Packages

    -

    - The All Packages page contains an alphabetic - index of all packages contained in the documentation. -

    -
    -
    -

    All Classes and Interfaces

    -

    - The All Classes and Interfaces page contains an - alphabetic index of all classes and interfaces contained in the documentation, - including annotation interfaces, enum classes, and record classes. -

    -
    -
    -

    Index

    -

    - The Index contains an alphabetic index of all classes, - interfaces, constructors, methods, and fields in the documentation, as well as - summary pages such as All Packages, - All Classes and Interfaces. -

    -
    -
    -
    - This help file applies to API documentation generated by the standard doclet. -
    -
    -
    - + + +API Help (Path API) + + + + + + + + + + + + + + +
    + +
    +
    +

    JavaDoc Help

    + +
    +
    +

    Navigation

    +Starting from the Overview page, you can browse the documentation using the links in each page, and in the navigation bar at the top of each page. The Index and Search box allow you to navigate to specific declarations and summary pages, including: All Packages, All Classes and Interfaces + +
    +
    +
    +

    Kinds of Pages

    +The following sections describe the different kinds of pages in this collection. +
    +

    Overview

    +

    The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

    +
    +
    +

    Package

    +

    Each package has a page that contains a list of its classes and interfaces, with a summary for each. These pages may contain the following categories:

    +
      +
    • Interfaces
    • +
    • Classes
    • +
    • Enum Classes
    • +
    • Exceptions
    • +
    • Errors
    • +
    • Annotation Interfaces
    • +
    +
    +
    +

    Class or Interface

    +

    Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a declaration and description, member summary tables, and detailed member descriptions. Entries in each of these sections are omitted if they are empty or not applicable.

    +
      +
    • Class Inheritance Diagram
    • +
    • Direct Subclasses
    • +
    • All Known Subinterfaces
    • +
    • All Known Implementing Classes
    • +
    • Class or Interface Declaration
    • +
    • Class or Interface Description
    • +
    +
    +
      +
    • Nested Class Summary
    • +
    • Enum Constant Summary
    • +
    • Field Summary
    • +
    • Property Summary
    • +
    • Constructor Summary
    • +
    • Method Summary
    • +
    • Required Element Summary
    • +
    • Optional Element Summary
    • +
    +
    +
      +
    • Enum Constant Details
    • +
    • Field Details
    • +
    • Property Details
    • +
    • Constructor Details
    • +
    • Method Details
    • +
    • Element Details
    • +
    +

    Note: Annotation interfaces have required and optional elements, but not methods. Only enum classes have enum constants. The components of a record class are displayed as part of the declaration of the record class. Properties are a feature of JavaFX.

    +

    The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.

    +
    +
    +

    Other Files

    +

    Packages and modules may contain pages with additional information related to the declarations nearby.

    +
    +
    +

    Tree (Class Hierarchy)

    +

    There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. Classes are organized by inheritance structure starting with java.lang.Object. Interfaces do not inherit from java.lang.Object.

    +
      +
    • When viewing the Overview page, clicking on TREE displays the hierarchy for all packages.
    • +
    • When viewing a particular package, class or interface page, clicking on TREE displays the hierarchy for only that package.
    • +
    +
    +
    +

    Serialized Form

    +

    Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to those who implement rather than use the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See Also" section of the class description.

    +
    +
    +

    All Packages

    +

    The All Packages page contains an alphabetic index of all packages contained in the documentation.

    +
    +
    +

    All Classes and Interfaces

    +

    The All Classes and Interfaces page contains an alphabetic index of all classes and interfaces contained in the documentation, including annotation interfaces, enum classes, and record classes.

    +
    +
    +

    Index

    +

    The Index contains an alphabetic index of all classes, interfaces, constructors, methods, and fields in the documentation, as well as summary pages such as All Packages, All Classes and Interfaces.

    +
    +
    +
    +This help file applies to API documentation generated by the standard doclet.
    +
    +
    + diff --git a/docs/Path/index-all.html b/docs/Path/index-all.html index d3ff9630..d31da351 100644 --- a/docs/Path/index-all.html +++ b/docs/Path/index-all.html @@ -1,6602 +1,1155 @@ - + - - - Index (Path API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Index

    -
    - A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Serialized Form -

    A

    -
    -
    - AccelResult(double, double) - - Constructor for class com.technototes.path.util.RegressionUtil.AccelResult -
    -
     
    -
    - addDisplacementMarker(double, double, MarkerCallback) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - addDisplacementMarker(double, MarkerCallback) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - addDisplacementMarker(DisplacementProducer, MarkerCallback) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - addDisplacementMarker(MarkerCallback) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - addSpatialMarker(Vector2d, MarkerCallback) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - addTemporalMarker(double, double, MarkerCallback) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - addTemporalMarker(double, MarkerCallback) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - addTemporalMarker(MarkerCallback) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - addTemporalMarker(TimeProducer, MarkerCallback) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - addTrajectory(Trajectory) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - AxesSigns - - Enum Class in - com.technototes.path.util -
    -
    -
    IMU axes signs in the order XYZ (after remapping).
    -
    -
    - AXIAL_PID - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    -

    B

    -
    -
    - back(double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - back(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - batteryVoltageSensor - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - BNO055IMUUtil - - Class in - com.technototes.path.util -
    -
    -
    Various utility functions for the BNO055 IMU.
    -
    -
    - BNO055IMUUtil() - - Constructor for class com.technototes.path.util.BNO055IMUUtil -
    -
     
    -
    - build() - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - bVal - - Variable in enum class com.technototes.path.util.AxesSigns -
    -
     
    -
    -

    C

    -
    -
    - COLOR_ACTIVE_TRAJECTORY - - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - COLOR_ACTIVE_TURN - - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - COLOR_ACTIVE_WAIT - - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - COLOR_INACTIVE_TRAJECTORY - - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - COLOR_INACTIVE_TURN - - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - COLOR_INACTIVE_WAIT - - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - com.technototes.path.command - - package com.technototes.path.command -
    -
     
    -
    - com.technototes.path.geometry - - package com.technototes.path.geometry -
    -
     
    -
    - com.technototes.path.subsystem - - package com.technototes.path.subsystem -
    -
     
    -
    - com.technototes.path.trajectorysequence - - package com.technototes.path.trajectorysequence -
    -
     
    -
    - com.technototes.path.trajectorysequence.sequencesegment - - package com.technototes.path.trajectorysequence.sequencesegment -
    -
     
    -
    - com.technototes.path.util - - package com.technototes.path.util -
    -
     
    -
    - compareTo(LynxModuleUtil.LynxFirmwareVersion) - - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion -
    -
     
    -
    - ConfigurablePose - - Class in - com.technototes.path.geometry -
    -
     
    -
    - ConfigurablePose() - - Constructor for class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - ConfigurablePose(double, double) - - Constructor for class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - ConfigurablePose(double, double, double) - - Constructor for class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - ConfigurablePose(Pose2d) - - Constructor for class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - ConfigurablePose(Vector2d) - - Constructor for class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - ConfigurablePose(Vector2d, double) - - Constructor for class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - ConfigurablePoseD - - Class in - com.technototes.path.geometry -
    -
     
    -
    - ConfigurablePoseD() - - Constructor for class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - ConfigurablePoseD(double, double) - - Constructor for class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - ConfigurablePoseD(double, double, double) - - Constructor for class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - ConfigurablePoseD(Pose2d) - - Constructor for class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - ConfigurablePoseD(Vector2d) - - Constructor for class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - ConfigurablePoseD(Vector2d, double) - - Constructor for class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - ConfigurableVector - - Class in - com.technototes.path.geometry -
    -
     
    -
    - ConfigurableVector() - - Constructor for class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - ConfigurableVector(double, double) - - Constructor for class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - ConfigurableVector(Vector2d) - - Constructor for class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - CROSS_TRACK_PID - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    -

    D

    -
    -
    - DashboardUtil - - Class in - com.technototes.path.util -
    -
    -
    - Set of helper functions for drawing Road Runner paths and trajectories on dashboard - canvases. -
    -
    -
    - DashboardUtil() - - Constructor for class com.technototes.path.util.DashboardUtil -
    -
     
    -
    - DeadWheelConstants - - Interface in - com.technototes.path.subsystem -
    -
     
    -
    - DeadWheelConstants.EncoderOverflow - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - DeadWheelConstants.ForwardOffset - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - DeadWheelConstants.GearRatio - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - DeadWheelConstants.LateralDistance - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - DeadWheelConstants.TicksPerRev - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - DeadWheelConstants.WheelRadius - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - DistanceSensorLocalizer - - Class in - com.technototes.path.subsystem -
    -
     
    -
    - DistanceSensorLocalizer(IGyro, Map<IDistanceSensor, Pose2d>) - - Constructor for class com.technototes.path.subsystem.DistanceSensorLocalizer -
    -
     
    -
    - DO_DASH - - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - drawPoseHistory(Canvas, List<Pose2d>) - - Static method in class com.technototes.path.util.DashboardUtil -
    -
     
    -
    - drawRobot(Canvas, Pose2d) - - Static method in class com.technototes.path.util.DashboardUtil -
    -
     
    -
    - drawSampledPath(Canvas, Path) - - Static method in class com.technototes.path.util.DashboardUtil -
    -
     
    -
    - drawSampledPath(Canvas, Path, double) - - Static method in class com.technototes.path.util.DashboardUtil -
    -
     
    -
    - duration() - - Method in class com.technototes.path.trajectorysequence.TrajectorySequence -
    -
     
    -
    -

    E

    -
    -
    - EmptySequenceException - - Exception in - com.technototes.path.trajectorysequence -
    -
     
    -
    - EmptySequenceException() - - Constructor for exception com.technototes.path.trajectorysequence.EmptySequenceException -
    -
     
    -
    - encoderOverflow - - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - encoderTicksToInches(double) - - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - encoderTicksToInches(double, double, double, double) - - Static method in interface com.technototes.path.subsystem.DeadWheelConstants -
    -
     
    -
    - encoderTicksToInches(double, double, double, double) - - Static method in interface com.technototes.path.subsystem.MecanumConstants -
    -
     
    -
    - encoderTicksToInches(double, double, double, double) - - Static method in interface com.technototes.path.subsystem.TankConstants -
    -
     
    -
    - end() - - Method in class com.technototes.path.trajectorysequence.TrajectorySequence -
    -
     
    -
    - end(boolean) - - Method in class com.technototes.path.command.MecanumDriveCommand -
    -
     
    -
    - end(boolean) - - Method in class com.technototes.path.command.TrajectoryCommand -
    -
     
    -
    - end(boolean) - - Method in class com.technototes.path.command.TrajectorySequenceCommand -
    -
     
    -
    - eng - - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion -
    -
     
    -
    - ensureMinimumFirmwareVersion(HardwareMap) - - Static method in class com.technototes.path.util.LynxModuleUtil -
    -
    -
    - Ensure all of the Lynx modules attached to the robot satisfy the minimum - requirement. -
    -
    -
    - equals(Object) - - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion -
    -
     
    -
    - execute() - - Method in class com.technototes.path.command.MecanumDriveCommand -
    -
     
    -
    - execute() - - Method in class com.technototes.path.command.ResetGyroCommand -
    -
     
    -
    - execute() - - Method in class com.technototes.path.command.TrajectoryCommand -
    -
     
    -
    - execute() - - Method in class com.technototes.path.command.TrajectorySequenceCommand -
    -
     
    -
    -

    F

    -
    -
    - fitAccelData(List<Double>, List<Double>, List<Double>, - RegressionUtil.RampResult, File) - - Static method in class com.technototes.path.util.RegressionUtil -
    -
    -
    Run regression to compute acceleration feedforward.
    -
    -
    - fitRampData(List<Double>, List<Double>, List<Double>, boolean, - File) - - Static method in class com.technototes.path.util.RegressionUtil -
    -
    -
    - Run regression to compute velocity and static feedforward from ramp test data. -
    -
    -
    - FOLLOW_TRAJECTORY - - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode -
    -
     
    -
    - followTrajectory(Trajectory) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - followTrajectory(Trajectory) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - followTrajectoryAsync(Trajectory) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - followTrajectoryAsync(Trajectory) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - followTrajectorySequence(TrajectorySequence) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - followTrajectorySequence(TrajectorySequence) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - followTrajectorySequenceAsync(TrajectorySequence) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - followTrajectorySequenceAsync(TrajectorySequence) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - followTrajectorySequenceAsync(TrajectorySequence) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - forward(double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - forward(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - forwardOffset - - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - frontEncoder - - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    -

    G

    -
    -
    - GEAR_RATIO - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - GEAR_RATIO - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - gearRatio - - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - get(int) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequence -
    -
     
    -
    - getAccelerationConstraint(double) - - Static method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - getAccelerationConstraint(double) - - Static method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - getBoolean(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.DeadWheelConstants -
    -
     
    -
    - getBoolean(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.MecanumConstants -
    -
     
    -
    - getBoolean(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.TankConstants -
    -
     
    -
    - getConstant() - - Method in interface com.technototes.path.subsystem.DeadWheelConstants -
    -
     
    -
    - getConstant() - - Method in interface com.technototes.path.subsystem.MecanumConstants -
    -
     
    -
    - getConstant() - - Method in interface com.technototes.path.subsystem.TankConstants -
    -
     
    -
    - getDouble(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.DeadWheelConstants -
    -
     
    -
    - getDouble(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.MecanumConstants -
    -
     
    -
    - getDouble(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.TankConstants -
    -
     
    -
    - getDuration() - - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment -
    -
     
    -
    - getEndPose() - - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment -
    -
     
    -
    - getExternalHeadingVelocity() - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - getExternalHeadingVelocity() - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - getFirmwareVersion(LynxModule) - - Static method in class com.technototes.path.util.LynxModuleUtil -
    -
    -
    Retrieve and parse Lynx module firmware version.
    -
    -
    - getGearRatio() - - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - getHeading() - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - getHeading() - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - getHeading() - - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer -
    -
     
    -
    - getInt(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.MecanumConstants -
    -
     
    -
    - getInt(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.TankConstants -
    -
     
    -
    - getLastError() - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - getLastError() - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - getLastPoseError() - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - getLogFile(String) - - Static method in class com.technototes.path.util.LoggingUtil -
    -
    -
    Obtain a log file with the provided name
    -
    -
    - getMarkers() - - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment -
    -
     
    -
    - getMotionProfile() - - Method in class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment -
    -
     
    -
    - getMotorVelocityF(double) - - Static method in interface com.technototes.path.subsystem.DeadWheelConstants -
    -
     
    -
    - getMotorVelocityF(double) - - Static method in interface com.technototes.path.subsystem.MecanumConstants -
    -
     
    -
    - getMotorVelocityF(double) - - Static method in interface com.technototes.path.subsystem.TankConstants -
    -
     
    -
    - getPID(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.MecanumConstants -
    -
     
    -
    - getPID(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.TankConstants -
    -
     
    -
    - getPIDF(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.MecanumConstants -
    -
     
    -
    - getPIDF(Class<? extends Annotation>) - - Method in interface com.technototes.path.subsystem.TankConstants -
    -
     
    -
    - getPoseEstimate() - - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer -
    -
     
    -
    - getPoseVelocity() - - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer -
    -
     
    -
    - getRadians() - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - getRawExternalHeading() - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - getRawExternalHeading() - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - getStartPose() - - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment -
    -
     
    -
    - getTicksPerRev() - - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - getTotalRotation() - - Method in class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment -
    -
     
    -
    - getTrajectory() - - Method in class com.technototes.path.trajectorysequence.sequencesegment.TrajectorySegment -
    -
     
    -
    - getVelocityConstraint(double, double, double) - - Static method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - getVelocityConstraint(double, double, double) - - Static method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - getWheelPositions() - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - getWheelPositions() - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - getWheelPositions() - - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - getWheelRadius() - - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - getWheelVelocities() - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - getWheelVelocities() - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - getWheelVelocities() - - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - getX() - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - getY() - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - gyroOffset - - Variable in class com.technototes.path.subsystem.DistanceSensorLocalizer -
    -
     
    -
    -

    H

    -
    -
    - heading - - Variable in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - heading - - Variable in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - HEADING_PID - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - HEADING_PID - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    -

    I

    -
    -
    - IDLE - - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode -
    -
     
    -
    - imu - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - initialize() - - Method in class com.technototes.path.command.RegenerativeTrajectoryCommand -
    -
     
    -
    - initialize() - - Method in class com.technototes.path.command.RegenerativeTrajectorySequenceCommand -
    -
     
    -
    - initialize() - - Method in class com.technototes.path.command.TrajectoryCommand -
    -
     
    -
    - initialize() - - Method in class com.technototes.path.command.TrajectorySequenceCommand -
    -
     
    -
    - isBusy() - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - isBusy() - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - isBusy() - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - isFinished() - - Method in class com.technototes.path.command.MecanumDriveCommand -
    -
     
    -
    - isFinished() - - Method in class com.technototes.path.command.TrajectoryCommand -
    -
     
    -
    - isFinished() - - Method in class com.technototes.path.command.TrajectorySequenceCommand -
    -
     
    -
    -

    K

    -
    -
    - kA - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - kA - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - kA - - Variable in class com.technototes.path.util.RegressionUtil.AccelResult -
    -
     
    -
    - kStatic - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - kStatic - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - kStatic - - Variable in class com.technototes.path.util.RegressionUtil.RampResult -
    -
     
    -
    - kV - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - kV - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - kV - - Variable in class com.technototes.path.util.RegressionUtil.RampResult -
    -
     
    -
    -

    L

    -
    -
    - LATERAL_MULTIPLIER - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - LATERAL_MULTIPLIER - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - lateralDistance - - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - leftEncoder - - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - leftFront - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - leftRear - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - lineTo(Vector2d) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - lineTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - lineToConstantHeading(Vector2d) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - lineToConstantHeading(Vector2d, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - lineToLinearHeading(Pose2d) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - lineToLinearHeading(Pose2d, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - lineToSplineHeading(Pose2d) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - lineToSplineHeading(Pose2d, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - LoggingUtil - - Class in - com.technototes.path.util -
    -
    -
    Utility functions for log files.
    -
    -
    - LoggingUtil() - - Constructor for class com.technototes.path.util.LoggingUtil -
    -
     
    -
    - LynxFirmwareVersion(int, int, int) - - Constructor for class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion -
    -
     
    -
    - LynxFirmwareVersionException(String) - - Constructor for exception com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersionException -
    -
     
    -
    - LynxModuleUtil - - Class in - com.technototes.path.util -
    -
    -
    Collection of utilites for interacting with Lynx modules.
    -
    -
    - LynxModuleUtil() - - Constructor for class com.technototes.path.util.LynxModuleUtil -
    -
     
    -
    - LynxModuleUtil.LynxFirmwareVersion - - Class in - com.technototes.path.util -
    -
    -
    Parsed representation of a Lynx module firmware version.
    -
    -
    - LynxModuleUtil.LynxFirmwareVersionException - - Exception in - com.technototes.path.util -
    -
    -
    Exception indicating an outdated Lynx firmware version.
    -
    -
    -

    M

    -
    -
    - major - - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion -
    -
     
    -
    - mapPose(Function<Pose2d, T>) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - mapPose(Function<Pose2d, T>) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - mapVec(Function<Vector2d, T>) - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - mapX(Function<Double, T>) - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - mapY(Function<Double, T>) - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - MAX_ACCEL - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - MAX_ACCEL - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - MAX_ANG_ACCEL - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - MAX_ANG_ACCEL - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - MAX_ANG_VEL - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - MAX_ANG_VEL - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - MAX_RPM - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - MAX_RPM - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - MAX_VEL - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - MAX_VEL - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - MecanumConstants - - Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.GearRatio - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.HeadPID - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.KA - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.KStatic - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.KV - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.LateralMult - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.MaxAccel - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.MaxAngleAccel - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.MaxAngleVelo - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.MaxRPM - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.MaxVelo - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.MotorVeloPID - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.OmegaWeight - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.PoseLimit - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.TicksPerRev - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.TrackWidth - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.TransPID - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.UseDriveEncoder - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.VXWeight - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.VYWeight - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.WheelBase - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumConstants.WheelRadius - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - MecanumDriveCommand - - Class in - com.technototes.path.command -
    -
     
    -
    - MecanumDriveCommand(PathingMecanumDrivebaseSubsystem, DoubleSupplier, - DoubleSupplier, DoubleSupplier) - - Constructor for class com.technototes.path.command.MecanumDriveCommand -
    -
     
    -
    - minor - - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion -
    -
     
    -
    - mirrorOverX(Pose2d) - - Static method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - mirrorOverX(Pose2d) - - Static method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - mirrorOverY(Pose2d) - - Static method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - mirrorOverY(Pose2d) - - Static method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - MOTOR_VELO_PID - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - MOTOR_VELO_PID - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - motors - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - mutateHeading(UnaryOperator<Double>) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - mutateHeading(UnaryOperator<Double>) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - mutatePose(UnaryOperator<Pose2d>) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - mutatePose(UnaryOperator<Pose2d>) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - mutateVec(UnaryOperator<Vector2d>) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - mutateVec(UnaryOperator<Vector2d>) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - mutateVec(UnaryOperator<Vector2d>) - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - mutateX(UnaryOperator<Double>) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - mutateX(UnaryOperator<Double>) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - mutateX(UnaryOperator<Double>) - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - mutateY(UnaryOperator<Double>) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - mutateY(UnaryOperator<Double>) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - mutateY(UnaryOperator<Double>) - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    -

    N

    -
    -
    - NNN - - Enum constant in enum class com.technototes.path.util.AxesSigns -
    -
     
    -
    - NNP - - Enum constant in enum class com.technototes.path.util.AxesSigns -
    -
     
    -
    - NPN - - Enum constant in enum class com.technototes.path.util.AxesSigns -
    -
     
    -
    - NPP - - Enum constant in enum class com.technototes.path.util.AxesSigns -
    -
     
    -
    -

    O

    -
    -
    - OMEGA_WEIGHT - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - OMEGA_WEIGHT - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    -

    P

    -
    -
    - PathingMecanumDrivebaseSubsystem - - Class in - com.technototes.path.subsystem -
    -
     
    -
    - PathingMecanumDrivebaseSubsystem(EncodedMotor<DcMotorEx>, - EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, - EncodedMotor<DcMotorEx>, IMU, MecanumConstants) - - Constructor for class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - PathingMecanumDrivebaseSubsystem(EncodedMotor<DcMotorEx>, - EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, - EncodedMotor<DcMotorEx>, IMU, MecanumConstants, Localizer) - - Constructor for class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - PathingMecanumDrivebaseSubsystem.Mode - - Enum Class in - com.technototes.path.subsystem -
    -
     
    -
    - PNN - - Enum constant in enum class com.technototes.path.util.AxesSigns -
    -
     
    -
    - PNP - - Enum constant in enum class com.technototes.path.util.AxesSigns -
    -
     
    -
    - POSE_HISTORY_LIMIT - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - POSE_HISTORY_LIMIT - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - POSE_HISTORY_LIMIT - - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - PPN - - Enum constant in enum class com.technototes.path.util.AxesSigns -
    -
     
    -
    - PPP - - Enum constant in enum class com.technototes.path.util.AxesSigns -
    -
     
    -
    -

    R

    -
    -
    - r - - Variable in class com.technototes.path.command.MecanumDriveCommand -
    -
     
    -
    - RampResult(double, double, double) - - Constructor for class com.technototes.path.util.RegressionUtil.RampResult -
    -
     
    -
    - RegenerativeTrajectoryCommand - - Class in - com.technototes.path.command -
    -
     
    -
    - RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, - BiFunction<Function<Pose2d, TrajectoryBuilder>, T, Trajectory>, T) - - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand -
    -
     
    -
    - RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, - Function<Function<Pose2d, TrajectoryBuilder>, Trajectory>) - - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand -
    -
     
    -
    - RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<T, - Trajectory>, T) - - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand -
    -
     
    -
    - RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, - Supplier<Trajectory>) - - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand -
    -
     
    -
    - RegenerativeTrajectorySequenceCommand - - Class in - com.technototes.path.command -
    -
     
    -
    - RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, - BiFunction<Function<Pose2d, TrajectorySequenceBuilder>, T, - TrajectorySequence>, T) - - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand -
    -
     
    -
    - RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, - Function<Function<Pose2d, TrajectorySequenceBuilder>, - TrajectorySequence>) - - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand -
    -
     
    -
    - RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, - Function<T, TrajectorySequence>, T) - - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand -
    -
     
    -
    - RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, - Supplier<TrajectorySequence>) - - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand -
    -
     
    -
    - RegressionUtil - - Class in - com.technototes.path.util -
    -
    -
    Various regression utilities.
    -
    -
    - RegressionUtil() - - Constructor for class com.technototes.path.util.RegressionUtil -
    -
     
    -
    - RegressionUtil.AccelResult - - Class in - com.technototes.path.util -
    -
    -
    - Feedforward parameter estimates from the ramp regression and additional summary - statistics -
    -
    -
    - RegressionUtil.RampResult - - Class in - com.technototes.path.util -
    -
    -
    - Feedforward parameter estimates from the ramp regression and additional summary - statistics -
    -
    -
    - remapAxes(BNO055IMU, AxesOrder, AxesSigns) - - Static method in class com.technototes.path.util.BNO055IMUUtil -
    -
    -
    Remap BNO055 IMU axes and signs.
    -
    -
    - resetAccelConstraint() - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - resetConstraints() - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - ResetGyroCommand - - Class in - com.technototes.path.command -
    -
     
    -
    - ResetGyroCommand(PathingMecanumDrivebaseSubsystem) - - Constructor for class com.technototes.path.command.ResetGyroCommand -
    -
     
    -
    - resetTurnConstraint() - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - resetVelConstraint() - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - rightEncoder - - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - rightFront - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - rightRear - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - ROAD_RUNNER_FOLDER - - Static variable in class com.technototes.path.util.LoggingUtil -
    -
     
    -
    - rpmToVelocity(double, double, double) - - Static method in interface com.technototes.path.subsystem.DeadWheelConstants -
    -
     
    -
    - rpmToVelocity(double, double, double) - - Static method in interface com.technototes.path.subsystem.MecanumConstants -
    -
     
    -
    - rpmToVelocity(double, double, double) - - Static method in interface com.technototes.path.subsystem.TankConstants -
    -
     
    -
    - rSquare - - Variable in class com.technototes.path.util.RegressionUtil.AccelResult -
    -
     
    -
    - rSquare - - Variable in class com.technototes.path.util.RegressionUtil.RampResult -
    -
     
    -
    - RUN_USING_ENCODER - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - RUN_USING_ENCODER - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    -

    S

    -
    -
    - SequenceSegment - - Class in - com.technototes.path.trajectorysequence.sequencesegment -
    -
     
    -
    - SequenceSegment(double, Pose2d, Pose2d, List<TrajectoryMarker>) - - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment -
    -
     
    -
    - set(double, double) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - set(double, double) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - set(double, double) - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - set(double, double, double) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - set(double, double, double) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - set(Pose2d) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - set(Pose2d) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - set(Vector2d) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - set(Vector2d) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - set(Vector2d) - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - set(Vector2d, double) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - set(Vector2d, double) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - setAccelConstraint(TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - setConstraints(TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - setGyroOffset(double) - - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer -
    -
     
    -
    - setHeading(double) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - setHeading(double) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - setMode(DcMotor.RunMode) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - setMode(DcMotor.RunMode) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - setMotorPowers(double, double) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - setMotorPowers(double, double, double, double) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - setPoseEstimate(Pose2d) - - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer -
    -
     
    -
    - setReversed(boolean) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - setTangent(double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - setTurnConstraint(double, double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - setVelConstraint(TrajectoryVelocityConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - setWeightedDrivePower(Pose2d) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - setWeightedDrivePower(Pose2d) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - setX(double) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - setX(double) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - setX(double) - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - setY(double) - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - setY(double) - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - setY(double) - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - setZeroPowerBehavior(DcMotor.ZeroPowerBehavior) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - setZeroPowerBehavior(DcMotor.ZeroPowerBehavior) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - size() - - Method in class com.technototes.path.trajectorysequence.TrajectorySequence -
    -
     
    -
    - speed - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - splineTo(Vector2d, double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - splineTo(Vector2d, double, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - splineToConstantHeading(Vector2d, double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - splineToConstantHeading(Vector2d, double, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - splineToLinearHeading(Pose2d, double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - splineToLinearHeading(Pose2d, double, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - splineToSplineHeading(Pose2d, double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - splineToSplineHeading(Pose2d, double, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - start() - - Method in class com.technototes.path.trajectorysequence.TrajectorySequence -
    -
     
    -
    - stop() - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - strafeLeft(double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - strafeLeft(double, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - strafeRight(double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - strafeRight(double, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - strafeTo(Vector2d) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - strafeTo(Vector2d, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - subsystem - - Variable in class com.technototes.path.command.MecanumDriveCommand -
    -
     
    -
    - subsystem - - Variable in class com.technototes.path.command.ResetGyroCommand -
    -
     
    -
    - subsystem - - Variable in class com.technototes.path.command.TrajectoryCommand -
    -
     
    -
    - subsystem - - Variable in class com.technototes.path.command.TrajectorySequenceCommand -
    -
     
    -
    -

    T

    -
    -
    - TankConstants - - Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.AxialPID - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.CrossPID - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.GearRatio - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.HeadPID - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.KA - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.KStatic - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.KV - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.LateralMult - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.MaxAccel - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.MaxAngleAccel - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.MaxAngleVelo - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.MaxRPM - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.MaxVelo - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.MotorVeloPID - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.OmegaWeight - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.PoseLimit - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.TicksPerRev - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.TrackWidth - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.UseDriveEncoder - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.VXWeight - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankConstants.WheelRadius - - Annotation Interface in - com.technototes.path.subsystem -
    -
     
    -
    - TankDrivebaseSubsystem - - Class in - com.technototes.path.subsystem -
    -
     
    -
    - TankDrivebaseSubsystem(EncodedMotorGroup<DcMotorEx>, - EncodedMotorGroup<DcMotorEx>, IMU, TankConstants, Localizer) - - Constructor for class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - ThreeDeadWheelLocalizer - - Class in - com.technototes.path.subsystem -
    -
     
    -
    - ThreeDeadWheelLocalizer(MotorEncoder, MotorEncoder, MotorEncoder, - DeadWheelConstants) - - Constructor for class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - TICKS_PER_REV - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - TICKS_PER_REV - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - ticksPerRev - - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    - toPose() - - Method in class com.technototes.path.geometry.ConfigurablePose -
    -
     
    -
    - toPose() - - Method in class com.technototes.path.geometry.ConfigurablePoseD -
    -
     
    -
    - toString() - - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion -
    -
     
    -
    - toVec() - - Method in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    - TRACK_WIDTH - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - TRACK_WIDTH - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - trajectory - - Variable in class com.technototes.path.command.TrajectoryCommand -
    -
     
    -
    - trajectory - - Variable in class com.technototes.path.command.TrajectorySequenceCommand -
    -
     
    -
    - trajectoryBuilder(Pose2d) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - trajectoryBuilder(Pose2d) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - trajectoryBuilder(Pose2d, boolean) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - trajectoryBuilder(Pose2d, boolean) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - trajectoryBuilder(Pose2d, double) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - trajectoryBuilder(Pose2d, double) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - TrajectoryCommand - - Class in - com.technototes.path.command -
    -
     
    -
    - TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Trajectory) - - Constructor for class com.technototes.path.command.TrajectoryCommand -
    -
     
    -
    - TrajectoryCommand(PathingMecanumDrivebaseSubsystem, - BiFunction<Function<Pose2d, TrajectoryBuilder>, T, Trajectory>, T) - - Constructor for class com.technototes.path.command.TrajectoryCommand -
    -
     
    -
    - TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<Function<Pose2d, - TrajectoryBuilder>, Trajectory>) - - Constructor for class com.technototes.path.command.TrajectoryCommand -
    -
     
    -
    - TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<T, Trajectory>, - T) - - Constructor for class com.technototes.path.command.TrajectoryCommand -
    -
     
    -
    - TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier<Trajectory>) - - Constructor for class com.technototes.path.command.TrajectoryCommand -
    -
     
    -
    - TrajectorySegment - - Class in - com.technototes.path.trajectorysequence.sequencesegment -
    -
     
    -
    - TrajectorySegment(Trajectory) - - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.TrajectorySegment -
    -
     
    -
    - TrajectorySequence - - Class in - com.technototes.path.trajectorysequence -
    -
     
    -
    - TrajectorySequence(List<SequenceSegment>) - - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequence -
    -
     
    -
    - trajectorySequenceBuilder() - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - trajectorySequenceBuilder(Pose2d) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - trajectorySequenceBuilder(Pose2d) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - TrajectorySequenceBuilder - - Class in - com.technototes.path.trajectorysequence -
    -
     
    -
    - TrajectorySequenceBuilder(Pose2d, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint, double, double) - - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - TrajectorySequenceBuilder(Pose2d, Double, TrajectoryVelocityConstraint, - TrajectoryAccelerationConstraint, double, double) - - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - TrajectorySequenceCommand - - Class in - com.technototes.path.command -
    -
     
    -
    - TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, TrajectorySequence) - - Constructor for class com.technototes.path.command.TrajectorySequenceCommand -
    -
     
    -
    - TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, - BiFunction<Function<Pose2d, TrajectorySequenceBuilder>, T, - TrajectorySequence>, T) - - Constructor for class com.technototes.path.command.TrajectorySequenceCommand -
    -
     
    -
    - TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, - Function<Function<Pose2d, TrajectorySequenceBuilder>, - TrajectorySequence>) - - Constructor for class com.technototes.path.command.TrajectorySequenceCommand -
    -
     
    -
    - TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function<T, - TrajectorySequence>, T) - - Constructor for class com.technototes.path.command.TrajectorySequenceCommand -
    -
     
    -
    - TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, - Supplier<TrajectorySequence>) - - Constructor for class com.technototes.path.command.TrajectorySequenceCommand -
    -
     
    -
    - TrajectorySequenceRunner - - Class in - com.technototes.path.trajectorysequence -
    -
     
    -
    - TrajectorySequenceRunner(TrajectoryFollower, PIDCoefficients) - - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    - trajFunc - - Variable in class com.technototes.path.command.RegenerativeTrajectoryCommand -
    -
     
    -
    - trajFunc - - Variable in class com.technototes.path.command.RegenerativeTrajectorySequenceCommand -
    -
     
    -
    - TRANSLATIONAL_PID - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - turn(double) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - turn(double) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - turn(double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - turn(double, double, double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - TURN - - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode -
    -
     
    -
    - turnAsync(double) - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - turnAsync(double) - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - TurnSegment - - Class in - com.technototes.path.trajectorysequence.sequencesegment -
    -
     
    -
    - TurnSegment(Pose2d, double, MotionProfile, List<TrajectoryMarker>) - - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment -
    -
     
    -
    -

    U

    -
    -
    - UNSTABLE_addDisplacementMarkerOffset(double, MarkerCallback) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - UNSTABLE_addTemporalMarkerOffset(double, MarkerCallback) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - update() - - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer -
    -
     
    -
    - update() - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - update() - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - update(Pose2d) - - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer -
    -
     
    -
    - update(Pose2d, Pose2d) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner -
    -
     
    -
    -

    V

    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.path.util.AxesSigns -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - values() - - Static method in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - values() - - Static method in enum class com.technototes.path.util.AxesSigns -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - VX_WEIGHT - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - VX_WEIGHT - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - VY_WEIGHT - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    -

    W

    -
    -
    - waitForIdle() - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - waitForIdle() - - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - waitSeconds(double) - - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder -
    -
     
    -
    - WaitSegment - - Class in - com.technototes.path.trajectorysequence.sequencesegment -
    -
     
    -
    - WaitSegment(Pose2d, double, List<TrajectoryMarker>) - - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.WaitSegment -
    -
     
    -
    - WHEEL_BASE - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - WHEEL_RADIUS - - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - WHEEL_RADIUS - - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem -
    -
     
    -
    - wheelRadius - - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer -
    -
     
    -
    -

    X

    -
    -
    - x - - Variable in class com.technototes.path.command.MecanumDriveCommand -
    -
     
    -
    - x - - Variable in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    -

    Y

    -
    -
    - y - - Variable in class com.technototes.path.command.MecanumDriveCommand -
    -
     
    -
    - y - - Variable in class com.technototes.path.geometry.ConfigurableVector -
    -
     
    -
    -

    Z

    -
    -
    - zeroExternalHeading() - - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem -
    -
     
    -
    - A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Serialized Form -
    -
    -
    - + + +Index (Path API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Index

    +
    +A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Serialized Form +

    A

    +
    +
    AccelResult(double, double) - Constructor for class com.technototes.path.util.RegressionUtil.AccelResult
    +
     
    +
    addDisplacementMarker(double, double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    addDisplacementMarker(double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    addDisplacementMarker(DisplacementProducer, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    addDisplacementMarker(MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    addSpatialMarker(Vector2d, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    addTemporalMarker(double, double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    addTemporalMarker(double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    addTemporalMarker(MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    addTemporalMarker(TimeProducer, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    addTrajectory(Trajectory) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    AxesSigns - Enum Class in com.technototes.path.util
    +
    +
    IMU axes signs in the order XYZ (after remapping).
    +
    +
    AXIAL_PID - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    +

    B

    +
    +
    back(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    back(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    batteryVoltageSensor - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    BNO055IMUUtil - Class in com.technototes.path.util
    +
    +
    Various utility functions for the BNO055 IMU.
    +
    +
    BNO055IMUUtil() - Constructor for class com.technototes.path.util.BNO055IMUUtil
    +
     
    +
    build() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    bVal - Variable in enum class com.technototes.path.util.AxesSigns
    +
     
    +
    +

    C

    +
    +
    COLOR_ACTIVE_TRAJECTORY - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    COLOR_ACTIVE_TURN - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    COLOR_ACTIVE_WAIT - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    COLOR_INACTIVE_TRAJECTORY - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    COLOR_INACTIVE_TURN - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    COLOR_INACTIVE_WAIT - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    com.technototes.path.command - package com.technototes.path.command
    +
     
    +
    com.technototes.path.geometry - package com.technototes.path.geometry
    +
     
    +
    com.technototes.path.subsystem - package com.technototes.path.subsystem
    +
     
    +
    com.technototes.path.trajectorysequence - package com.technototes.path.trajectorysequence
    +
     
    +
    com.technototes.path.trajectorysequence.sequencesegment - package com.technototes.path.trajectorysequence.sequencesegment
    +
     
    +
    com.technototes.path.util - package com.technototes.path.util
    +
     
    +
    compareTo(LynxModuleUtil.LynxFirmwareVersion) - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    +
     
    +
    ConfigurablePose - Class in com.technototes.path.geometry
    +
     
    +
    ConfigurablePose() - Constructor for class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    ConfigurablePose(double, double) - Constructor for class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    ConfigurablePose(double, double, double) - Constructor for class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    ConfigurablePose(Pose2d) - Constructor for class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    ConfigurablePose(Vector2d) - Constructor for class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    ConfigurablePose(Vector2d, double) - Constructor for class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    ConfigurablePoseD - Class in com.technototes.path.geometry
    +
     
    +
    ConfigurablePoseD() - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    ConfigurablePoseD(double, double) - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    ConfigurablePoseD(double, double, double) - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    ConfigurablePoseD(Pose2d) - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    ConfigurablePoseD(Vector2d) - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    ConfigurablePoseD(Vector2d, double) - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    ConfigurableVector - Class in com.technototes.path.geometry
    +
     
    +
    ConfigurableVector() - Constructor for class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    ConfigurableVector(double, double) - Constructor for class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    ConfigurableVector(Vector2d) - Constructor for class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    CROSS_TRACK_PID - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    +

    D

    +
    +
    DashboardUtil - Class in com.technototes.path.util
    +
    +
    Set of helper functions for drawing Road Runner paths and trajectories on dashboard canvases.
    +
    +
    DashboardUtil() - Constructor for class com.technototes.path.util.DashboardUtil
    +
     
    +
    DeadWheelConstants - Interface in com.technototes.path.subsystem
    +
     
    +
    DeadWheelConstants.EncoderOverflow - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    DeadWheelConstants.ForwardOffset - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    DeadWheelConstants.GearRatio - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    DeadWheelConstants.LateralDistance - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    DeadWheelConstants.TicksPerRev - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    DeadWheelConstants.WheelRadius - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    DistanceSensorLocalizer - Class in com.technototes.path.subsystem
    +
     
    +
    DistanceSensorLocalizer(IGyro, Map<IDistanceSensor, Pose2d>) - Constructor for class com.technototes.path.subsystem.DistanceSensorLocalizer
    +
     
    +
    DO_DASH - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    drawPoseHistory(Canvas, List<Pose2d>) - Static method in class com.technototes.path.util.DashboardUtil
    +
     
    +
    drawRobot(Canvas, Pose2d) - Static method in class com.technototes.path.util.DashboardUtil
    +
     
    +
    drawSampledPath(Canvas, Path) - Static method in class com.technototes.path.util.DashboardUtil
    +
     
    +
    drawSampledPath(Canvas, Path, double) - Static method in class com.technototes.path.util.DashboardUtil
    +
     
    +
    duration() - Method in class com.technototes.path.trajectorysequence.TrajectorySequence
    +
     
    +
    +

    E

    +
    +
    EmptySequenceException - Exception in com.technototes.path.trajectorysequence
    +
     
    +
    EmptySequenceException() - Constructor for exception com.technototes.path.trajectorysequence.EmptySequenceException
    +
     
    +
    encoderOverflow - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    encoderTicksToInches(double) - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    encoderTicksToInches(double, double, double, double) - Static method in interface com.technototes.path.subsystem.DeadWheelConstants
    +
     
    +
    encoderTicksToInches(double, double, double, double) - Static method in interface com.technototes.path.subsystem.MecanumConstants
    +
     
    +
    encoderTicksToInches(double, double, double, double) - Static method in interface com.technototes.path.subsystem.TankConstants
    +
     
    +
    end() - Method in class com.technototes.path.trajectorysequence.TrajectorySequence
    +
     
    +
    end(boolean) - Method in class com.technototes.path.command.MecanumDriveCommand
    +
     
    +
    end(boolean) - Method in class com.technototes.path.command.TrajectoryCommand
    +
     
    +
    end(boolean) - Method in class com.technototes.path.command.TrajectorySequenceCommand
    +
     
    +
    eng - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    +
     
    +
    ensureMinimumFirmwareVersion(HardwareMap) - Static method in class com.technototes.path.util.LynxModuleUtil
    +
    +
    Ensure all of the Lynx modules attached to the robot satisfy the minimum requirement.
    +
    +
    equals(Object) - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    +
     
    +
    execute() - Method in class com.technototes.path.command.MecanumDriveCommand
    +
     
    +
    execute() - Method in class com.technototes.path.command.ResetGyroCommand
    +
     
    +
    execute() - Method in class com.technototes.path.command.TrajectoryCommand
    +
     
    +
    execute() - Method in class com.technototes.path.command.TrajectorySequenceCommand
    +
     
    +
    +

    F

    +
    +
    fitAccelData(List<Double>, List<Double>, List<Double>, RegressionUtil.RampResult, File) - Static method in class com.technototes.path.util.RegressionUtil
    +
    +
    Run regression to compute acceleration feedforward.
    +
    +
    fitRampData(List<Double>, List<Double>, List<Double>, boolean, File) - Static method in class com.technototes.path.util.RegressionUtil
    +
    +
    Run regression to compute velocity and static feedforward from ramp test data.
    +
    +
    FOLLOW_TRAJECTORY - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode
    +
     
    +
    followTrajectory(Trajectory) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    followTrajectory(Trajectory) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    followTrajectoryAsync(Trajectory) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    followTrajectoryAsync(Trajectory) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    followTrajectorySequence(TrajectorySequence) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    followTrajectorySequence(TrajectorySequence) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    followTrajectorySequenceAsync(TrajectorySequence) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    followTrajectorySequenceAsync(TrajectorySequence) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    followTrajectorySequenceAsync(TrajectorySequence) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    forward(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    forward(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    forwardOffset - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    frontEncoder - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    +

    G

    +
    +
    GEAR_RATIO - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    GEAR_RATIO - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    gearRatio - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    get(int) - Method in class com.technototes.path.trajectorysequence.TrajectorySequence
    +
     
    +
    getAccelerationConstraint(double) - Static method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    getAccelerationConstraint(double) - Static method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    getBoolean(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.DeadWheelConstants
    +
     
    +
    getBoolean(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.MecanumConstants
    +
     
    +
    getBoolean(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.TankConstants
    +
     
    +
    getConstant() - Method in interface com.technototes.path.subsystem.DeadWheelConstants
    +
     
    +
    getConstant() - Method in interface com.technototes.path.subsystem.MecanumConstants
    +
     
    +
    getConstant() - Method in interface com.technototes.path.subsystem.TankConstants
    +
     
    +
    getDouble(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.DeadWheelConstants
    +
     
    +
    getDouble(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.MecanumConstants
    +
     
    +
    getDouble(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.TankConstants
    +
     
    +
    getDuration() - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment
    +
     
    +
    getEndPose() - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment
    +
     
    +
    getExternalHeadingVelocity() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    getExternalHeadingVelocity() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    getFirmwareVersion(LynxModule) - Static method in class com.technototes.path.util.LynxModuleUtil
    +
    +
    Retrieve and parse Lynx module firmware version.
    +
    +
    getGearRatio() - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    getHeading() - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    getHeading() - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    getHeading() - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    +
     
    +
    getInt(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.MecanumConstants
    +
     
    +
    getInt(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.TankConstants
    +
     
    +
    getLastError() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    getLastError() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    getLastPoseError() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    getLogFile(String) - Static method in class com.technototes.path.util.LoggingUtil
    +
    +
    Obtain a log file with the provided name
    +
    +
    getMarkers() - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment
    +
     
    +
    getMotionProfile() - Method in class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment
    +
     
    +
    getMotorVelocityF(double) - Static method in interface com.technototes.path.subsystem.DeadWheelConstants
    +
     
    +
    getMotorVelocityF(double) - Static method in interface com.technototes.path.subsystem.MecanumConstants
    +
     
    +
    getMotorVelocityF(double) - Static method in interface com.technototes.path.subsystem.TankConstants
    +
     
    +
    getPID(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.MecanumConstants
    +
     
    +
    getPID(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.TankConstants
    +
     
    +
    getPIDF(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.MecanumConstants
    +
     
    +
    getPIDF(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.TankConstants
    +
     
    +
    getPoseEstimate() - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    +
     
    +
    getPoseVelocity() - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    +
     
    +
    getRadians() - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    getRawExternalHeading() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    getRawExternalHeading() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    getStartPose() - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment
    +
     
    +
    getTicksPerRev() - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    getTotalRotation() - Method in class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment
    +
     
    +
    getTrajectory() - Method in class com.technototes.path.trajectorysequence.sequencesegment.TrajectorySegment
    +
     
    +
    getVelocityConstraint(double, double, double) - Static method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    getVelocityConstraint(double, double, double) - Static method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    getWheelPositions() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    getWheelPositions() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    getWheelPositions() - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    getWheelRadius() - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    getWheelVelocities() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    getWheelVelocities() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    getWheelVelocities() - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    getX() - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    getY() - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    gyroOffset - Variable in class com.technototes.path.subsystem.DistanceSensorLocalizer
    +
     
    +
    +

    H

    +
    +
    heading - Variable in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    heading - Variable in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    HEADING_PID - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    HEADING_PID - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    +

    I

    +
    +
    IDLE - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode
    +
     
    +
    imu - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    initialize() - Method in class com.technototes.path.command.RegenerativeTrajectoryCommand
    +
     
    +
    initialize() - Method in class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    +
     
    +
    initialize() - Method in class com.technototes.path.command.TrajectoryCommand
    +
     
    +
    initialize() - Method in class com.technototes.path.command.TrajectorySequenceCommand
    +
     
    +
    isBusy() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    isBusy() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    isBusy() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    isFinished() - Method in class com.technototes.path.command.MecanumDriveCommand
    +
     
    +
    isFinished() - Method in class com.technototes.path.command.TrajectoryCommand
    +
     
    +
    isFinished() - Method in class com.technototes.path.command.TrajectorySequenceCommand
    +
     
    +
    +

    K

    +
    +
    kA - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    kA - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    kA - Variable in class com.technototes.path.util.RegressionUtil.AccelResult
    +
     
    +
    kStatic - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    kStatic - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    kStatic - Variable in class com.technototes.path.util.RegressionUtil.RampResult
    +
     
    +
    kV - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    kV - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    kV - Variable in class com.technototes.path.util.RegressionUtil.RampResult
    +
     
    +
    +

    L

    +
    +
    LATERAL_MULTIPLIER - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    LATERAL_MULTIPLIER - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    lateralDistance - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    leftEncoder - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    leftFront - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    leftRear - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    lineTo(Vector2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    lineTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    lineToConstantHeading(Vector2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    lineToConstantHeading(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    lineToLinearHeading(Pose2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    lineToLinearHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    lineToSplineHeading(Pose2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    lineToSplineHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    LoggingUtil - Class in com.technototes.path.util
    +
    +
    Utility functions for log files.
    +
    +
    LoggingUtil() - Constructor for class com.technototes.path.util.LoggingUtil
    +
     
    +
    LynxFirmwareVersion(int, int, int) - Constructor for class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    +
     
    +
    LynxFirmwareVersionException(String) - Constructor for exception com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersionException
    +
     
    +
    LynxModuleUtil - Class in com.technototes.path.util
    +
    +
    Collection of utilites for interacting with Lynx modules.
    +
    +
    LynxModuleUtil() - Constructor for class com.technototes.path.util.LynxModuleUtil
    +
     
    +
    LynxModuleUtil.LynxFirmwareVersion - Class in com.technototes.path.util
    +
    +
    Parsed representation of a Lynx module firmware version.
    +
    +
    LynxModuleUtil.LynxFirmwareVersionException - Exception in com.technototes.path.util
    +
    +
    Exception indicating an outdated Lynx firmware version.
    +
    +
    +

    M

    +
    +
    major - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    +
     
    +
    mapPose(Function<Pose2d, T>) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    mapPose(Function<Pose2d, T>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    mapVec(Function<Vector2d, T>) - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    mapX(Function<Double, T>) - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    mapY(Function<Double, T>) - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    MAX_ACCEL - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    MAX_ACCEL - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    MAX_ANG_ACCEL - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    MAX_ANG_ACCEL - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    MAX_ANG_VEL - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    MAX_ANG_VEL - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    MAX_RPM - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    MAX_RPM - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    MAX_VEL - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    MAX_VEL - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    MecanumConstants - Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.GearRatio - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.HeadPID - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.KA - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.KStatic - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.KV - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.LateralMult - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.MaxAccel - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.MaxAngleAccel - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.MaxAngleVelo - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.MaxRPM - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.MaxVelo - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.MotorVeloPID - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.OmegaWeight - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.PoseLimit - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.TicksPerRev - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.TrackWidth - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.TransPID - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.UseDriveEncoder - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.VXWeight - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.VYWeight - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.WheelBase - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumConstants.WheelRadius - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    MecanumDriveCommand - Class in com.technototes.path.command
    +
     
    +
    MecanumDriveCommand(PathingMecanumDrivebaseSubsystem, DoubleSupplier, DoubleSupplier, DoubleSupplier) - Constructor for class com.technototes.path.command.MecanumDriveCommand
    +
     
    +
    minor - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    +
     
    +
    mirrorOverX(Pose2d) - Static method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    mirrorOverX(Pose2d) - Static method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    mirrorOverY(Pose2d) - Static method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    mirrorOverY(Pose2d) - Static method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    MOTOR_VELO_PID - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    MOTOR_VELO_PID - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    motors - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    mutateHeading(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    mutateHeading(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    mutatePose(UnaryOperator<Pose2d>) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    mutatePose(UnaryOperator<Pose2d>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    mutateVec(UnaryOperator<Vector2d>) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    mutateVec(UnaryOperator<Vector2d>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    mutateVec(UnaryOperator<Vector2d>) - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    mutateX(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    mutateX(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    mutateX(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    mutateY(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    mutateY(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    mutateY(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    +

    N

    +
    +
    NNN - Enum constant in enum class com.technototes.path.util.AxesSigns
    +
     
    +
    NNP - Enum constant in enum class com.technototes.path.util.AxesSigns
    +
     
    +
    NPN - Enum constant in enum class com.technototes.path.util.AxesSigns
    +
     
    +
    NPP - Enum constant in enum class com.technototes.path.util.AxesSigns
    +
     
    +
    +

    O

    +
    +
    OMEGA_WEIGHT - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    OMEGA_WEIGHT - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    +

    P

    +
    +
    PathingMecanumDrivebaseSubsystem - Class in com.technototes.path.subsystem
    +
     
    +
    PathingMecanumDrivebaseSubsystem(EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, IMU, MecanumConstants) - Constructor for class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    PathingMecanumDrivebaseSubsystem(EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, IMU, MecanumConstants, Localizer) - Constructor for class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    PathingMecanumDrivebaseSubsystem.Mode - Enum Class in com.technototes.path.subsystem
    +
     
    +
    PNN - Enum constant in enum class com.technototes.path.util.AxesSigns
    +
     
    +
    PNP - Enum constant in enum class com.technototes.path.util.AxesSigns
    +
     
    +
    POSE_HISTORY_LIMIT - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    POSE_HISTORY_LIMIT - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    POSE_HISTORY_LIMIT - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    PPN - Enum constant in enum class com.technototes.path.util.AxesSigns
    +
     
    +
    PPP - Enum constant in enum class com.technototes.path.util.AxesSigns
    +
     
    +
    +

    R

    +
    +
    r - Variable in class com.technototes.path.command.MecanumDriveCommand
    +
     
    +
    RampResult(double, double, double) - Constructor for class com.technototes.path.util.RegressionUtil.RampResult
    +
     
    +
    RegenerativeTrajectoryCommand - Class in com.technototes.path.command
    +
     
    +
    RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction<Function<Pose2d, TrajectoryBuilder>, T, Trajectory>, T) - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand
    +
     
    +
    RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<Function<Pose2d, TrajectoryBuilder>, Trajectory>) - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand
    +
     
    +
    RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<T, Trajectory>, T) - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand
    +
     
    +
    RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier<Trajectory>) - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand
    +
     
    +
    RegenerativeTrajectorySequenceCommand - Class in com.technototes.path.command
    +
     
    +
    RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction<Function<Pose2d, TrajectorySequenceBuilder>, T, TrajectorySequence>, T) - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    +
     
    +
    RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function<Function<Pose2d, TrajectorySequenceBuilder>, TrajectorySequence>) - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    +
     
    +
    RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function<T, TrajectorySequence>, T) - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    +
     
    +
    RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier<TrajectorySequence>) - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    +
     
    +
    RegressionUtil - Class in com.technototes.path.util
    +
    +
    Various regression utilities.
    +
    +
    RegressionUtil() - Constructor for class com.technototes.path.util.RegressionUtil
    +
     
    +
    RegressionUtil.AccelResult - Class in com.technototes.path.util
    +
    +
    Feedforward parameter estimates from the ramp regression and additional summary statistics
    +
    +
    RegressionUtil.RampResult - Class in com.technototes.path.util
    +
    +
    Feedforward parameter estimates from the ramp regression and additional summary statistics
    +
    +
    remapAxes(BNO055IMU, AxesOrder, AxesSigns) - Static method in class com.technototes.path.util.BNO055IMUUtil
    +
    +
    Remap BNO055 IMU axes and signs.
    +
    +
    resetAccelConstraint() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    resetConstraints() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    ResetGyroCommand - Class in com.technototes.path.command
    +
     
    +
    ResetGyroCommand(PathingMecanumDrivebaseSubsystem) - Constructor for class com.technototes.path.command.ResetGyroCommand
    +
     
    +
    resetTurnConstraint() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    resetVelConstraint() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    rightEncoder - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    rightFront - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    rightRear - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    ROAD_RUNNER_FOLDER - Static variable in class com.technototes.path.util.LoggingUtil
    +
     
    +
    rpmToVelocity(double, double, double) - Static method in interface com.technototes.path.subsystem.DeadWheelConstants
    +
     
    +
    rpmToVelocity(double, double, double) - Static method in interface com.technototes.path.subsystem.MecanumConstants
    +
     
    +
    rpmToVelocity(double, double, double) - Static method in interface com.technototes.path.subsystem.TankConstants
    +
     
    +
    rSquare - Variable in class com.technototes.path.util.RegressionUtil.AccelResult
    +
     
    +
    rSquare - Variable in class com.technototes.path.util.RegressionUtil.RampResult
    +
     
    +
    RUN_USING_ENCODER - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    RUN_USING_ENCODER - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    +

    S

    +
    +
    SequenceSegment - Class in com.technototes.path.trajectorysequence.sequencesegment
    +
     
    +
    SequenceSegment(double, Pose2d, Pose2d, List<TrajectoryMarker>) - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment
    +
     
    +
    set(double, double) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    set(double, double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    set(double, double) - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    set(double, double, double) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    set(double, double, double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    set(Pose2d) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    set(Pose2d) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    set(Vector2d) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    set(Vector2d) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    set(Vector2d) - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    set(Vector2d, double) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    set(Vector2d, double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    setAccelConstraint(TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    setConstraints(TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    setGyroOffset(double) - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    +
     
    +
    setHeading(double) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    setHeading(double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    setMode(DcMotor.RunMode) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    setMode(DcMotor.RunMode) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    setMotorPowers(double, double) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    setMotorPowers(double, double, double, double) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    setPoseEstimate(Pose2d) - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    +
     
    +
    setReversed(boolean) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    setTangent(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    setTurnConstraint(double, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    setVelConstraint(TrajectoryVelocityConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    setWeightedDrivePower(Pose2d) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    setWeightedDrivePower(Pose2d) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    setX(double) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    setX(double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    setX(double) - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    setY(double) - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    setY(double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    setY(double) - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    setZeroPowerBehavior(DcMotor.ZeroPowerBehavior) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    setZeroPowerBehavior(DcMotor.ZeroPowerBehavior) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    size() - Method in class com.technototes.path.trajectorysequence.TrajectorySequence
    +
     
    +
    speed - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    splineTo(Vector2d, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    splineTo(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    splineToConstantHeading(Vector2d, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    splineToConstantHeading(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    splineToLinearHeading(Pose2d, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    splineToLinearHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    splineToSplineHeading(Pose2d, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    splineToSplineHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    start() - Method in class com.technototes.path.trajectorysequence.TrajectorySequence
    +
     
    +
    stop() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    strafeLeft(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    strafeLeft(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    strafeRight(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    strafeRight(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    strafeTo(Vector2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    strafeTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    subsystem - Variable in class com.technototes.path.command.MecanumDriveCommand
    +
     
    +
    subsystem - Variable in class com.technototes.path.command.ResetGyroCommand
    +
     
    +
    subsystem - Variable in class com.technototes.path.command.TrajectoryCommand
    +
     
    +
    subsystem - Variable in class com.technototes.path.command.TrajectorySequenceCommand
    +
     
    +
    +

    T

    +
    +
    TankConstants - Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.AxialPID - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.CrossPID - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.GearRatio - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.HeadPID - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.KA - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.KStatic - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.KV - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.LateralMult - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.MaxAccel - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.MaxAngleAccel - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.MaxAngleVelo - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.MaxRPM - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.MaxVelo - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.MotorVeloPID - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.OmegaWeight - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.PoseLimit - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.TicksPerRev - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.TrackWidth - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.UseDriveEncoder - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.VXWeight - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankConstants.WheelRadius - Annotation Interface in com.technototes.path.subsystem
    +
     
    +
    TankDrivebaseSubsystem - Class in com.technototes.path.subsystem
    +
     
    +
    TankDrivebaseSubsystem(EncodedMotorGroup<DcMotorEx>, EncodedMotorGroup<DcMotorEx>, IMU, TankConstants, Localizer) - Constructor for class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    ThreeDeadWheelLocalizer - Class in com.technototes.path.subsystem
    +
     
    +
    ThreeDeadWheelLocalizer(MotorEncoder, MotorEncoder, MotorEncoder, DeadWheelConstants) - Constructor for class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    TICKS_PER_REV - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    TICKS_PER_REV - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    ticksPerRev - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    toPose() - Method in class com.technototes.path.geometry.ConfigurablePose
    +
     
    +
    toPose() - Method in class com.technototes.path.geometry.ConfigurablePoseD
    +
     
    +
    toString() - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    +
     
    +
    toVec() - Method in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    TRACK_WIDTH - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    TRACK_WIDTH - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    trajectory - Variable in class com.technototes.path.command.TrajectoryCommand
    +
     
    +
    trajectory - Variable in class com.technototes.path.command.TrajectorySequenceCommand
    +
     
    +
    trajectoryBuilder(Pose2d) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    trajectoryBuilder(Pose2d) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    trajectoryBuilder(Pose2d, boolean) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    trajectoryBuilder(Pose2d, boolean) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    trajectoryBuilder(Pose2d, double) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    trajectoryBuilder(Pose2d, double) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    TrajectoryCommand - Class in com.technototes.path.command
    +
     
    +
    TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Trajectory) - Constructor for class com.technototes.path.command.TrajectoryCommand
    +
     
    +
    TrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction<Function<Pose2d, TrajectoryBuilder>, T, Trajectory>, T) - Constructor for class com.technototes.path.command.TrajectoryCommand
    +
     
    +
    TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<Function<Pose2d, TrajectoryBuilder>, Trajectory>) - Constructor for class com.technototes.path.command.TrajectoryCommand
    +
     
    +
    TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<T, Trajectory>, T) - Constructor for class com.technototes.path.command.TrajectoryCommand
    +
     
    +
    TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier<Trajectory>) - Constructor for class com.technototes.path.command.TrajectoryCommand
    +
     
    +
    TrajectorySegment - Class in com.technototes.path.trajectorysequence.sequencesegment
    +
     
    +
    TrajectorySegment(Trajectory) - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.TrajectorySegment
    +
     
    +
    TrajectorySequence - Class in com.technototes.path.trajectorysequence
    +
     
    +
    TrajectorySequence(List<SequenceSegment>) - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequence
    +
     
    +
    trajectorySequenceBuilder() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    trajectorySequenceBuilder(Pose2d) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    trajectorySequenceBuilder(Pose2d) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    TrajectorySequenceBuilder - Class in com.technototes.path.trajectorysequence
    +
     
    +
    TrajectorySequenceBuilder(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double) - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    TrajectorySequenceBuilder(Pose2d, Double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double) - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    TrajectorySequenceCommand - Class in com.technototes.path.command
    +
     
    +
    TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, TrajectorySequence) - Constructor for class com.technototes.path.command.TrajectorySequenceCommand
    +
     
    +
    TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction<Function<Pose2d, TrajectorySequenceBuilder>, T, TrajectorySequence>, T) - Constructor for class com.technototes.path.command.TrajectorySequenceCommand
    +
     
    +
    TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function<Function<Pose2d, TrajectorySequenceBuilder>, TrajectorySequence>) - Constructor for class com.technototes.path.command.TrajectorySequenceCommand
    +
     
    +
    TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function<T, TrajectorySequence>, T) - Constructor for class com.technototes.path.command.TrajectorySequenceCommand
    +
     
    +
    TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier<TrajectorySequence>) - Constructor for class com.technototes.path.command.TrajectorySequenceCommand
    +
     
    +
    TrajectorySequenceRunner - Class in com.technototes.path.trajectorysequence
    +
     
    +
    TrajectorySequenceRunner(TrajectoryFollower, PIDCoefficients) - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    trajFunc - Variable in class com.technototes.path.command.RegenerativeTrajectoryCommand
    +
     
    +
    trajFunc - Variable in class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    +
     
    +
    TRANSLATIONAL_PID - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    turn(double) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    turn(double) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    turn(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    turn(double, double, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    TURN - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode
    +
     
    +
    turnAsync(double) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    turnAsync(double) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    TurnSegment - Class in com.technototes.path.trajectorysequence.sequencesegment
    +
     
    +
    TurnSegment(Pose2d, double, MotionProfile, List<TrajectoryMarker>) - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment
    +
     
    +
    +

    U

    +
    +
    UNSTABLE_addDisplacementMarkerOffset(double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    UNSTABLE_addTemporalMarkerOffset(double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    update() - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    +
     
    +
    update() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    update() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    update(Pose2d) - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    +
     
    +
    update(Pose2d, Pose2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    +
     
    +
    +

    V

    +
    +
    valueOf(String) - Static method in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    valueOf(String) - Static method in enum class com.technototes.path.util.AxesSigns
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    values() - Static method in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Static method in enum class com.technototes.path.util.AxesSigns
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    VX_WEIGHT - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    VX_WEIGHT - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    VY_WEIGHT - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    +

    W

    +
    +
    waitForIdle() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    waitForIdle() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    waitSeconds(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    +
     
    +
    WaitSegment - Class in com.technototes.path.trajectorysequence.sequencesegment
    +
     
    +
    WaitSegment(Pose2d, double, List<TrajectoryMarker>) - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.WaitSegment
    +
     
    +
    WHEEL_BASE - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    WHEEL_RADIUS - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    WHEEL_RADIUS - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    +
     
    +
    wheelRadius - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    +
     
    +
    +

    X

    +
    +
    x - Variable in class com.technototes.path.command.MecanumDriveCommand
    +
     
    +
    x - Variable in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    +

    Y

    +
    +
    y - Variable in class com.technototes.path.command.MecanumDriveCommand
    +
     
    +
    y - Variable in class com.technototes.path.geometry.ConfigurableVector
    +
     
    +
    +

    Z

    +
    +
    zeroExternalHeading() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    +
     
    +
    +A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Serialized Form
    +
    +
    + diff --git a/docs/Path/index.html b/docs/Path/index.html index eed71d00..3e24a800 100644 --- a/docs/Path/index.html +++ b/docs/Path/index.html @@ -1,118 +1,75 @@ - + - - - Overview (Path API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Path API

    -
    -
    -
    Packages
    - -
    -
    -
    -
    - + + +Overview (Path API) + + + + + + + + + + + + + + +
    + + +
    + diff --git a/docs/Path/jquery-ui.overrides.css b/docs/Path/jquery-ui.overrides.css index bc437535..facf852c 100644 --- a/docs/Path/jquery-ui.overrides.css +++ b/docs/Path/jquery-ui.overrides.css @@ -29,7 +29,7 @@ a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover { - /* Overrides the color of selection used in jQuery UI */ - background: #f8981d; - border: 1px solid #f8981d; + /* Overrides the color of selection used in jQuery UI */ + background: #F8981D; + border: 1px solid #F8981D; } diff --git a/docs/Path/member-search-index.js b/docs/Path/member-search-index.js index 7cbacf96..7f6550ab 100644 --- a/docs/Path/member-search-index.js +++ b/docs/Path/member-search-index.js @@ -1,1563 +1 @@ -memberSearchIndex = [ - { - p: 'com.technototes.path.util', - c: 'RegressionUtil.AccelResult', - l: 'AccelResult(double, double)', - u: '%3Cinit%3E(double,double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'addDisplacementMarker(DisplacementProducer, MarkerCallback)', - u: 'addDisplacementMarker(com.acmerobotics.roadrunner.trajectory.DisplacementProducer,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'addDisplacementMarker(double, double, MarkerCallback)', - u: 'addDisplacementMarker(double,double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'addDisplacementMarker(double, MarkerCallback)', - u: 'addDisplacementMarker(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'addDisplacementMarker(MarkerCallback)', - u: 'addDisplacementMarker(com.acmerobotics.roadrunner.trajectory.MarkerCallback)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'addSpatialMarker(Vector2d, MarkerCallback)', - u: 'addSpatialMarker(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'addTemporalMarker(double, double, MarkerCallback)', - u: 'addTemporalMarker(double,double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'addTemporalMarker(double, MarkerCallback)', - u: 'addTemporalMarker(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'addTemporalMarker(MarkerCallback)', - u: 'addTemporalMarker(com.acmerobotics.roadrunner.trajectory.MarkerCallback)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'addTemporalMarker(TimeProducer, MarkerCallback)', - u: 'addTemporalMarker(com.acmerobotics.roadrunner.trajectory.TimeProducer,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'addTrajectory(Trajectory)', - u: 'addTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'AXIAL_PID' }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'back(double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'back(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'back(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'batteryVoltageSensor', - }, - { p: 'com.technototes.path.util', c: 'BNO055IMUUtil', l: 'BNO055IMUUtil()', u: '%3Cinit%3E()' }, - { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequenceBuilder', l: 'build()' }, - { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'bVal' }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceRunner', - l: 'COLOR_ACTIVE_TRAJECTORY', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceRunner', - l: 'COLOR_ACTIVE_TURN', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceRunner', - l: 'COLOR_ACTIVE_WAIT', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceRunner', - l: 'COLOR_INACTIVE_TRAJECTORY', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceRunner', - l: 'COLOR_INACTIVE_TURN', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceRunner', - l: 'COLOR_INACTIVE_WAIT', - }, - { - p: 'com.technototes.path.util', - c: 'LynxModuleUtil.LynxFirmwareVersion', - l: 'compareTo(LynxModuleUtil.LynxFirmwareVersion)', - u: 'compareTo(com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'ConfigurablePose()', - u: '%3Cinit%3E()', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'ConfigurablePose(double, double)', - u: '%3Cinit%3E(double,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'ConfigurablePose(double, double, double)', - u: '%3Cinit%3E(double,double,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'ConfigurablePose(Pose2d)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'ConfigurablePose(Vector2d)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'ConfigurablePose(Vector2d, double)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'ConfigurablePoseD()', - u: '%3Cinit%3E()', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'ConfigurablePoseD(double, double)', - u: '%3Cinit%3E(double,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'ConfigurablePoseD(double, double, double)', - u: '%3Cinit%3E(double,double,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'ConfigurablePoseD(Pose2d)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'ConfigurablePoseD(Vector2d)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'ConfigurablePoseD(Vector2d, double)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurableVector', - l: 'ConfigurableVector()', - u: '%3Cinit%3E()', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurableVector', - l: 'ConfigurableVector(double, double)', - u: '%3Cinit%3E(double,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurableVector', - l: 'ConfigurableVector(Vector2d)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'CROSS_TRACK_PID' }, - { p: 'com.technototes.path.util', c: 'DashboardUtil', l: 'DashboardUtil()', u: '%3Cinit%3E()' }, - { - p: 'com.technototes.path.subsystem', - c: 'DistanceSensorLocalizer', - l: 'DistanceSensorLocalizer(IGyro, Map)', - u: '%3Cinit%3E(com.technototes.library.hardware.sensor.IGyro,java.util.Map)', - }, - { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequenceRunner', l: 'DO_DASH' }, - { - p: 'com.technototes.path.util', - c: 'DashboardUtil', - l: 'drawPoseHistory(Canvas, List)', - u: 'drawPoseHistory(com.acmerobotics.dashboard.canvas.Canvas,java.util.List)', - }, - { - p: 'com.technototes.path.util', - c: 'DashboardUtil', - l: 'drawRobot(Canvas, Pose2d)', - u: 'drawRobot(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.util', - c: 'DashboardUtil', - l: 'drawSampledPath(Canvas, Path)', - u: 'drawSampledPath(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.path.Path)', - }, - { - p: 'com.technototes.path.util', - c: 'DashboardUtil', - l: 'drawSampledPath(Canvas, Path, double)', - u: 'drawSampledPath(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.path.Path,double)', - }, - { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequence', l: 'duration()' }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'EmptySequenceException', - l: 'EmptySequenceException()', - u: '%3Cinit%3E()', - }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'encoderOverflow' }, - { - p: 'com.technototes.path.subsystem', - c: 'ThreeDeadWheelLocalizer', - l: 'encoderTicksToInches(double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'DeadWheelConstants', - l: 'encoderTicksToInches(double, double, double, double)', - u: 'encoderTicksToInches(double,double,double,double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'MecanumConstants', - l: 'encoderTicksToInches(double, double, double, double)', - u: 'encoderTicksToInches(double,double,double,double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankConstants', - l: 'encoderTicksToInches(double, double, double, double)', - u: 'encoderTicksToInches(double,double,double,double)', - }, - { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequence', l: 'end()' }, - { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'end(boolean)' }, - { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'end(boolean)' }, - { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'end(boolean)' }, - { p: 'com.technototes.path.util', c: 'LynxModuleUtil.LynxFirmwareVersion', l: 'eng' }, - { - p: 'com.technototes.path.util', - c: 'LynxModuleUtil', - l: 'ensureMinimumFirmwareVersion(HardwareMap)', - u: 'ensureMinimumFirmwareVersion(com.qualcomm.robotcore.hardware.HardwareMap)', - }, - { - p: 'com.technototes.path.util', - c: 'LynxModuleUtil.LynxFirmwareVersion', - l: 'equals(Object)', - u: 'equals(java.lang.Object)', - }, - { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'execute()' }, - { p: 'com.technototes.path.command', c: 'ResetGyroCommand', l: 'execute()' }, - { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'execute()' }, - { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'execute()' }, - { - p: 'com.technototes.path.util', - c: 'RegressionUtil', - l: 'fitAccelData(List, List, List, RegressionUtil.RampResult, File)', - u: 'fitAccelData(java.util.List,java.util.List,java.util.List,com.technototes.path.util.RegressionUtil.RampResult,java.io.File)', - }, - { - p: 'com.technototes.path.util', - c: 'RegressionUtil', - l: 'fitRampData(List, List, List, boolean, File)', - u: 'fitRampData(java.util.List,java.util.List,java.util.List,boolean,java.io.File)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem.Mode', - l: 'FOLLOW_TRAJECTORY', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'followTrajectory(Trajectory)', - u: 'followTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'followTrajectory(Trajectory)', - u: 'followTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'followTrajectoryAsync(Trajectory)', - u: 'followTrajectoryAsync(com.acmerobotics.roadrunner.trajectory.Trajectory)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'followTrajectoryAsync(Trajectory)', - u: 'followTrajectoryAsync(com.acmerobotics.roadrunner.trajectory.Trajectory)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'followTrajectorySequence(TrajectorySequence)', - u: 'followTrajectorySequence(com.technototes.path.trajectorysequence.TrajectorySequence)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'followTrajectorySequence(TrajectorySequence)', - u: 'followTrajectorySequence(com.technototes.path.trajectorysequence.TrajectorySequence)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'followTrajectorySequenceAsync(TrajectorySequence)', - u: 'followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'followTrajectorySequenceAsync(TrajectorySequence)', - u: 'followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceRunner', - l: 'followTrajectorySequenceAsync(TrajectorySequence)', - u: 'followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'forward(double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'forward(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'forward(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'forwardOffset' }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'frontEncoder' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'GEAR_RATIO' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'GEAR_RATIO' }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'gearRatio' }, - { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequence', l: 'get(int)' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'getAccelerationConstraint(double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'getAccelerationConstraint(double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'DeadWheelConstants', - l: 'getBoolean(Class)', - u: 'getBoolean(java.lang.Class)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'MecanumConstants', - l: 'getBoolean(Class)', - u: 'getBoolean(java.lang.Class)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankConstants', - l: 'getBoolean(Class)', - u: 'getBoolean(java.lang.Class)', - }, - { p: 'com.technototes.path.subsystem', c: 'DeadWheelConstants', l: 'getConstant()' }, - { p: 'com.technototes.path.subsystem', c: 'MecanumConstants', l: 'getConstant()' }, - { p: 'com.technototes.path.subsystem', c: 'TankConstants', l: 'getConstant()' }, - { - p: 'com.technototes.path.subsystem', - c: 'DeadWheelConstants', - l: 'getDouble(Class)', - u: 'getDouble(java.lang.Class)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'MecanumConstants', - l: 'getDouble(Class)', - u: 'getDouble(java.lang.Class)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankConstants', - l: 'getDouble(Class)', - u: 'getDouble(java.lang.Class)', - }, - { - p: 'com.technototes.path.trajectorysequence.sequencesegment', - c: 'SequenceSegment', - l: 'getDuration()', - }, - { - p: 'com.technototes.path.trajectorysequence.sequencesegment', - c: 'SequenceSegment', - l: 'getEndPose()', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'getExternalHeadingVelocity()', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'getExternalHeadingVelocity()', - }, - { - p: 'com.technototes.path.util', - c: 'LynxModuleUtil', - l: 'getFirmwareVersion(LynxModule)', - u: 'getFirmwareVersion(com.qualcomm.hardware.lynx.LynxModule)', - }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'getGearRatio()' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'getHeading()' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'getHeading()' }, - { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'getHeading()' }, - { - p: 'com.technototes.path.subsystem', - c: 'MecanumConstants', - l: 'getInt(Class)', - u: 'getInt(java.lang.Class)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankConstants', - l: 'getInt(Class)', - u: 'getInt(java.lang.Class)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'getLastError()', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'getLastError()' }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceRunner', - l: 'getLastPoseError()', - }, - { - p: 'com.technototes.path.util', - c: 'LoggingUtil', - l: 'getLogFile(String)', - u: 'getLogFile(java.lang.String)', - }, - { - p: 'com.technototes.path.trajectorysequence.sequencesegment', - c: 'SequenceSegment', - l: 'getMarkers()', - }, - { - p: 'com.technototes.path.trajectorysequence.sequencesegment', - c: 'TurnSegment', - l: 'getMotionProfile()', - }, - { p: 'com.technototes.path.subsystem', c: 'DeadWheelConstants', l: 'getMotorVelocityF(double)' }, - { p: 'com.technototes.path.subsystem', c: 'MecanumConstants', l: 'getMotorVelocityF(double)' }, - { p: 'com.technototes.path.subsystem', c: 'TankConstants', l: 'getMotorVelocityF(double)' }, - { - p: 'com.technototes.path.subsystem', - c: 'MecanumConstants', - l: 'getPID(Class)', - u: 'getPID(java.lang.Class)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankConstants', - l: 'getPID(Class)', - u: 'getPID(java.lang.Class)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'MecanumConstants', - l: 'getPIDF(Class)', - u: 'getPIDF(java.lang.Class)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankConstants', - l: 'getPIDF(Class)', - u: 'getPIDF(java.lang.Class)', - }, - { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'getPoseEstimate()' }, - { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'getPoseVelocity()' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'getRadians()' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'getRawExternalHeading()', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'getRawExternalHeading()', - }, - { - p: 'com.technototes.path.trajectorysequence.sequencesegment', - c: 'SequenceSegment', - l: 'getStartPose()', - }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'getTicksPerRev()' }, - { - p: 'com.technototes.path.trajectorysequence.sequencesegment', - c: 'TurnSegment', - l: 'getTotalRotation()', - }, - { - p: 'com.technototes.path.trajectorysequence.sequencesegment', - c: 'TrajectorySegment', - l: 'getTrajectory()', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'getVelocityConstraint(double, double, double)', - u: 'getVelocityConstraint(double,double,double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'getVelocityConstraint(double, double, double)', - u: 'getVelocityConstraint(double,double,double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'getWheelPositions()', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'getWheelPositions()' }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'getWheelPositions()' }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'getWheelRadius()' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'getWheelVelocities()', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'getWheelVelocities()' }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'getWheelVelocities()' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'getX()' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'getY()' }, - { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'gyroOffset' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'heading' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'heading' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'HEADING_PID' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'HEADING_PID' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem.Mode', l: 'IDLE' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'imu' }, - { p: 'com.technototes.path.command', c: 'RegenerativeTrajectoryCommand', l: 'initialize()' }, - { - p: 'com.technototes.path.command', - c: 'RegenerativeTrajectorySequenceCommand', - l: 'initialize()', - }, - { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'initialize()' }, - { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'initialize()' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'isBusy()' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'isBusy()' }, - { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequenceRunner', l: 'isBusy()' }, - { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'isFinished()' }, - { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'isFinished()' }, - { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'isFinished()' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'kA' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'kA' }, - { p: 'com.technototes.path.util', c: 'RegressionUtil.AccelResult', l: 'kA' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'kStatic' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'kStatic' }, - { p: 'com.technototes.path.util', c: 'RegressionUtil.RampResult', l: 'kStatic' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'kV' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'kV' }, - { p: 'com.technototes.path.util', c: 'RegressionUtil.RampResult', l: 'kV' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'LATERAL_MULTIPLIER', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'LATERAL_MULTIPLIER' }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'lateralDistance' }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'leftEncoder' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'leftFront' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'leftRear' }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'lineTo(Vector2d)', - u: 'lineTo(com.acmerobotics.roadrunner.geometry.Vector2d)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'lineTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'lineTo(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'lineToConstantHeading(Vector2d)', - u: 'lineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'lineToConstantHeading(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'lineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'lineToLinearHeading(Pose2d)', - u: 'lineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'lineToLinearHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'lineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'lineToSplineHeading(Pose2d)', - u: 'lineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'lineToSplineHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'lineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { p: 'com.technototes.path.util', c: 'LoggingUtil', l: 'LoggingUtil()', u: '%3Cinit%3E()' }, - { - p: 'com.technototes.path.util', - c: 'LynxModuleUtil.LynxFirmwareVersion', - l: 'LynxFirmwareVersion(int, int, int)', - u: '%3Cinit%3E(int,int,int)', - }, - { - p: 'com.technototes.path.util', - c: 'LynxModuleUtil.LynxFirmwareVersionException', - l: 'LynxFirmwareVersionException(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { p: 'com.technototes.path.util', c: 'LynxModuleUtil', l: 'LynxModuleUtil()', u: '%3Cinit%3E()' }, - { p: 'com.technototes.path.util', c: 'LynxModuleUtil.LynxFirmwareVersion', l: 'major' }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'mapPose(Function)', - u: 'mapPose(java.util.function.Function)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'mapPose(Function)', - u: 'mapPose(java.util.function.Function)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurableVector', - l: 'mapVec(Function)', - u: 'mapVec(java.util.function.Function)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurableVector', - l: 'mapX(Function)', - u: 'mapX(java.util.function.Function)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurableVector', - l: 'mapY(Function)', - u: 'mapY(java.util.function.Function)', - }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'MAX_ACCEL' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MAX_ACCEL' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'MAX_ANG_ACCEL', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MAX_ANG_ACCEL' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'MAX_ANG_VEL' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MAX_ANG_VEL' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'MAX_RPM' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MAX_RPM' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'MAX_VEL' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MAX_VEL' }, - { - p: 'com.technototes.path.command', - c: 'MecanumDriveCommand', - l: 'MecanumDriveCommand(PathingMecanumDrivebaseSubsystem, DoubleSupplier, DoubleSupplier, DoubleSupplier)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.DoubleSupplier,java.util.function.DoubleSupplier,java.util.function.DoubleSupplier)', - }, - { p: 'com.technototes.path.util', c: 'LynxModuleUtil.LynxFirmwareVersion', l: 'minor' }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'mirrorOverX(Pose2d)', - u: 'mirrorOverX(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'mirrorOverX(Pose2d)', - u: 'mirrorOverX(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'mirrorOverY(Pose2d)', - u: 'mirrorOverY(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'mirrorOverY(Pose2d)', - u: 'mirrorOverY(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'MOTOR_VELO_PID', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MOTOR_VELO_PID' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'motors' }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'mutateHeading(UnaryOperator)', - u: 'mutateHeading(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'mutateHeading(UnaryOperator)', - u: 'mutateHeading(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'mutatePose(UnaryOperator)', - u: 'mutatePose(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'mutatePose(UnaryOperator)', - u: 'mutatePose(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'mutateVec(UnaryOperator)', - u: 'mutateVec(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'mutateVec(UnaryOperator)', - u: 'mutateVec(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurableVector', - l: 'mutateVec(UnaryOperator)', - u: 'mutateVec(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'mutateX(UnaryOperator)', - u: 'mutateX(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'mutateX(UnaryOperator)', - u: 'mutateX(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurableVector', - l: 'mutateX(UnaryOperator)', - u: 'mutateX(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'mutateY(UnaryOperator)', - u: 'mutateY(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'mutateY(UnaryOperator)', - u: 'mutateY(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurableVector', - l: 'mutateY(UnaryOperator)', - u: 'mutateY(java.util.function.UnaryOperator)', - }, - { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'NNN' }, - { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'NNP' }, - { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'NPN' }, - { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'NPP' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'OMEGA_WEIGHT' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'OMEGA_WEIGHT' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'PathingMecanumDrivebaseSubsystem(EncodedMotor, EncodedMotor, EncodedMotor, EncodedMotor, IMU, MecanumConstants)', - u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.MecanumConstants)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'PathingMecanumDrivebaseSubsystem(EncodedMotor, EncodedMotor, EncodedMotor, EncodedMotor, IMU, MecanumConstants, Localizer)', - u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.MecanumConstants,com.acmerobotics.roadrunner.localization.Localizer)', - }, - { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'PNN' }, - { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'PNP' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'POSE_HISTORY_LIMIT', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'POSE_HISTORY_LIMIT' }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceRunner', - l: 'POSE_HISTORY_LIMIT', - }, - { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'PPN' }, - { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'PPP' }, - { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'r' }, - { - p: 'com.technototes.path.util', - c: 'RegressionUtil.RampResult', - l: 'RampResult(double, double, double)', - u: '%3Cinit%3E(double,double,double)', - }, - { - p: 'com.technototes.path.command', - c: 'RegenerativeTrajectoryCommand', - l: 'RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, Trajectory>, T)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)', - }, - { - p: 'com.technototes.path.command', - c: 'RegenerativeTrajectoryCommand', - l: 'RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, Trajectory>)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)', - }, - { - p: 'com.technototes.path.command', - c: 'RegenerativeTrajectoryCommand', - l: 'RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, T)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)', - }, - { - p: 'com.technototes.path.command', - c: 'RegenerativeTrajectoryCommand', - l: 'RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)', - }, - { - p: 'com.technototes.path.command', - c: 'RegenerativeTrajectorySequenceCommand', - l: 'RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, TrajectorySequence>, T)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)', - }, - { - p: 'com.technototes.path.command', - c: 'RegenerativeTrajectorySequenceCommand', - l: 'RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, TrajectorySequence>)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)', - }, - { - p: 'com.technototes.path.command', - c: 'RegenerativeTrajectorySequenceCommand', - l: 'RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, T)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)', - }, - { - p: 'com.technototes.path.command', - c: 'RegenerativeTrajectorySequenceCommand', - l: 'RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)', - }, - { p: 'com.technototes.path.util', c: 'RegressionUtil', l: 'RegressionUtil()', u: '%3Cinit%3E()' }, - { - p: 'com.technototes.path.util', - c: 'BNO055IMUUtil', - l: 'remapAxes(BNO055IMU, AxesOrder, AxesSigns)', - u: 'remapAxes(com.qualcomm.hardware.bosch.BNO055IMU,org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.path.util.AxesSigns)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'resetAccelConstraint()', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'resetConstraints()', - }, - { - p: 'com.technototes.path.command', - c: 'ResetGyroCommand', - l: 'ResetGyroCommand(PathingMecanumDrivebaseSubsystem)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'resetTurnConstraint()', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'resetVelConstraint()', - }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'rightEncoder' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'rightFront' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'rightRear' }, - { p: 'com.technototes.path.util', c: 'LoggingUtil', l: 'ROAD_RUNNER_FOLDER' }, - { - p: 'com.technototes.path.subsystem', - c: 'DeadWheelConstants', - l: 'rpmToVelocity(double, double, double)', - u: 'rpmToVelocity(double,double,double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'MecanumConstants', - l: 'rpmToVelocity(double, double, double)', - u: 'rpmToVelocity(double,double,double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankConstants', - l: 'rpmToVelocity(double, double, double)', - u: 'rpmToVelocity(double,double,double)', - }, - { p: 'com.technototes.path.util', c: 'RegressionUtil.AccelResult', l: 'rSquare' }, - { p: 'com.technototes.path.util', c: 'RegressionUtil.RampResult', l: 'rSquare' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'RUN_USING_ENCODER', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'RUN_USING_ENCODER' }, - { - p: 'com.technototes.path.trajectorysequence.sequencesegment', - c: 'SequenceSegment', - l: 'SequenceSegment(double, Pose2d, Pose2d, List)', - u: '%3Cinit%3E(double,com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.geometry.Pose2d,java.util.List)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'set(double, double)', - u: 'set(double,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'set(double, double)', - u: 'set(double,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurableVector', - l: 'set(double, double)', - u: 'set(double,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'set(double, double, double)', - u: 'set(double,double,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'set(double, double, double)', - u: 'set(double,double,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'set(Pose2d)', - u: 'set(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'set(Pose2d)', - u: 'set(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'set(Vector2d)', - u: 'set(com.acmerobotics.roadrunner.geometry.Vector2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'set(Vector2d)', - u: 'set(com.acmerobotics.roadrunner.geometry.Vector2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurableVector', - l: 'set(Vector2d)', - u: 'set(com.acmerobotics.roadrunner.geometry.Vector2d)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePose', - l: 'set(Vector2d, double)', - u: 'set(com.acmerobotics.roadrunner.geometry.Vector2d,double)', - }, - { - p: 'com.technototes.path.geometry', - c: 'ConfigurablePoseD', - l: 'set(Vector2d, double)', - u: 'set(com.acmerobotics.roadrunner.geometry.Vector2d,double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'setAccelConstraint(TrajectoryAccelerationConstraint)', - u: 'setAccelConstraint(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'setConstraints(TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'setConstraints(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'setGyroOffset(double)' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'setHeading(double)' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'setHeading(double)' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'setMode(DcMotor.RunMode)', - u: 'setMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'setMode(DcMotor.RunMode)', - u: 'setMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'setMotorPowers(double, double)', - u: 'setMotorPowers(double,double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'setMotorPowers(double, double, double, double)', - u: 'setMotorPowers(double,double,double,double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients)', - u: 'setPIDFCoefficients(com.qualcomm.robotcore.hardware.DcMotor.RunMode,com.qualcomm.robotcore.hardware.PIDFCoefficients)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients)', - u: 'setPIDFCoefficients(com.qualcomm.robotcore.hardware.DcMotor.RunMode,com.qualcomm.robotcore.hardware.PIDFCoefficients)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'DistanceSensorLocalizer', - l: 'setPoseEstimate(Pose2d)', - u: 'setPoseEstimate(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'setReversed(boolean)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'setTangent(double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'setTurnConstraint(double, double)', - u: 'setTurnConstraint(double,double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'setVelConstraint(TrajectoryVelocityConstraint)', - u: 'setVelConstraint(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'setWeightedDrivePower(Pose2d)', - u: 'setWeightedDrivePower(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'setWeightedDrivePower(Pose2d)', - u: 'setWeightedDrivePower(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'setX(double)' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'setX(double)' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'setX(double)' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'setY(double)' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'setY(double)' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'setY(double)' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'setZeroPowerBehavior(DcMotor.ZeroPowerBehavior)', - u: 'setZeroPowerBehavior(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'setZeroPowerBehavior(DcMotor.ZeroPowerBehavior)', - u: 'setZeroPowerBehavior(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)', - }, - { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequence', l: 'size()' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'speed' }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'splineTo(Vector2d, double)', - u: 'splineTo(com.acmerobotics.roadrunner.geometry.Vector2d,double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'splineTo(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'splineTo(com.acmerobotics.roadrunner.geometry.Vector2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'splineToConstantHeading(Vector2d, double)', - u: 'splineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'splineToConstantHeading(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'splineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'splineToLinearHeading(Pose2d, double)', - u: 'splineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'splineToLinearHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'splineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'splineToSplineHeading(Pose2d, double)', - u: 'splineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'splineToSplineHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'splineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequence', l: 'start()' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'stop()' }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'strafeLeft(double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'strafeLeft(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'strafeLeft(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'strafeRight(double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'strafeRight(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'strafeRight(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'strafeTo(Vector2d)', - u: 'strafeTo(com.acmerobotics.roadrunner.geometry.Vector2d)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'strafeTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', - u: 'strafeTo(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', - }, - { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'subsystem' }, - { p: 'com.technototes.path.command', c: 'ResetGyroCommand', l: 'subsystem' }, - { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'subsystem' }, - { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'subsystem' }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'TankDrivebaseSubsystem(EncodedMotorGroup, EncodedMotorGroup, IMU, TankConstants, Localizer)', - u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotorGroup,com.technototes.library.hardware.motor.EncodedMotorGroup,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.TankConstants,com.acmerobotics.roadrunner.localization.Localizer)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'ThreeDeadWheelLocalizer', - l: 'ThreeDeadWheelLocalizer(MotorEncoder, MotorEncoder, MotorEncoder, DeadWheelConstants)', - u: '%3Cinit%3E(com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.path.subsystem.DeadWheelConstants)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'TICKS_PER_REV', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'TICKS_PER_REV' }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'ticksPerRev' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'toPose()' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'toPose()' }, - { p: 'com.technototes.path.util', c: 'LynxModuleUtil.LynxFirmwareVersion', l: 'toString()' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'toVec()' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'TRACK_WIDTH' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'TRACK_WIDTH' }, - { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'trajectory' }, - { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'trajectory' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'trajectoryBuilder(Pose2d)', - u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'trajectoryBuilder(Pose2d)', - u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'trajectoryBuilder(Pose2d, boolean)', - u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,boolean)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'trajectoryBuilder(Pose2d, boolean)', - u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,boolean)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'trajectoryBuilder(Pose2d, double)', - u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'trajectoryBuilder(Pose2d, double)', - u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,double)', - }, - { - p: 'com.technototes.path.command', - c: 'TrajectoryCommand', - l: 'TrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, Trajectory>, T)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)', - }, - { - p: 'com.technototes.path.command', - c: 'TrajectoryCommand', - l: 'TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, Trajectory>)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)', - }, - { - p: 'com.technototes.path.command', - c: 'TrajectoryCommand', - l: 'TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, T)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)', - }, - { - p: 'com.technototes.path.command', - c: 'TrajectoryCommand', - l: 'TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)', - }, - { - p: 'com.technototes.path.command', - c: 'TrajectoryCommand', - l: 'TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Trajectory)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,com.acmerobotics.roadrunner.trajectory.Trajectory)', - }, - { - p: 'com.technototes.path.trajectorysequence.sequencesegment', - c: 'TrajectorySegment', - l: 'TrajectorySegment(Trajectory)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.trajectory.Trajectory)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequence', - l: 'TrajectorySequence(List)', - u: '%3Cinit%3E(java.util.List)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'trajectorySequenceBuilder()', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'trajectorySequenceBuilder(Pose2d)', - u: 'trajectorySequenceBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'TankDrivebaseSubsystem', - l: 'trajectorySequenceBuilder(Pose2d)', - u: 'trajectorySequenceBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'TrajectorySequenceBuilder(Pose2d, Double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,java.lang.Double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint,double,double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'TrajectorySequenceBuilder(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint,double,double)', - }, - { - p: 'com.technototes.path.command', - c: 'TrajectorySequenceCommand', - l: 'TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, TrajectorySequence>, T)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)', - }, - { - p: 'com.technototes.path.command', - c: 'TrajectorySequenceCommand', - l: 'TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, TrajectorySequence>)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)', - }, - { - p: 'com.technototes.path.command', - c: 'TrajectorySequenceCommand', - l: 'TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, T)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)', - }, - { - p: 'com.technototes.path.command', - c: 'TrajectorySequenceCommand', - l: 'TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)', - }, - { - p: 'com.technototes.path.command', - c: 'TrajectorySequenceCommand', - l: 'TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, TrajectorySequence)', - u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,com.technototes.path.trajectorysequence.TrajectorySequence)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceRunner', - l: 'TrajectorySequenceRunner(TrajectoryFollower, PIDCoefficients)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.followers.TrajectoryFollower,com.acmerobotics.roadrunner.control.PIDCoefficients)', - }, - { p: 'com.technototes.path.command', c: 'RegenerativeTrajectoryCommand', l: 'trajFunc' }, - { p: 'com.technototes.path.command', c: 'RegenerativeTrajectorySequenceCommand', l: 'trajFunc' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'TRANSLATIONAL_PID', - }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem.Mode', l: 'TURN' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'turn(double)' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'turn(double)' }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'turn(double)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'turn(double, double, double)', - u: 'turn(double,double,double)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'turnAsync(double)', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'turnAsync(double)' }, - { - p: 'com.technototes.path.trajectorysequence.sequencesegment', - c: 'TurnSegment', - l: 'TurnSegment(Pose2d, double, MotionProfile, List)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.profile.MotionProfile,java.util.List)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'UNSTABLE_addDisplacementMarkerOffset(double, MarkerCallback)', - u: 'UNSTABLE_addDisplacementMarkerOffset(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'UNSTABLE_addTemporalMarkerOffset(double, MarkerCallback)', - u: 'UNSTABLE_addTemporalMarkerOffset(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', - }, - { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'update()' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'update()' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'update()' }, - { - p: 'com.technototes.path.subsystem', - c: 'DistanceSensorLocalizer', - l: 'update(Pose2d)', - u: 'update(com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceRunner', - l: 'update(Pose2d, Pose2d)', - u: 'update(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.geometry.Pose2d)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem.Mode', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.path.util', - c: 'AxesSigns', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem.Mode', - l: 'values()', - }, - { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'values()' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'VX_WEIGHT' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'VX_WEIGHT' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'VY_WEIGHT' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'waitForIdle()', - }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'waitForIdle()' }, - { - p: 'com.technototes.path.trajectorysequence', - c: 'TrajectorySequenceBuilder', - l: 'waitSeconds(double)', - }, - { - p: 'com.technototes.path.trajectorysequence.sequencesegment', - c: 'WaitSegment', - l: 'WaitSegment(Pose2d, double, List)', - u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,double,java.util.List)', - }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'WHEEL_BASE' }, - { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'WHEEL_RADIUS' }, - { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'WHEEL_RADIUS' }, - { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'wheelRadius' }, - { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'x' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'x' }, - { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'y' }, - { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'y' }, - { - p: 'com.technototes.path.subsystem', - c: 'PathingMecanumDrivebaseSubsystem', - l: 'zeroExternalHeading()', - }, -]; -updateSearchResults(); +memberSearchIndex = [{"p":"com.technototes.path.util","c":"RegressionUtil.AccelResult","l":"AccelResult(double, double)","u":"%3Cinit%3E(double,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addDisplacementMarker(DisplacementProducer, MarkerCallback)","u":"addDisplacementMarker(com.acmerobotics.roadrunner.trajectory.DisplacementProducer,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addDisplacementMarker(double, double, MarkerCallback)","u":"addDisplacementMarker(double,double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addDisplacementMarker(double, MarkerCallback)","u":"addDisplacementMarker(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addDisplacementMarker(MarkerCallback)","u":"addDisplacementMarker(com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addSpatialMarker(Vector2d, MarkerCallback)","u":"addSpatialMarker(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addTemporalMarker(double, double, MarkerCallback)","u":"addTemporalMarker(double,double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addTemporalMarker(double, MarkerCallback)","u":"addTemporalMarker(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addTemporalMarker(MarkerCallback)","u":"addTemporalMarker(com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addTemporalMarker(TimeProducer, MarkerCallback)","u":"addTemporalMarker(com.acmerobotics.roadrunner.trajectory.TimeProducer,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addTrajectory(Trajectory)","u":"addTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"AXIAL_PID"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"back(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"back(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"back(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"batteryVoltageSensor"},{"p":"com.technototes.path.util","c":"BNO055IMUUtil","l":"BNO055IMUUtil()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"build()"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"bVal"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_ACTIVE_TRAJECTORY"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_ACTIVE_TURN"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_ACTIVE_WAIT"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_INACTIVE_TRAJECTORY"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_INACTIVE_TURN"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_INACTIVE_WAIT"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"compareTo(LynxModuleUtil.LynxFirmwareVersion)","u":"compareTo(com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose(double, double)","u":"%3Cinit%3E(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose(double, double, double)","u":"%3Cinit%3E(double,double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose(Pose2d)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose(Vector2d)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose(Vector2d, double)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD(double, double)","u":"%3Cinit%3E(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD(double, double, double)","u":"%3Cinit%3E(double,double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD(Pose2d)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD(Vector2d)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD(Vector2d, double)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"ConfigurableVector()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"ConfigurableVector(double, double)","u":"%3Cinit%3E(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"ConfigurableVector(Vector2d)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"CROSS_TRACK_PID"},{"p":"com.technototes.path.util","c":"DashboardUtil","l":"DashboardUtil()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"DistanceSensorLocalizer(IGyro, Map)","u":"%3Cinit%3E(com.technototes.library.hardware.sensor.IGyro,java.util.Map)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"DO_DASH"},{"p":"com.technototes.path.util","c":"DashboardUtil","l":"drawPoseHistory(Canvas, List)","u":"drawPoseHistory(com.acmerobotics.dashboard.canvas.Canvas,java.util.List)"},{"p":"com.technototes.path.util","c":"DashboardUtil","l":"drawRobot(Canvas, Pose2d)","u":"drawRobot(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.util","c":"DashboardUtil","l":"drawSampledPath(Canvas, Path)","u":"drawSampledPath(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.path.Path)"},{"p":"com.technototes.path.util","c":"DashboardUtil","l":"drawSampledPath(Canvas, Path, double)","u":"drawSampledPath(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.path.Path,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"duration()"},{"p":"com.technototes.path.trajectorysequence","c":"EmptySequenceException","l":"EmptySequenceException()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"encoderOverflow"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"encoderTicksToInches(double)"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"encoderTicksToInches(double, double, double, double)","u":"encoderTicksToInches(double,double,double,double)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"encoderTicksToInches(double, double, double, double)","u":"encoderTicksToInches(double,double,double,double)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"encoderTicksToInches(double, double, double, double)","u":"encoderTicksToInches(double,double,double,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"end()"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"end(boolean)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"end(boolean)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"end(boolean)"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"eng"},{"p":"com.technototes.path.util","c":"LynxModuleUtil","l":"ensureMinimumFirmwareVersion(HardwareMap)","u":"ensureMinimumFirmwareVersion(com.qualcomm.robotcore.hardware.HardwareMap)"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"equals(Object)","u":"equals(java.lang.Object)"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"execute()"},{"p":"com.technototes.path.command","c":"ResetGyroCommand","l":"execute()"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"execute()"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"execute()"},{"p":"com.technototes.path.util","c":"RegressionUtil","l":"fitAccelData(List, List, List, RegressionUtil.RampResult, File)","u":"fitAccelData(java.util.List,java.util.List,java.util.List,com.technototes.path.util.RegressionUtil.RampResult,java.io.File)"},{"p":"com.technototes.path.util","c":"RegressionUtil","l":"fitRampData(List, List, List, boolean, File)","u":"fitRampData(java.util.List,java.util.List,java.util.List,boolean,java.io.File)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem.Mode","l":"FOLLOW_TRAJECTORY"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"followTrajectory(Trajectory)","u":"followTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"followTrajectory(Trajectory)","u":"followTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"followTrajectoryAsync(Trajectory)","u":"followTrajectoryAsync(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"followTrajectoryAsync(Trajectory)","u":"followTrajectoryAsync(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"followTrajectorySequence(TrajectorySequence)","u":"followTrajectorySequence(com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"followTrajectorySequence(TrajectorySequence)","u":"followTrajectorySequence(com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"followTrajectorySequenceAsync(TrajectorySequence)","u":"followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"followTrajectorySequenceAsync(TrajectorySequence)","u":"followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"followTrajectorySequenceAsync(TrajectorySequence)","u":"followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"forward(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"forward(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"forward(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"forwardOffset"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"frontEncoder"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"GEAR_RATIO"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"GEAR_RATIO"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"gearRatio"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"get(int)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getAccelerationConstraint(double)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getAccelerationConstraint(double)"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"getBoolean(Class)","u":"getBoolean(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getBoolean(Class)","u":"getBoolean(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getBoolean(Class)","u":"getBoolean(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"getConstant()"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getConstant()"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getConstant()"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"getDouble(Class)","u":"getDouble(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getDouble(Class)","u":"getDouble(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getDouble(Class)","u":"getDouble(java.lang.Class)"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"SequenceSegment","l":"getDuration()"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"SequenceSegment","l":"getEndPose()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getExternalHeadingVelocity()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getExternalHeadingVelocity()"},{"p":"com.technototes.path.util","c":"LynxModuleUtil","l":"getFirmwareVersion(LynxModule)","u":"getFirmwareVersion(com.qualcomm.hardware.lynx.LynxModule)"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"getGearRatio()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"getHeading()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"getHeading()"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"getHeading()"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getInt(Class)","u":"getInt(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getInt(Class)","u":"getInt(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getLastError()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getLastError()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"getLastPoseError()"},{"p":"com.technototes.path.util","c":"LoggingUtil","l":"getLogFile(String)","u":"getLogFile(java.lang.String)"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"SequenceSegment","l":"getMarkers()"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"TurnSegment","l":"getMotionProfile()"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"getMotorVelocityF(double)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getMotorVelocityF(double)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getMotorVelocityF(double)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getPID(Class)","u":"getPID(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getPID(Class)","u":"getPID(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getPIDF(Class)","u":"getPIDF(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getPIDF(Class)","u":"getPIDF(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"getPoseEstimate()"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"getPoseVelocity()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"getRadians()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getRawExternalHeading()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getRawExternalHeading()"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"SequenceSegment","l":"getStartPose()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"getTicksPerRev()"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"TurnSegment","l":"getTotalRotation()"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"TrajectorySegment","l":"getTrajectory()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getVelocityConstraint(double, double, double)","u":"getVelocityConstraint(double,double,double)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getVelocityConstraint(double, double, double)","u":"getVelocityConstraint(double,double,double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getWheelPositions()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getWheelPositions()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"getWheelPositions()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"getWheelRadius()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getWheelVelocities()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getWheelVelocities()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"getWheelVelocities()"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"getX()"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"getY()"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"gyroOffset"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"heading"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"heading"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"HEADING_PID"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"HEADING_PID"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem.Mode","l":"IDLE"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"imu"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"initialize()"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"initialize()"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"initialize()"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"initialize()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"isBusy()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"isBusy()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"isBusy()"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"isFinished()"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"isFinished()"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"isFinished()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"kA"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"kA"},{"p":"com.technototes.path.util","c":"RegressionUtil.AccelResult","l":"kA"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"kStatic"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"kStatic"},{"p":"com.technototes.path.util","c":"RegressionUtil.RampResult","l":"kStatic"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"kV"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"kV"},{"p":"com.technototes.path.util","c":"RegressionUtil.RampResult","l":"kV"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"LATERAL_MULTIPLIER"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"LATERAL_MULTIPLIER"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"lateralDistance"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"leftEncoder"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"leftFront"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"leftRear"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineTo(Vector2d)","u":"lineTo(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"lineTo(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToConstantHeading(Vector2d)","u":"lineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToConstantHeading(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"lineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToLinearHeading(Pose2d)","u":"lineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToLinearHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"lineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToSplineHeading(Pose2d)","u":"lineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToSplineHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"lineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.util","c":"LoggingUtil","l":"LoggingUtil()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"LynxFirmwareVersion(int, int, int)","u":"%3Cinit%3E(int,int,int)"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersionException","l":"LynxFirmwareVersionException(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.path.util","c":"LynxModuleUtil","l":"LynxModuleUtil()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"major"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mapPose(Function)","u":"mapPose(java.util.function.Function)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mapPose(Function)","u":"mapPose(java.util.function.Function)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mapVec(Function)","u":"mapVec(java.util.function.Function)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mapX(Function)","u":"mapX(java.util.function.Function)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mapY(Function)","u":"mapY(java.util.function.Function)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MAX_ACCEL"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MAX_ACCEL"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MAX_ANG_ACCEL"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MAX_ANG_ACCEL"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MAX_ANG_VEL"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MAX_ANG_VEL"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MAX_RPM"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MAX_RPM"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MAX_VEL"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MAX_VEL"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"MecanumDriveCommand(PathingMecanumDrivebaseSubsystem, DoubleSupplier, DoubleSupplier, DoubleSupplier)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.DoubleSupplier,java.util.function.DoubleSupplier,java.util.function.DoubleSupplier)"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"minor"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mirrorOverX(Pose2d)","u":"mirrorOverX(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mirrorOverX(Pose2d)","u":"mirrorOverX(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mirrorOverY(Pose2d)","u":"mirrorOverY(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mirrorOverY(Pose2d)","u":"mirrorOverY(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MOTOR_VELO_PID"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MOTOR_VELO_PID"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"motors"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mutateHeading(UnaryOperator)","u":"mutateHeading(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mutateHeading(UnaryOperator)","u":"mutateHeading(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mutatePose(UnaryOperator)","u":"mutatePose(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mutatePose(UnaryOperator)","u":"mutatePose(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mutateVec(UnaryOperator)","u":"mutateVec(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mutateVec(UnaryOperator)","u":"mutateVec(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mutateVec(UnaryOperator)","u":"mutateVec(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mutateX(UnaryOperator)","u":"mutateX(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mutateX(UnaryOperator)","u":"mutateX(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mutateX(UnaryOperator)","u":"mutateX(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mutateY(UnaryOperator)","u":"mutateY(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mutateY(UnaryOperator)","u":"mutateY(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mutateY(UnaryOperator)","u":"mutateY(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"NNN"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"NNP"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"NPN"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"NPP"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"OMEGA_WEIGHT"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"OMEGA_WEIGHT"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"PathingMecanumDrivebaseSubsystem(EncodedMotor, EncodedMotor, EncodedMotor, EncodedMotor, IMU, MecanumConstants)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.MecanumConstants)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"PathingMecanumDrivebaseSubsystem(EncodedMotor, EncodedMotor, EncodedMotor, EncodedMotor, IMU, MecanumConstants, Localizer)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.MecanumConstants,com.acmerobotics.roadrunner.localization.Localizer)"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"PNN"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"PNP"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"POSE_HISTORY_LIMIT"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"POSE_HISTORY_LIMIT"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"POSE_HISTORY_LIMIT"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"PPN"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"PPP"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"r"},{"p":"com.technototes.path.util","c":"RegressionUtil.RampResult","l":"RampResult(double, double, double)","u":"%3Cinit%3E(double,double,double)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, Trajectory>, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, Trajectory>)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, TrajectorySequence>, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, TrajectorySequence>)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)"},{"p":"com.technototes.path.util","c":"RegressionUtil","l":"RegressionUtil()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.util","c":"BNO055IMUUtil","l":"remapAxes(BNO055IMU, AxesOrder, AxesSigns)","u":"remapAxes(com.qualcomm.hardware.bosch.BNO055IMU,org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.path.util.AxesSigns)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"resetAccelConstraint()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"resetConstraints()"},{"p":"com.technototes.path.command","c":"ResetGyroCommand","l":"ResetGyroCommand(PathingMecanumDrivebaseSubsystem)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"resetTurnConstraint()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"resetVelConstraint()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"rightEncoder"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"rightFront"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"rightRear"},{"p":"com.technototes.path.util","c":"LoggingUtil","l":"ROAD_RUNNER_FOLDER"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"rpmToVelocity(double, double, double)","u":"rpmToVelocity(double,double,double)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"rpmToVelocity(double, double, double)","u":"rpmToVelocity(double,double,double)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"rpmToVelocity(double, double, double)","u":"rpmToVelocity(double,double,double)"},{"p":"com.technototes.path.util","c":"RegressionUtil.AccelResult","l":"rSquare"},{"p":"com.technototes.path.util","c":"RegressionUtil.RampResult","l":"rSquare"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"RUN_USING_ENCODER"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"RUN_USING_ENCODER"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"SequenceSegment","l":"SequenceSegment(double, Pose2d, Pose2d, List)","u":"%3Cinit%3E(double,com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.geometry.Pose2d,java.util.List)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"set(double, double)","u":"set(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"set(double, double)","u":"set(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"set(double, double)","u":"set(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"set(double, double, double)","u":"set(double,double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"set(double, double, double)","u":"set(double,double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"set(Pose2d)","u":"set(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"set(Pose2d)","u":"set(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"set(Vector2d)","u":"set(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"set(Vector2d)","u":"set(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"set(Vector2d)","u":"set(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"set(Vector2d, double)","u":"set(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"set(Vector2d, double)","u":"set(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setAccelConstraint(TrajectoryAccelerationConstraint)","u":"setAccelConstraint(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setConstraints(TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"setConstraints(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"setGyroOffset(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"setHeading(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"setHeading(double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"setMode(DcMotor.RunMode)","u":"setMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"setMode(DcMotor.RunMode)","u":"setMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"setMotorPowers(double, double)","u":"setMotorPowers(double,double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"setMotorPowers(double, double, double, double)","u":"setMotorPowers(double,double,double,double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients)","u":"setPIDFCoefficients(com.qualcomm.robotcore.hardware.DcMotor.RunMode,com.qualcomm.robotcore.hardware.PIDFCoefficients)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients)","u":"setPIDFCoefficients(com.qualcomm.robotcore.hardware.DcMotor.RunMode,com.qualcomm.robotcore.hardware.PIDFCoefficients)"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"setPoseEstimate(Pose2d)","u":"setPoseEstimate(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setReversed(boolean)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setTangent(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setTurnConstraint(double, double)","u":"setTurnConstraint(double,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setVelConstraint(TrajectoryVelocityConstraint)","u":"setVelConstraint(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"setWeightedDrivePower(Pose2d)","u":"setWeightedDrivePower(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"setWeightedDrivePower(Pose2d)","u":"setWeightedDrivePower(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"setX(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"setX(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"setX(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"setY(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"setY(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"setY(double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"setZeroPowerBehavior(DcMotor.ZeroPowerBehavior)","u":"setZeroPowerBehavior(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"setZeroPowerBehavior(DcMotor.ZeroPowerBehavior)","u":"setZeroPowerBehavior(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"size()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"speed"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineTo(Vector2d, double)","u":"splineTo(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineTo(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"splineTo(com.acmerobotics.roadrunner.geometry.Vector2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToConstantHeading(Vector2d, double)","u":"splineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToConstantHeading(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"splineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToLinearHeading(Pose2d, double)","u":"splineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToLinearHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"splineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToSplineHeading(Pose2d, double)","u":"splineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToSplineHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"splineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"start()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"stop()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeLeft(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeLeft(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"strafeLeft(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeRight(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeRight(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"strafeRight(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeTo(Vector2d)","u":"strafeTo(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"strafeTo(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"subsystem"},{"p":"com.technototes.path.command","c":"ResetGyroCommand","l":"subsystem"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"subsystem"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"subsystem"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"TankDrivebaseSubsystem(EncodedMotorGroup, EncodedMotorGroup, IMU, TankConstants, Localizer)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotorGroup,com.technototes.library.hardware.motor.EncodedMotorGroup,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.TankConstants,com.acmerobotics.roadrunner.localization.Localizer)"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"ThreeDeadWheelLocalizer(MotorEncoder, MotorEncoder, MotorEncoder, DeadWheelConstants)","u":"%3Cinit%3E(com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.path.subsystem.DeadWheelConstants)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"TICKS_PER_REV"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"TICKS_PER_REV"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"ticksPerRev"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"toPose()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"toPose()"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"toString()"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"toVec()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"TRACK_WIDTH"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"TRACK_WIDTH"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"trajectory"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"trajectory"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d, boolean)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,boolean)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d, boolean)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,boolean)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d, double)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,double)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d, double)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,double)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"TrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, Trajectory>, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, Trajectory>)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Trajectory)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"TrajectorySegment","l":"TrajectorySegment(Trajectory)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"TrajectorySequence(List)","u":"%3Cinit%3E(java.util.List)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"trajectorySequenceBuilder()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"trajectorySequenceBuilder(Pose2d)","u":"trajectorySequenceBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"trajectorySequenceBuilder(Pose2d)","u":"trajectorySequenceBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"TrajectorySequenceBuilder(Pose2d, Double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,java.lang.Double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint,double,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"TrajectorySequenceBuilder(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint,double,double)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, TrajectorySequence>, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, TrajectorySequence>)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, TrajectorySequence)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"TrajectorySequenceRunner(TrajectoryFollower, PIDCoefficients)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.followers.TrajectoryFollower,com.acmerobotics.roadrunner.control.PIDCoefficients)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"trajFunc"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"trajFunc"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"TRANSLATIONAL_PID"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem.Mode","l":"TURN"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"turn(double)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"turn(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"turn(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"turn(double, double, double)","u":"turn(double,double,double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"turnAsync(double)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"turnAsync(double)"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"TurnSegment","l":"TurnSegment(Pose2d, double, MotionProfile, List)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.profile.MotionProfile,java.util.List)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"UNSTABLE_addDisplacementMarkerOffset(double, MarkerCallback)","u":"UNSTABLE_addDisplacementMarkerOffset(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"UNSTABLE_addTemporalMarkerOffset(double, MarkerCallback)","u":"UNSTABLE_addTemporalMarkerOffset(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"update()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"update()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"update()"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"update(Pose2d)","u":"update(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"update(Pose2d, Pose2d)","u":"update(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem.Mode","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem.Mode","l":"values()"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"values()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"VX_WEIGHT"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"VX_WEIGHT"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"VY_WEIGHT"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"waitForIdle()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"waitForIdle()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"waitSeconds(double)"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"WaitSegment","l":"WaitSegment(Pose2d, double, List)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,double,java.util.List)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"WHEEL_BASE"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"WHEEL_RADIUS"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"WHEEL_RADIUS"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"wheelRadius"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"x"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"x"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"y"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"y"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"zeroExternalHeading()"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/Path/module-search-index.js b/docs/Path/module-search-index.js index a6f96499..0d59754f 100644 --- a/docs/Path/module-search-index.js +++ b/docs/Path/module-search-index.js @@ -1,2 +1 @@ -moduleSearchIndex = []; -updateSearchResults(); +moduleSearchIndex = [];updateSearchResults(); \ No newline at end of file diff --git a/docs/Path/overview-summary.html b/docs/Path/overview-summary.html index 54ad7d37..e4c41490 100644 --- a/docs/Path/overview-summary.html +++ b/docs/Path/overview-summary.html @@ -1,27 +1,25 @@ - + - - - Path API - - - - - - - - - - -
    - -

    index.html

    -
    - + + +Path API + + + + + + + + + + +
    + +

    index.html

    +
    + diff --git a/docs/Path/overview-tree.html b/docs/Path/overview-tree.html index 8a2963f3..11f1f087 100644 --- a/docs/Path/overview-tree.html +++ b/docs/Path/overview-tree.html @@ -1,1204 +1,221 @@ - + - - - Class Hierarchy (Path API) - - - - - - - - - - - - - - -
    - -
    -
    - -
    -

    Class Hierarchy

    - -
    -
    -

    Interface Hierarchy

    - -
    -
    -

    Annotation Interface Hierarchy

    - -
    -
    -

    Enum Class Hierarchy

    - -
    -
    -
    -
    - + + +Class Hierarchy (Path API) + + + + + + + + + + + + + + +
    + +
    +
    + +
    +

    Class Hierarchy

    + +
    +
    +

    Interface Hierarchy

    + +
    +
    +

    Annotation Interface Hierarchy

    + +
    +
    +

    Enum Class Hierarchy

    + +
    +
    +
    +
    + diff --git a/docs/Path/package-search-index.js b/docs/Path/package-search-index.js index 585beab9..8876cd3f 100644 --- a/docs/Path/package-search-index.js +++ b/docs/Path/package-search-index.js @@ -1,10 +1 @@ -packageSearchIndex = [ - { l: 'All Packages', u: 'allpackages-index.html' }, - { l: 'com.technototes.path.command' }, - { l: 'com.technototes.path.geometry' }, - { l: 'com.technototes.path.subsystem' }, - { l: 'com.technototes.path.trajectorysequence' }, - { l: 'com.technototes.path.trajectorysequence.sequencesegment' }, - { l: 'com.technototes.path.util' }, -]; -updateSearchResults(); +packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"l":"com.technototes.path.command"},{"l":"com.technototes.path.geometry"},{"l":"com.technototes.path.subsystem"},{"l":"com.technototes.path.trajectorysequence"},{"l":"com.technototes.path.trajectorysequence.sequencesegment"},{"l":"com.technototes.path.util"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/Path/script.js b/docs/Path/script.js index a6efd285..864989cf 100644 --- a/docs/Path/script.js +++ b/docs/Path/script.js @@ -29,106 +29,104 @@ var typeSearchIndex; var memberSearchIndex; var tagSearchIndex; function loadScripts(doc, tag) { - createElem(doc, tag, 'search.js'); + createElem(doc, tag, 'search.js'); - createElem(doc, tag, 'module-search-index.js'); - createElem(doc, tag, 'package-search-index.js'); - createElem(doc, tag, 'type-search-index.js'); - createElem(doc, tag, 'member-search-index.js'); - createElem(doc, tag, 'tag-search-index.js'); + createElem(doc, tag, 'module-search-index.js'); + createElem(doc, tag, 'package-search-index.js'); + createElem(doc, tag, 'type-search-index.js'); + createElem(doc, tag, 'member-search-index.js'); + createElem(doc, tag, 'tag-search-index.js'); } function createElem(doc, tag, path) { - var script = doc.createElement(tag); - var scriptElement = doc.getElementsByTagName(tag)[0]; - script.src = pathtoroot + path; - scriptElement.parentNode.insertBefore(script, scriptElement); + var script = doc.createElement(tag); + var scriptElement = doc.getElementsByTagName(tag)[0]; + script.src = pathtoroot + path; + scriptElement.parentNode.insertBefore(script, scriptElement); } function show(tableId, selected, columns) { - if (tableId !== selected) { - document - .querySelectorAll('div.' + tableId + ':not(.' + selected + ')') - .forEach(function (elem) { - elem.style.display = 'none'; - }); - } - document.querySelectorAll('div.' + selected).forEach(function (elem, index) { - elem.style.display = ''; - var isEvenRow = index % (columns * 2) < columns; - elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); - elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); - }); - updateTabs(tableId, selected); + if (tableId !== selected) { + document.querySelectorAll('div.' + tableId + ':not(.' + selected + ')') + .forEach(function(elem) { + elem.style.display = 'none'; + }); + } + document.querySelectorAll('div.' + selected) + .forEach(function(elem, index) { + elem.style.display = ''; + var isEvenRow = index % (columns * 2) < columns; + elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); + elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); + }); + updateTabs(tableId, selected); } function updateTabs(tableId, selected) { - document - .querySelector('div#' + tableId + ' .summary-table') - .setAttribute('aria-labelledby', selected); - document.querySelectorAll('button[id^="' + tableId + '"]').forEach(function (tab, index) { - if (selected === tab.id || (tableId === selected && index === 0)) { - tab.className = activeTableTab; - tab.setAttribute('aria-selected', true); - tab.setAttribute('tabindex', 0); - } else { - tab.className = tableTab; - tab.setAttribute('aria-selected', false); - tab.setAttribute('tabindex', -1); - } - }); + document.querySelector('div#' + tableId +' .summary-table') + .setAttribute('aria-labelledby', selected); + document.querySelectorAll('button[id^="' + tableId + '"]') + .forEach(function(tab, index) { + if (selected === tab.id || (tableId === selected && index === 0)) { + tab.className = activeTableTab; + tab.setAttribute('aria-selected', true); + tab.setAttribute('tabindex',0); + } else { + tab.className = tableTab; + tab.setAttribute('aria-selected', false); + tab.setAttribute('tabindex',-1); + } + }); } function switchTab(e) { - var selected = document.querySelector('[aria-selected=true]'); - if (selected) { - if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { - // left or up arrow key pressed: move focus to previous tab - selected.previousSibling.click(); - selected.previousSibling.focus(); - e.preventDefault(); - } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { - // right or down arrow key pressed: move focus to next tab - selected.nextSibling.click(); - selected.nextSibling.focus(); - e.preventDefault(); + var selected = document.querySelector('[aria-selected=true]'); + if (selected) { + if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { + // left or up arrow key pressed: move focus to previous tab + selected.previousSibling.click(); + selected.previousSibling.focus(); + e.preventDefault(); + } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { + // right or down arrow key pressed: move focus to next tab + selected.nextSibling.click(); + selected.nextSibling.focus(); + e.preventDefault(); + } } - } } -var updateSearchResults = function () {}; +var updateSearchResults = function() {}; function indexFilesLoaded() { - return ( - moduleSearchIndex && - packageSearchIndex && - typeSearchIndex && - memberSearchIndex && - tagSearchIndex - ); + return moduleSearchIndex + && packageSearchIndex + && typeSearchIndex + && memberSearchIndex + && tagSearchIndex; } // Workaround for scroll position not being included in browser history (8249133) -document.addEventListener('DOMContentLoaded', function (e) { - var contentDiv = document.querySelector('div.flex-content'); - window.addEventListener('popstate', function (e) { - if (e.state !== null) { - contentDiv.scrollTop = e.state; - } - }); - window.addEventListener('hashchange', function (e) { - history.replaceState(contentDiv.scrollTop, document.title); - }); - contentDiv.addEventListener('scroll', function (e) { - var timeoutID; - if (!timeoutID) { - timeoutID = setTimeout(function () { +document.addEventListener("DOMContentLoaded", function(e) { + var contentDiv = document.querySelector("div.flex-content"); + window.addEventListener("popstate", function(e) { + if (e.state !== null) { + contentDiv.scrollTop = e.state; + } + }); + window.addEventListener("hashchange", function(e) { + history.replaceState(contentDiv.scrollTop, document.title); + }); + contentDiv.addEventListener("scroll", function(e) { + var timeoutID; + if (!timeoutID) { + timeoutID = setTimeout(function() { + history.replaceState(contentDiv.scrollTop, document.title); + timeoutID = null; + }, 100); + } + }); + if (!location.hash) { history.replaceState(contentDiv.scrollTop, document.title); - timeoutID = null; - }, 100); } - }); - if (!location.hash) { - history.replaceState(contentDiv.scrollTop, document.title); - } }); diff --git a/docs/Path/search.js b/docs/Path/search.js index 3ba91721..db3b2f4a 100644 --- a/docs/Path/search.js +++ b/docs/Path/search.js @@ -23,354 +23,332 @@ * questions. */ -var noResult = { l: 'No results found' }; -var loading = { l: 'Loading search index...' }; -var catModules = 'Modules'; -var catPackages = 'Packages'; -var catTypes = 'Classes and Interfaces'; -var catMembers = 'Members'; -var catSearchTags = 'Search Tags'; -var highlight = '$&'; -var searchPattern = ''; -var fallbackPattern = ''; +var noResult = {l: "No results found"}; +var loading = {l: "Loading search index..."}; +var catModules = "Modules"; +var catPackages = "Packages"; +var catTypes = "Classes and Interfaces"; +var catMembers = "Members"; +var catSearchTags = "Search Tags"; +var highlight = "$&"; +var searchPattern = ""; +var fallbackPattern = ""; var RANKING_THRESHOLD = 2; var NO_MATCH = 0xffff; var MIN_RESULTS = 3; var MAX_RESULTS = 500; -var UNNAMED = ''; +var UNNAMED = ""; function escapeHtml(str) { - return str.replace(//g, '>'); + return str.replace(//g, ">"); } function getHighlightedText(item, matcher, fallbackMatcher) { - var escapedItem = escapeHtml(item); - var highlighted = escapedItem.replace(matcher, highlight); - if (highlighted === escapedItem) { - highlighted = escapedItem.replace(fallbackMatcher, highlight); - } - return highlighted; + var escapedItem = escapeHtml(item); + var highlighted = escapedItem.replace(matcher, highlight); + if (highlighted === escapedItem) { + highlighted = escapedItem.replace(fallbackMatcher, highlight) + } + return highlighted; } function getURLPrefix(ui) { - var urlPrefix = ''; - var slash = '/'; - if (ui.item.category === catModules) { - return ui.item.l + slash; - } else if (ui.item.category === catPackages && ui.item.m) { - return ui.item.m + slash; - } else if (ui.item.category === catTypes || ui.item.category === catMembers) { - if (ui.item.m) { - urlPrefix = ui.item.m + slash; - } else { - $.each(packageSearchIndex, function (index, item) { - if (item.m && ui.item.p === item.l) { - urlPrefix = item.m + slash; + var urlPrefix=""; + var slash = "/"; + if (ui.item.category === catModules) { + return ui.item.l + slash; + } else if (ui.item.category === catPackages && ui.item.m) { + return ui.item.m + slash; + } else if (ui.item.category === catTypes || ui.item.category === catMembers) { + if (ui.item.m) { + urlPrefix = ui.item.m + slash; + } else { + $.each(packageSearchIndex, function(index, item) { + if (item.m && ui.item.p === item.l) { + urlPrefix = item.m + slash; + } + }); } - }); } - } - return urlPrefix; + return urlPrefix; } function createSearchPattern(term) { - var pattern = ''; - var isWordToken = false; - term - .replace(/,\s*/g, ', ') - .trim() - .split(/\s+/) - .forEach(function (w, index) { - if (index > 0) { - // whitespace between identifiers is significant - pattern += isWordToken && /^\w/.test(w) ? '\\s+' : '\\s*'; - } - var tokens = w.split(/(?=[A-Z,.()<>[\/])/); - for (var i = 0; i < tokens.length; i++) { - var s = tokens[i]; - if (s === '') { - continue; + var pattern = ""; + var isWordToken = false; + term.replace(/,\s*/g, ", ").trim().split(/\s+/).forEach(function(w, index) { + if (index > 0) { + // whitespace between identifiers is significant + pattern += (isWordToken && /^\w/.test(w)) ? "\\s+" : "\\s*"; } - pattern += $.ui.autocomplete.escapeRegex(s); - isWordToken = /\w$/.test(s); - if (isWordToken) { - pattern += '([a-z0-9_$<>\\[\\]]*?)'; + var tokens = w.split(/(?=[A-Z,.()<>[\/])/); + for (var i = 0; i < tokens.length; i++) { + var s = tokens[i]; + if (s === "") { + continue; + } + pattern += $.ui.autocomplete.escapeRegex(s); + isWordToken = /\w$/.test(s); + if (isWordToken) { + pattern += "([a-z0-9_$<>\\[\\]]*?)"; + } } - } }); - return pattern; + return pattern; } function createMatcher(pattern, flags) { - var isCamelCase = /[A-Z]/.test(pattern); - return new RegExp(pattern, flags + (isCamelCase ? '' : 'i')); + var isCamelCase = /[A-Z]/.test(pattern); + return new RegExp(pattern, flags + (isCamelCase ? "" : "i")); } var watermark = 'Search'; -$(function () { - var search = $('#search-input'); - var reset = $('#reset-button'); - search.val(''); - search.prop('disabled', false); - reset.prop('disabled', false); - search.val(watermark).addClass('watermark'); - search.blur(function () { - if ($(this).val().length === 0) { - $(this).val(watermark).addClass('watermark'); - } - }); - search.on('click keydown paste', function () { - if ($(this).val() === watermark) { - $(this).val('').removeClass('watermark'); - } - }); - reset.click(function () { - search.val('').focus(); - }); - search.focus()[0].setSelectionRange(0, 0); -}); -$.widget('custom.catcomplete', $.ui.autocomplete, { - _create: function () { - this._super(); - this.widget().menu('option', 'items', '> :not(.ui-autocomplete-category)'); - }, - _renderMenu: function (ul, items) { - var rMenu = this; - var currentCategory = ''; - rMenu.menu.bindings = $(); - $.each(items, function (index, item) { - var li; - if (item.category && item.category !== currentCategory) { - ul.append('
  • ' + item.category + '
  • '); - currentCategory = item.category; - } - li = rMenu._renderItemData(ul, item); - if (item.category) { - li.attr('aria-label', item.category + ' : ' + item.l); - li.attr('class', 'result-item'); - } else { - li.attr('aria-label', item.l); - li.attr('class', 'result-item'); - } +$(function() { + var search = $("#search-input"); + var reset = $("#reset-button"); + search.val(''); + search.prop("disabled", false); + reset.prop("disabled", false); + search.val(watermark).addClass('watermark'); + search.blur(function() { + if ($(this).val().length === 0) { + $(this).val(watermark).addClass('watermark'); + } }); - }, - _renderItem: function (ul, item) { - var label = ''; - var matcher = createMatcher(escapeHtml(searchPattern), 'g'); - var fallbackMatcher = new RegExp(fallbackPattern, 'gi'); - if (item.category === catModules) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catPackages) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catTypes) { - label = - item.p && item.p !== UNNAMED - ? getHighlightedText(item.p + '.' + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catMembers) { - label = - item.p && item.p !== UNNAMED - ? getHighlightedText(item.p + '.' + item.c + '.' + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.c + '.' + item.l, matcher, fallbackMatcher); - } else if (item.category === catSearchTags) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else { - label = item.l; - } - var li = $('
  • ').appendTo(ul); - var div = $('
    ').appendTo(li); - if (item.category === catSearchTags && item.h) { - if (item.d) { - div.html( - label + - ' (' + - item.h + - ')
    ' + - item.d + - '
    ', - ); - } else { - div.html(label + ' (' + item.h + ')'); - } - } else { - if (item.m) { - div.html(item.m + '/' + label); - } else { - div.html(label); - } + search.on('click keydown paste', function() { + if ($(this).val() === watermark) { + $(this).val('').removeClass('watermark'); + } + }); + reset.click(function() { + search.val('').focus(); + }); + search.focus()[0].setSelectionRange(0, 0); +}); +$.widget("custom.catcomplete", $.ui.autocomplete, { + _create: function() { + this._super(); + this.widget().menu("option", "items", "> :not(.ui-autocomplete-category)"); + }, + _renderMenu: function(ul, items) { + var rMenu = this; + var currentCategory = ""; + rMenu.menu.bindings = $(); + $.each(items, function(index, item) { + var li; + if (item.category && item.category !== currentCategory) { + ul.append("
  • " + item.category + "
  • "); + currentCategory = item.category; + } + li = rMenu._renderItemData(ul, item); + if (item.category) { + li.attr("aria-label", item.category + " : " + item.l); + li.attr("class", "result-item"); + } else { + li.attr("aria-label", item.l); + li.attr("class", "result-item"); + } + }); + }, + _renderItem: function(ul, item) { + var label = ""; + var matcher = createMatcher(escapeHtml(searchPattern), "g"); + var fallbackMatcher = new RegExp(fallbackPattern, "gi") + if (item.category === catModules) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catPackages) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catTypes) { + label = (item.p && item.p !== UNNAMED) + ? getHighlightedText(item.p + "." + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catMembers) { + label = (item.p && item.p !== UNNAMED) + ? getHighlightedText(item.p + "." + item.c + "." + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.c + "." + item.l, matcher, fallbackMatcher); + } else if (item.category === catSearchTags) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else { + label = item.l; + } + var li = $("
  • ").appendTo(ul); + var div = $("
    ").appendTo(li); + if (item.category === catSearchTags && item.h) { + if (item.d) { + div.html(label + " (" + item.h + ")
    " + + item.d + "
    "); + } else { + div.html(label + " (" + item.h + ")"); + } + } else { + if (item.m) { + div.html(item.m + "/" + label); + } else { + div.html(label); + } + } + return li; } - return li; - }, }); function rankMatch(match, category) { - if (!match) { - return NO_MATCH; - } - var index = match.index; - var input = match.input; - var leftBoundaryMatch = 2; - var periferalMatch = 0; - // make sure match is anchored on a left word boundary - if (index === 0 || /\W/.test(input[index - 1]) || '_' === input[index]) { - leftBoundaryMatch = 0; - } else if ( - '_' === input[index - 1] || - (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input)) - ) { - leftBoundaryMatch = 1; - } - var matchEnd = index + match[0].length; - var leftParen = input.indexOf('('); - var endOfName = leftParen > -1 ? leftParen : input.length; - // exclude peripheral matches - if (category !== catModules && category !== catSearchTags) { - var delim = category === catPackages ? '/' : '.'; - if (leftParen > -1 && leftParen < index) { - periferalMatch += 2; - } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { - periferalMatch += 2; + if (!match) { + return NO_MATCH; + } + var index = match.index; + var input = match.input; + var leftBoundaryMatch = 2; + var periferalMatch = 0; + // make sure match is anchored on a left word boundary + if (index === 0 || /\W/.test(input[index - 1]) || "_" === input[index]) { + leftBoundaryMatch = 0; + } else if ("_" === input[index - 1] || (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input))) { + leftBoundaryMatch = 1; } - } - var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match - for (var i = 1; i < match.length; i++) { - // lower ranking if parts of the name are missing - if (match[i]) delta += match[i].length; - } - if (category === catTypes) { - // lower ranking if a type name contains unmatched camel-case parts - if (/[A-Z]/.test(input.substring(matchEnd))) delta += 5; - if (/[A-Z]/.test(input.substring(0, index))) delta += 5; - } - return leftBoundaryMatch + periferalMatch + delta / 200; + var matchEnd = index + match[0].length; + var leftParen = input.indexOf("("); + var endOfName = leftParen > -1 ? leftParen : input.length; + // exclude peripheral matches + if (category !== catModules && category !== catSearchTags) { + var delim = category === catPackages ? "/" : "."; + if (leftParen > -1 && leftParen < index) { + periferalMatch += 2; + } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { + periferalMatch += 2; + } + } + var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match + for (var i = 1; i < match.length; i++) { + // lower ranking if parts of the name are missing + if (match[i]) + delta += match[i].length; + } + if (category === catTypes) { + // lower ranking if a type name contains unmatched camel-case parts + if (/[A-Z]/.test(input.substring(matchEnd))) + delta += 5; + if (/[A-Z]/.test(input.substring(0, index))) + delta += 5; + } + return leftBoundaryMatch + periferalMatch + (delta / 200); + } function doSearch(request, response) { - var result = []; - searchPattern = createSearchPattern(request.term); - fallbackPattern = createSearchPattern(request.term.toLowerCase()); - if (searchPattern === '') { - return this.close(); - } - var camelCaseMatcher = createMatcher(searchPattern, ''); - var fallbackMatcher = new RegExp(fallbackPattern, 'i'); + var result = []; + searchPattern = createSearchPattern(request.term); + fallbackPattern = createSearchPattern(request.term.toLowerCase()); + if (searchPattern === "") { + return this.close(); + } + var camelCaseMatcher = createMatcher(searchPattern, ""); + var fallbackMatcher = new RegExp(fallbackPattern, "i"); - function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { - if (indexArray) { - var newResults = []; - $.each(indexArray, function (i, item) { - item.category = category; - var ranking = rankMatch(matcher.exec(nameFunc(item)), category); - if (ranking < RANKING_THRESHOLD) { - newResults.push({ ranking: ranking, item: item }); + function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { + if (indexArray) { + var newResults = []; + $.each(indexArray, function (i, item) { + item.category = category; + var ranking = rankMatch(matcher.exec(nameFunc(item)), category); + if (ranking < RANKING_THRESHOLD) { + newResults.push({ranking: ranking, item: item}); + } + return newResults.length <= MAX_RESULTS; + }); + return newResults.sort(function(e1, e2) { + return e1.ranking - e2.ranking; + }).map(function(e) { + return e.item; + }); } - return newResults.length <= MAX_RESULTS; - }); - return newResults - .sort(function (e1, e2) { - return e1.ranking - e2.ranking; - }) - .map(function (e) { - return e.item; - }); + return []; } - return []; - } - function searchIndex(indexArray, category, nameFunc) { - var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); - result = result.concat(primaryResults); - if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { - var secondaryResults = searchIndexWithMatcher( - indexArray, - fallbackMatcher, - category, - nameFunc, - ); - result = result.concat( - secondaryResults.filter(function (item) { - return primaryResults.indexOf(item) === -1; - }), - ); + function searchIndex(indexArray, category, nameFunc) { + var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); + result = result.concat(primaryResults); + if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { + var secondaryResults = searchIndexWithMatcher(indexArray, fallbackMatcher, category, nameFunc); + result = result.concat(secondaryResults.filter(function (item) { + return primaryResults.indexOf(item) === -1; + })); + } } - } - searchIndex(moduleSearchIndex, catModules, function (item) { - return item.l; - }); - searchIndex(packageSearchIndex, catPackages, function (item) { - return item.m && request.term.indexOf('/') > -1 ? item.m + '/' + item.l : item.l; - }); - searchIndex(typeSearchIndex, catTypes, function (item) { - return request.term.indexOf('.') > -1 ? item.p + '.' + item.l : item.l; - }); - searchIndex(memberSearchIndex, catMembers, function (item) { - return request.term.indexOf('.') > -1 ? item.p + '.' + item.c + '.' + item.l : item.l; - }); - searchIndex(tagSearchIndex, catSearchTags, function (item) { - return item.l; - }); + searchIndex(moduleSearchIndex, catModules, function(item) { return item.l; }); + searchIndex(packageSearchIndex, catPackages, function(item) { + return (item.m && request.term.indexOf("/") > -1) + ? (item.m + "/" + item.l) : item.l; + }); + searchIndex(typeSearchIndex, catTypes, function(item) { + return request.term.indexOf(".") > -1 ? item.p + "." + item.l : item.l; + }); + searchIndex(memberSearchIndex, catMembers, function(item) { + return request.term.indexOf(".") > -1 + ? item.p + "." + item.c + "." + item.l : item.l; + }); + searchIndex(tagSearchIndex, catSearchTags, function(item) { return item.l; }); - if (!indexFilesLoaded()) { - updateSearchResults = function () { - doSearch(request, response); - }; - result.unshift(loading); - } else { - updateSearchResults = function () {}; - } - response(result); -} -$(function () { - $('#search-input').catcomplete({ - minLength: 1, - delay: 300, - source: doSearch, - response: function (event, ui) { - if (!ui.content.length) { - ui.content.push(noResult); - } else { - $('#search-input').empty(); - } - }, - autoFocus: true, - focus: function (event, ui) { - return false; - }, - position: { - collision: 'flip', - }, - select: function (event, ui) { - if (ui.item.category) { - var url = getURLPrefix(ui); - if (ui.item.category === catModules) { - url += 'module-summary.html'; - } else if (ui.item.category === catPackages) { - if (ui.item.u) { - url = ui.item.u; - } else { - url += ui.item.l.replace(/\./g, '/') + '/package-summary.html'; - } - } else if (ui.item.category === catTypes) { - if (ui.item.u) { - url = ui.item.u; - } else if (ui.item.p === UNNAMED) { - url += ui.item.l + '.html'; - } else { - url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.l + '.html'; - } - } else if (ui.item.category === catMembers) { - if (ui.item.p === UNNAMED) { - url += ui.item.c + '.html' + '#'; - } else { - url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.c + '.html' + '#'; - } - if (ui.item.u) { - url += ui.item.u; - } else { - url += ui.item.l; - } - } else if (ui.item.category === catSearchTags) { - url += ui.item.u; + if (!indexFilesLoaded()) { + updateSearchResults = function() { + doSearch(request, response); } - if (top !== window) { - parent.classFrame.location = pathtoroot + url; - } else { - window.location.href = pathtoroot + url; + result.unshift(loading); + } else { + updateSearchResults = function() {}; + } + response(result); +} +$(function() { + $("#search-input").catcomplete({ + minLength: 1, + delay: 300, + source: doSearch, + response: function(event, ui) { + if (!ui.content.length) { + ui.content.push(noResult); + } else { + $("#search-input").empty(); + } + }, + autoFocus: true, + focus: function(event, ui) { + return false; + }, + position: { + collision: "flip" + }, + select: function(event, ui) { + if (ui.item.category) { + var url = getURLPrefix(ui); + if (ui.item.category === catModules) { + url += "module-summary.html"; + } else if (ui.item.category === catPackages) { + if (ui.item.u) { + url = ui.item.u; + } else { + url += ui.item.l.replace(/\./g, '/') + "/package-summary.html"; + } + } else if (ui.item.category === catTypes) { + if (ui.item.u) { + url = ui.item.u; + } else if (ui.item.p === UNNAMED) { + url += ui.item.l + ".html"; + } else { + url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.l + ".html"; + } + } else if (ui.item.category === catMembers) { + if (ui.item.p === UNNAMED) { + url += ui.item.c + ".html" + "#"; + } else { + url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.c + ".html" + "#"; + } + if (ui.item.u) { + url += ui.item.u; + } else { + url += ui.item.l; + } + } else if (ui.item.category === catSearchTags) { + url += ui.item.u; + } + if (top !== window) { + parent.classFrame.location = pathtoroot + url; + } else { + window.location.href = pathtoroot + url; + } + $("#search-input").focus(); + } } - $('#search-input').focus(); - } - }, - }); + }); }); diff --git a/docs/Path/serialized-form.html b/docs/Path/serialized-form.html index 54d1be79..ecbc3349 100644 --- a/docs/Path/serialized-form.html +++ b/docs/Path/serialized-form.html @@ -1,147 +1,84 @@ - + - - - Serialized Form (Path API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Serialized Form

    -
    - -
    -
    -
    - + + +Serialized Form (Path API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Serialized Form

    +
    + +
    +
    +
    + diff --git a/docs/Path/src-html/com/technototes/path/command/MecanumDriveCommand.html b/docs/Path/src-html/com/technototes/path/command/MecanumDriveCommand.html index c28fede6..643546db 100644 --- a/docs/Path/src-html/com/technototes/path/command/MecanumDriveCommand.html +++ b/docs/Path/src-html/com/technototes/path/command/MecanumDriveCommand.html @@ -18,47 +18,46 @@ 005import com.acmerobotics.roadrunner.geometry.Vector2d; 006import com.technototes.library.command.Command; 007import com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem; -008 -009import java.util.function.DoubleSupplier; -010 -011public class MecanumDriveCommand implements Command { -012 -013 public PathingMecanumDrivebaseSubsystem subsystem; -014 public DoubleSupplier x, y, r; -015 -016 public MecanumDriveCommand( -017 PathingMecanumDrivebaseSubsystem sub, -018 DoubleSupplier xSup, -019 DoubleSupplier ySup, -020 DoubleSupplier rSup -021 ) { -022 addRequirements(sub); -023 subsystem = sub; -024 x = xSup; -025 y = ySup; -026 r = rSup; -027 } -028 -029 @Override -030 public void execute() { -031 Vector2d input = new Vector2d(-y.getAsDouble() * subsystem.speed, -x.getAsDouble() * subsystem.speed) -032 .rotated(-subsystem.getExternalHeading()); -033 -034 subsystem.setWeightedDrivePower( -035 new Pose2d(input.getX(), input.getY(), -Math.pow(r.getAsDouble() * subsystem.speed, 3)) -036 ); -037 } -038 -039 @Override -040 public boolean isFinished() { -041 return false; -042 } -043 -044 @Override -045 public void end(boolean cancel) { -046 if (cancel) subsystem.setDriveSignal(new DriveSignal()); -047 } -048} +008import java.util.function.DoubleSupplier; +009 +010public class MecanumDriveCommand implements Command { +011 +012 public PathingMecanumDrivebaseSubsystem subsystem; +013 public DoubleSupplier x, y, r; +014 +015 public MecanumDriveCommand( +016 PathingMecanumDrivebaseSubsystem sub, +017 DoubleSupplier xSup, +018 DoubleSupplier ySup, +019 DoubleSupplier rSup +020 ) { +021 addRequirements(sub); +022 subsystem = sub; +023 x = xSup; +024 y = ySup; +025 r = rSup; +026 } +027 +028 @Override +029 public void execute() { +030 Vector2d input = new Vector2d(-y.getAsDouble() * subsystem.speed, -x.getAsDouble() * subsystem.speed) +031 .rotated(-subsystem.getExternalHeading()); +032 +033 subsystem.setWeightedDrivePower( +034 new Pose2d(input.getX(), input.getY(), -Math.pow(r.getAsDouble() * subsystem.speed, 3)) +035 ); +036 } +037 +038 @Override +039 public boolean isFinished() { +040 return false; +041 } +042 +043 @Override +044 public void end(boolean cancel) { +045 if (cancel) subsystem.setDriveSignal(new DriveSignal()); +046 } +047} diff --git a/docs/Path/src-html/com/technototes/path/command/RegenerativeTrajectoryCommand.html b/docs/Path/src-html/com/technototes/path/command/RegenerativeTrajectoryCommand.html index dd3029a8..9c441bf1 100644 --- a/docs/Path/src-html/com/technototes/path/command/RegenerativeTrajectoryCommand.html +++ b/docs/Path/src-html/com/technototes/path/command/RegenerativeTrajectoryCommand.html @@ -17,47 +17,46 @@ 004import com.acmerobotics.roadrunner.trajectory.Trajectory; 005import com.acmerobotics.roadrunner.trajectory.TrajectoryBuilder; 006import com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem; -007 -008import java.util.function.BiFunction; -009import java.util.function.Function; -010import java.util.function.Supplier; -011 -012public class RegenerativeTrajectoryCommand extends TrajectoryCommand { -013 -014 public Supplier<Trajectory> trajFunc; -015 -016 public RegenerativeTrajectoryCommand( -017 PathingMecanumDrivebaseSubsystem sub, -018 Function<Function<Pose2d, TrajectoryBuilder>, Trajectory> t -019 ) { -020 super(sub, t); -021 trajFunc = () -> t.apply(sub::trajectoryBuilder); -022 } -023 -024 public RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, Supplier<Trajectory> t) { -025 super(sub, t); -026 trajFunc = t; -027 } -028 -029 public <T> RegenerativeTrajectoryCommand( -030 PathingMecanumDrivebaseSubsystem sub, -031 BiFunction<Function<Pose2d, TrajectoryBuilder>, T, Trajectory> t, -032 T mux -033 ) { -034 super(sub, t, mux); -035 trajFunc = () -> t.apply(sub::trajectoryBuilder, mux); -036 } -037 -038 public <T> RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, Function<T, Trajectory> t, T mux) { -039 super(sub, t, mux); -040 trajFunc = () -> t.apply(mux); -041 } -042 -043 @Override -044 public void initialize() { -045 subsystem.followTrajectoryAsync(trajFunc.get()); -046 } -047} +007import java.util.function.BiFunction; +008import java.util.function.Function; +009import java.util.function.Supplier; +010 +011public class RegenerativeTrajectoryCommand extends TrajectoryCommand { +012 +013 public Supplier<Trajectory> trajFunc; +014 +015 public RegenerativeTrajectoryCommand( +016 PathingMecanumDrivebaseSubsystem sub, +017 Function<Function<Pose2d, TrajectoryBuilder>, Trajectory> t +018 ) { +019 super(sub, t); +020 trajFunc = () -> t.apply(sub::trajectoryBuilder); +021 } +022 +023 public RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, Supplier<Trajectory> t) { +024 super(sub, t); +025 trajFunc = t; +026 } +027 +028 public <T> RegenerativeTrajectoryCommand( +029 PathingMecanumDrivebaseSubsystem sub, +030 BiFunction<Function<Pose2d, TrajectoryBuilder>, T, Trajectory> t, +031 T mux +032 ) { +033 super(sub, t, mux); +034 trajFunc = () -> t.apply(sub::trajectoryBuilder, mux); +035 } +036 +037 public <T> RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem sub, Function<T, Trajectory> t, T mux) { +038 super(sub, t, mux); +039 trajFunc = () -> t.apply(mux); +040 } +041 +042 @Override +043 public void initialize() { +044 subsystem.followTrajectoryAsync(trajFunc.get()); +045 } +046} diff --git a/docs/Path/src-html/com/technototes/path/command/TrajectorySequenceCommand.html b/docs/Path/src-html/com/technototes/path/command/TrajectorySequenceCommand.html index ef9d1b2f..cfe8b533 100644 --- a/docs/Path/src-html/com/technototes/path/command/TrajectorySequenceCommand.html +++ b/docs/Path/src-html/com/technototes/path/command/TrajectorySequenceCommand.html @@ -58,32 +58,36 @@ 045 trajectory = t.apply(sub::trajectorySequenceBuilder, mux); 046 } 047 -048 public <T> TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem sub, Function<T, TrajectorySequence> t, T mux) { -049 addRequirements(sub); -050 subsystem = sub; -051 trajectory = t.apply(mux); -052 } -053 -054 @Override -055 public void initialize() { -056 subsystem.followTrajectorySequenceAsync(trajectory); -057 } -058 -059 @Override -060 public void execute() { -061 subsystem.update(); -062 } -063 -064 @Override -065 public boolean isFinished() { -066 return !subsystem.isBusy(); -067 } -068 -069 @Override -070 public void end(boolean cancel) { -071 if (cancel) subsystem.stop(); -072 } -073} +048 public <T> TrajectorySequenceCommand( +049 PathingMecanumDrivebaseSubsystem sub, +050 Function<T, TrajectorySequence> t, +051 T mux +052 ) { +053 addRequirements(sub); +054 subsystem = sub; +055 trajectory = t.apply(mux); +056 } +057 +058 @Override +059 public void initialize() { +060 subsystem.followTrajectorySequenceAsync(trajectory); +061 } +062 +063 @Override +064 public void execute() { +065 subsystem.update(); +066 } +067 +068 @Override +069 public boolean isFinished() { +070 return !subsystem.isBusy(); +071 } +072 +073 @Override +074 public void end(boolean cancel) { +075 if (cancel) subsystem.stop(); +076 } +077} diff --git a/docs/Path/stylesheet.css b/docs/Path/stylesheet.css index 236a306f..4a576bd2 100644 --- a/docs/Path/stylesheet.css +++ b/docs/Path/stylesheet.css @@ -12,89 +12,86 @@ */ body { - background-color: #ffffff; - color: #353833; - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size: 14px; - margin: 0; - padding: 0; - height: 100%; - width: 100%; + background-color:#ffffff; + color:#353833; + font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:14px; + margin:0; + padding:0; + height:100%; + width:100%; } iframe { - margin: 0; - padding: 0; - height: 100%; - width: 100%; - overflow-y: scroll; - border: none; -} -a:link, -a:visited { - text-decoration: none; - color: #4a6782; -} -a[href]:hover, -a[href]:focus { - text-decoration: none; - color: #bb7a2a; + margin:0; + padding:0; + height:100%; + width:100%; + overflow-y:scroll; + border:none; +} +a:link, a:visited { + text-decoration:none; + color:#4A6782; +} +a[href]:hover, a[href]:focus { + text-decoration:none; + color:#bb7a2a; } a[name] { - color: #353833; + color:#353833; } pre { - font-family: 'DejaVu Sans Mono', monospace; - font-size: 14px; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; } h1 { - font-size: 20px; + font-size:20px; } h2 { - font-size: 18px; + font-size:18px; } h3 { - font-size: 16px; + font-size:16px; } h4 { - font-size: 15px; + font-size:15px; } h5 { - font-size: 14px; + font-size:14px; } h6 { - font-size: 13px; + font-size:13px; } ul { - list-style-type: disc; + list-style-type:disc; } -code, -tt { - font-family: 'DejaVu Sans Mono', monospace; +code, tt { + font-family:'DejaVu Sans Mono', monospace; } :not(h1, h2, h3, h4, h5, h6) > code, :not(h1, h2, h3, h4, h5, h6) > tt { - font-size: 14px; - padding-top: 4px; - margin-top: 8px; - line-height: 1.4em; + font-size:14px; + padding-top:4px; + margin-top:8px; + line-height:1.4em; } dt code { - font-family: 'DejaVu Sans Mono', monospace; - font-size: 14px; - padding-top: 4px; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; } .summary-table dt code { - font-family: 'DejaVu Sans Mono', monospace; - font-size: 14px; - vertical-align: top; - padding-top: 4px; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + vertical-align:top; + padding-top:4px; } sup { - font-size: 8px; + font-size:8px; } button { - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size: 14px; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 14px; } /* * Styles for HTML generated by javadoc. @@ -106,654 +103,596 @@ button { * Styles for document title and copyright. */ .clear { - clear: both; - height: 0; - overflow: hidden; + clear:both; + height:0; + overflow:hidden; } .about-language { - float: right; - padding: 0 21px 8px 8px; - font-size: 11px; - margin-top: -9px; - height: 2.9em; + float:right; + padding:0 21px 8px 8px; + font-size:11px; + margin-top:-9px; + height:2.9em; } .legal-copy { - margin-left: 0.5em; + margin-left:.5em; } .tab { - background-color: #0066ff; - color: #ffffff; - padding: 8px; - width: 5em; - font-weight: bold; + background-color:#0066FF; + color:#ffffff; + padding:8px; + width:5em; + font-weight:bold; } /* * Styles for navigation bar. */ @media screen { - .flex-box { - position: fixed; - display: flex; - flex-direction: column; - height: 100%; - width: 100%; - } - .flex-header { - flex: 0 0 auto; - } - .flex-content { - flex: 1 1 auto; - overflow-y: auto; - } + .flex-box { + position:fixed; + display:flex; + flex-direction:column; + height: 100%; + width: 100%; + } + .flex-header { + flex: 0 0 auto; + } + .flex-content { + flex: 1 1 auto; + overflow-y: auto; + } } .top-nav { - background-color: #4d7a97; - color: #ffffff; - float: left; - padding: 0; - width: 100%; - clear: right; - min-height: 2.8em; - padding-top: 10px; - overflow: hidden; - font-size: 12px; + background-color:#4D7A97; + color:#FFFFFF; + float:left; + padding:0; + width:100%; + clear:right; + min-height:2.8em; + padding-top:10px; + overflow:hidden; + font-size:12px; } .sub-nav { - background-color: #dee3e9; - float: left; - width: 100%; - overflow: hidden; - font-size: 12px; + background-color:#dee3e9; + float:left; + width:100%; + overflow:hidden; + font-size:12px; } .sub-nav div { - clear: left; - float: left; - padding: 0 0 5px 6px; - text-transform: uppercase; + clear:left; + float:left; + padding:0 0 5px 6px; + text-transform:uppercase; } .sub-nav .nav-list { - padding-top: 5px; + padding-top:5px; } ul.nav-list { - display: block; - margin: 0 25px 0 0; - padding: 0; + display:block; + margin:0 25px 0 0; + padding:0; } ul.sub-nav-list { - float: left; - margin: 0 25px 0 0; - padding: 0; + float:left; + margin:0 25px 0 0; + padding:0; } ul.nav-list li { - list-style: none; - float: left; - padding: 5px 6px; - text-transform: uppercase; + list-style:none; + float:left; + padding: 5px 6px; + text-transform:uppercase; } .sub-nav .nav-list-search { - float: right; - margin: 0 0 0 0; - padding: 5px 6px; - clear: none; + float:right; + margin:0 0 0 0; + padding:5px 6px; + clear:none; } .nav-list-search label { - position: relative; - right: -16px; + position:relative; + right:-16px; } ul.sub-nav-list li { - list-style: none; - float: left; - padding-top: 10px; + list-style:none; + float:left; + padding-top:10px; } -.top-nav a:link, -.top-nav a:active, -.top-nav a:visited { - color: #ffffff; - text-decoration: none; - text-transform: uppercase; +.top-nav a:link, .top-nav a:active, .top-nav a:visited { + color:#FFFFFF; + text-decoration:none; + text-transform:uppercase; } .top-nav a:hover { - text-decoration: none; - color: #bb7a2a; - text-transform: uppercase; + text-decoration:none; + color:#bb7a2a; + text-transform:uppercase; } .nav-bar-cell1-rev { - background-color: #f8981d; - color: #253441; - margin: auto 5px; + background-color:#F8981D; + color:#253441; + margin: auto 5px; } .skip-nav { - position: absolute; - top: auto; - left: -9999px; - overflow: hidden; + position:absolute; + top:auto; + left:-9999px; + overflow:hidden; } /* * Hide navigation links and search box in print layout */ @media print { - ul.nav-list, - div.sub-nav { - display: none; - } + ul.nav-list, div.sub-nav { + display:none; + } } /* * Styles for page header and footer. */ .title { - color: #2c4557; - margin: 10px 0; + color:#2c4557; + margin:10px 0; } .sub-title { - margin: 5px 0 0 0; + margin:5px 0 0 0; } .header ul { - margin: 0 0 15px 0; - padding: 0; + margin:0 0 15px 0; + padding:0; } -.header ul li, -.footer ul li { - list-style: none; - font-size: 13px; +.header ul li, .footer ul li { + list-style:none; + font-size:13px; } /* * Styles for headings. */ body.class-declaration-page .summary h2, body.class-declaration-page .details h2, -body.class-use-page h2, -body.module-declaration-page .block-list h2 { - font-style: italic; - padding: 0; - margin: 15px 0; +body.class-use-page h2, +body.module-declaration-page .block-list h2 { + font-style: italic; + padding:0; + margin:15px 0; } body.class-declaration-page .summary h3, body.class-declaration-page .details h3, body.class-declaration-page .summary .inherited-list h2 { - background-color: #dee3e9; - border: 1px solid #d0d9e0; - margin: 0 0 6px -8px; - padding: 7px 5px; + background-color:#dee3e9; + border:1px solid #d0d9e0; + margin:0 0 6px -8px; + padding:7px 5px; } /* * Styles for page layout containers. */ main { - clear: both; - padding: 10px 20px; - position: relative; + clear:both; + padding:10px 20px; + position:relative; } dl.notes > dt { - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size: 12px; - font-weight: bold; - margin: 10px 0 0 0; - color: #4e4e4e; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:12px; + font-weight:bold; + margin:10px 0 0 0; + color:#4E4E4E; } dl.notes > dd { - margin: 5px 10px 10px 0; - font-size: 14px; - font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; + margin:5px 10px 10px 0; + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; } dl.name-value > dt { - margin-left: 1px; - font-size: 1.1em; - display: inline; - font-weight: bold; + margin-left:1px; + font-size:1.1em; + display:inline; + font-weight:bold; } dl.name-value > dd { - margin: 0 0 0 1px; - font-size: 1.1em; - display: inline; + margin:0 0 0 1px; + font-size:1.1em; + display:inline; } /* * Styles for lists. */ li.circle { - list-style: circle; + list-style:circle; } ul.horizontal li { - display: inline; - font-size: 0.9em; + display:inline; + font-size:0.9em; } div.inheritance { - margin: 0; - padding: 0; + margin:0; + padding:0; } div.inheritance div.inheritance { - margin-left: 2em; + margin-left:2em; } ul.block-list, ul.details-list, ul.member-list, ul.summary-list { - margin: 10px 0 10px 0; - padding: 0; + margin:10px 0 10px 0; + padding:0; } ul.block-list > li, ul.details-list > li, ul.member-list > li, ul.summary-list > li { - list-style: none; - margin-bottom: 15px; - line-height: 1.4; + list-style:none; + margin-bottom:15px; + line-height:1.4; } -.summary-table dl, -.summary-table dl dt, -.summary-table dl dd { - margin-top: 0; - margin-bottom: 1px; +.summary-table dl, .summary-table dl dt, .summary-table dl dd { + margin-top:0; + margin-bottom:1px; } -ul.see-list, -ul.see-list-long { - padding-left: 0; - list-style: none; +ul.see-list, ul.see-list-long { + padding-left: 0; + list-style: none; } ul.see-list li { - display: inline; + display: inline; } ul.see-list li:not(:last-child):after, ul.see-list-long li:not(:last-child):after { - content: ', '; - white-space: pre-wrap; + content: ", "; + white-space: pre-wrap; } /* * Styles for tables. */ -.summary-table, -.details-table { - width: 100%; - border-spacing: 0; - border-left: 1px solid #eee; - border-right: 1px solid #eee; - border-bottom: 1px solid #eee; - padding: 0; +.summary-table, .details-table { + width:100%; + border-spacing:0; + border-left:1px solid #EEE; + border-right:1px solid #EEE; + border-bottom:1px solid #EEE; + padding:0; } .caption { - position: relative; - text-align: left; - background-repeat: no-repeat; - color: #253441; - font-weight: bold; - clear: none; - overflow: hidden; - padding: 0; - padding-top: 10px; - padding-left: 1px; - margin: 0; - white-space: pre; -} -.caption a:link, -.caption a:visited { - color: #1f389c; + position:relative; + text-align:left; + background-repeat:no-repeat; + color:#253441; + font-weight:bold; + clear:none; + overflow:hidden; + padding:0; + padding-top:10px; + padding-left:1px; + margin:0; + white-space:pre; +} +.caption a:link, .caption a:visited { + color:#1f389c; } .caption a:hover, .caption a:active { - color: #ffffff; + color:#FFFFFF; } .caption span { - white-space: nowrap; - padding-top: 5px; - padding-left: 12px; - padding-right: 12px; - padding-bottom: 7px; - display: inline-block; - float: left; - background-color: #f8981d; - border: none; - height: 16px; + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + padding-bottom:7px; + display:inline-block; + float:left; + background-color:#F8981D; + border: none; + height:16px; } div.table-tabs { - padding: 10px 0 0 1px; - margin: 0; + padding:10px 0 0 1px; + margin:0; } div.table-tabs > button { - border: none; - cursor: pointer; - padding: 5px 12px 7px 12px; - font-weight: bold; - margin-right: 3px; + border: none; + cursor: pointer; + padding: 5px 12px 7px 12px; + font-weight: bold; + margin-right: 3px; } div.table-tabs > button.active-table-tab { - background: #f8981d; - color: #253441; + background: #F8981D; + color: #253441; } div.table-tabs > button.table-tab { - background: #4d7a97; - color: #ffffff; + background: #4D7A97; + color: #FFFFFF; } .two-column-summary { - display: grid; - grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); } .three-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); } .four-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax( - 10%, - auto - ); + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax(10%, auto); } @media screen and (max-width: 600px) { - .two-column-summary { - display: grid; - grid-template-columns: 1fr; - } + .two-column-summary { + display: grid; + grid-template-columns: 1fr; + } } @media screen and (max-width: 800px) { - .three-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(25%, auto); - } - .three-column-summary .col-last { - grid-column-end: span 2; - } + .three-column-summary { + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(25%, auto); + } + .three-column-summary .col-last { + grid-column-end: span 2; + } } @media screen and (max-width: 1000px) { - .four-column-summary { - display: grid; - grid-template-columns: minmax(15%, max-content) minmax(15%, auto); - } -} -.summary-table > div, -.details-table > div { - text-align: left; - padding: 8px 3px 3px 7px; -} -.col-first, -.col-second, -.col-last, -.col-constructor-name, -.col-summary-item-name { - vertical-align: top; - padding-right: 0; - padding-top: 8px; - padding-bottom: 3px; + .four-column-summary { + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + } +} +.summary-table > div, .details-table > div { + text-align:left; + padding: 8px 3px 3px 7px; +} +.col-first, .col-second, .col-last, .col-constructor-name, .col-summary-item-name { + vertical-align:top; + padding-right:0; + padding-top:8px; + padding-bottom:3px; } .table-header { - background: #dee3e9; - font-weight: bold; -} -.col-first, -.col-first { - font-size: 13px; -} -.col-second, -.col-second, -.col-last, -.col-constructor-name, -.col-summary-item-name, -.col-last { - font-size: 13px; + background:#dee3e9; + font-weight: bold; } -.col-first, -.col-second, -.col-constructor-name { - vertical-align: top; - overflow: auto; +.col-first, .col-first { + font-size:13px; +} +.col-second, .col-second, .col-last, .col-constructor-name, .col-summary-item-name, .col-last { + font-size:13px; +} +.col-first, .col-second, .col-constructor-name { + vertical-align:top; + overflow: auto; } .col-last { - white-space: normal; -} -.col-first a:link, -.col-first a:visited, -.col-second a:link, -.col-second a:visited, -.col-first a:link, -.col-first a:visited, -.col-second a:link, -.col-second a:visited, -.col-constructor-name a:link, -.col-constructor-name a:visited, -.col-summary-item-name a:link, -.col-summary-item-name a:visited, -.constant-values-container a:link, -.constant-values-container a:visited, -.all-classes-container a:link, -.all-classes-container a:visited, -.all-packages-container a:link, -.all-packages-container a:visited { - font-weight: bold; + white-space:normal; +} +.col-first a:link, .col-first a:visited, +.col-second a:link, .col-second a:visited, +.col-first a:link, .col-first a:visited, +.col-second a:link, .col-second a:visited, +.col-constructor-name a:link, .col-constructor-name a:visited, +.col-summary-item-name a:link, .col-summary-item-name a:visited, +.constant-values-container a:link, .constant-values-container a:visited, +.all-classes-container a:link, .all-classes-container a:visited, +.all-packages-container a:link, .all-packages-container a:visited { + font-weight:bold; } .table-sub-heading-color { - background-color: #eeeeff; + background-color:#EEEEFF; } -.even-row-color, -.even-row-color .table-header { - background-color: #ffffff; +.even-row-color, .even-row-color .table-header { + background-color:#FFFFFF; } -.odd-row-color, -.odd-row-color .table-header { - background-color: #eeeeef; +.odd-row-color, .odd-row-color .table-header { + background-color:#EEEEEF; } /* * Styles for contents. */ .deprecated-content { - margin: 0; - padding: 10px 0; + margin:0; + padding:10px 0; } div.block { - font-size: 14px; - font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; } .col-last div { - padding-top: 0; + padding-top:0; } .col-last a { - padding-bottom: 3px; + padding-bottom:3px; } .module-signature, .package-signature, .type-signature, .member-signature { - font-family: 'DejaVu Sans Mono', monospace; - font-size: 14px; - margin: 14px 0; - white-space: pre-wrap; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + margin:14px 0; + white-space: pre-wrap; } .module-signature, .package-signature, .type-signature { - margin-top: 0; + margin-top: 0; } .member-signature .type-parameters-long, .member-signature .parameters, .member-signature .exceptions { - display: inline-block; - vertical-align: top; - white-space: pre; + display: inline-block; + vertical-align: top; + white-space: pre; } .member-signature .type-parameters { - white-space: normal; + white-space: normal; } /* * Styles for formatting effect. */ .source-line-no { - color: green; - padding: 0 30px 0 0; + color:green; + padding:0 30px 0 0; } h1.hidden { - visibility: hidden; - overflow: hidden; - font-size: 10px; + visibility:hidden; + overflow:hidden; + font-size:10px; } .block { - display: block; - margin: 0 10px 5px 0; - color: #474747; -} -.deprecated-label, -.descfrm-type-label, -.implementation-label, -.member-name-label, -.member-name-link, -.module-label-in-package, -.module-label-in-type, -.override-specify-label, -.package-label-in-type, -.package-hierarchy-label, -.type-name-label, -.type-name-link, -.search-tag-link, -.preview-label { - font-weight: bold; -} -.deprecation-comment, -.help-footnote, -.preview-comment { - font-style: italic; + display:block; + margin:0 10px 5px 0; + color:#474747; +} +.deprecated-label, .descfrm-type-label, .implementation-label, .member-name-label, .member-name-link, +.module-label-in-package, .module-label-in-type, .override-specify-label, .package-label-in-type, +.package-hierarchy-label, .type-name-label, .type-name-link, .search-tag-link, .preview-label { + font-weight:bold; +} +.deprecation-comment, .help-footnote, .preview-comment { + font-style:italic; } .deprecation-block { - font-size: 14px; - font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; - border-style: solid; - border-width: thin; - border-radius: 10px; - padding: 10px; - margin-bottom: 10px; - margin-right: 10px; - display: inline-block; + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + border-style:solid; + border-width:thin; + border-radius:10px; + padding:10px; + margin-bottom:10px; + margin-right:10px; + display:inline-block; } .preview-block { - font-size: 14px; - font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; - border-style: solid; - border-width: thin; - border-radius: 10px; - padding: 10px; - margin-bottom: 10px; - margin-right: 10px; - display: inline-block; + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + border-style:solid; + border-width:thin; + border-radius:10px; + padding:10px; + margin-bottom:10px; + margin-right:10px; + display:inline-block; } div.block div.deprecation-comment { - font-style: normal; + font-style:normal; } /* * Styles specific to HTML5 elements. */ -main, -nav, -header, -footer, -section { - display: block; +main, nav, header, footer, section { + display:block; } /* * Styles for javadoc search. */ .ui-autocomplete-category { - font-weight: bold; - font-size: 15px; - padding: 7px 0 7px 3px; - background-color: #4d7a97; - color: #ffffff; + font-weight:bold; + font-size:15px; + padding:7px 0 7px 3px; + background-color:#4D7A97; + color:#FFFFFF; } .result-item { - font-size: 13px; + font-size:13px; } .ui-autocomplete { - max-height: 85%; - max-width: 65%; - overflow-y: scroll; - overflow-x: scroll; - white-space: nowrap; - box-shadow: - 0 3px 6px rgba(0, 0, 0, 0.16), - 0 3px 6px rgba(0, 0, 0, 0.23); + max-height:85%; + max-width:65%; + overflow-y:scroll; + overflow-x:scroll; + white-space:nowrap; + box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23); } ul.ui-autocomplete { - position: fixed; - z-index: 999999; - background-color: #ffffff; + position:fixed; + z-index:999999; + background-color: #FFFFFF; } -ul.ui-autocomplete li { - float: left; - clear: both; - width: 100%; +ul.ui-autocomplete li { + float:left; + clear:both; + width:100%; } .result-highlight { - font-weight: bold; + font-weight:bold; } .ui-autocomplete .result-item { - font-size: inherit; + font-size: inherit; } #search-input { - background-image: url('resources/glass.png'); - background-size: 13px; - background-repeat: no-repeat; - background-position: 2px 3px; - padding-left: 20px; - position: relative; - right: -18px; - width: 400px; + background-image:url('resources/glass.png'); + background-size:13px; + background-repeat:no-repeat; + background-position:2px 3px; + padding-left:20px; + position:relative; + right:-18px; + width:400px; } #reset-button { - background-color: rgb(255, 255, 255); - background-image: url('resources/x.png'); - background-position: center; - background-repeat: no-repeat; - background-size: 12px; - border: 0 none; - width: 16px; - height: 16px; - position: relative; - left: -4px; - top: -4px; - font-size: 0px; + background-color: rgb(255,255,255); + background-image:url('resources/x.png'); + background-position:center; + background-repeat:no-repeat; + background-size:12px; + border:0 none; + width:16px; + height:16px; + position:relative; + left:-4px; + top:-4px; + font-size:0px; } .watermark { - color: #545454; + color:#545454; } .search-tag-desc-result { - font-style: italic; - font-size: 11px; + font-style:italic; + font-size:11px; } .search-tag-holder-result { - font-style: italic; - font-size: 12px; + font-style:italic; + font-size:12px; } .search-tag-result:target { - background-color: yellow; + background-color:yellow; } .module-graph span { - display: none; - position: absolute; + display:none; + position:absolute; } .module-graph:hover span { - display: block; - margin: -100px 0 0 100px; - z-index: 1; + display:block; + margin: -100px 0 0 100px; + z-index: 1; } .inherited-list { - margin: 10px 0 10px 0; + margin: 10px 0 10px 0; } section.class-description { - line-height: 1.4; -} -.summary section[class$='-summary'], -.details section[class$='-details'], -.class-uses .detail, -.serialized-class-details { - padding: 0px 20px 5px 10px; - border: 1px solid #ededed; - background-color: #f8f8f8; -} -.inherited-list, -section[class$='-details'] .detail { - padding: 0 0 5px 8px; - background-color: #ffffff; - border: none; + line-height: 1.4; +} +.summary section[class$="-summary"], .details section[class$="-details"], +.class-uses .detail, .serialized-class-details { + padding: 0px 20px 5px 10px; + border: 1px solid #ededed; + background-color: #f8f8f8; +} +.inherited-list, section[class$="-details"] .detail { + padding:0 0 5px 8px; + background-color:#ffffff; + border:none; } .vertical-separator { - padding: 0 5px; + padding: 0 5px; } ul.help-section-list { - margin: 0; + margin: 0; } ul.help-subtoc > li { display: inline-block; @@ -761,34 +700,32 @@ ul.help-subtoc > li { font-size: smaller; } ul.help-subtoc > li::before { - content: '\2022'; - padding-right: 2px; + content: "\2022" ; + padding-right:2px; } span.help-note { - font-style: italic; + font-style: italic; } /* * Indicator icon for external links. */ -main a[href*="://"]::after -{ - content: ''; - display: inline-block; - background-image: url('data:image/svg+xml; utf8, \ +main a[href*="://"]::after { + content:""; + display:inline-block; + background-image:url('data:image/svg+xml; utf8, \ \ \ '); - background-size: 100% 100%; - width: 7px; - height: 7px; - margin-left: 2px; - margin-bottom: 4px; + background-size:100% 100%; + width:7px; + height:7px; + margin-left:2px; + margin-bottom:4px; } main a[href*="://"]:hover::after, -main a[href*="://"]:focus::after -{ - background-image: url('data:image/svg+xml; utf8, \ +main a[href*="://"]:focus::after { + background-image:url('data:image/svg+xml; utf8, \ \ \ @@ -817,135 +754,116 @@ main a[href*="://"]:focus::after table.borderless, table.plain, table.striped { - margin-top: 10px; - margin-bottom: 10px; + margin-top: 10px; + margin-bottom: 10px; } table.borderless > caption, table.plain > caption, table.striped > caption { - font-weight: bold; - font-size: smaller; + font-weight: bold; + font-size: smaller; } -table.borderless th, -table.borderless td, -table.plain th, -table.plain td, -table.striped th, -table.striped td { - padding: 2px 5px; +table.borderless th, table.borderless td, +table.plain th, table.plain td, +table.striped th, table.striped td { + padding: 2px 5px; } table.borderless, -table.borderless > thead > tr > th, -table.borderless > tbody > tr > th, -table.borderless > tr > th, -table.borderless > thead > tr > td, -table.borderless > tbody > tr > td, -table.borderless > tr > td { - border: none; -} -table.borderless > thead > tr, -table.borderless > tbody > tr, -table.borderless > tr { - background-color: transparent; +table.borderless > thead > tr > th, table.borderless > tbody > tr > th, table.borderless > tr > th, +table.borderless > thead > tr > td, table.borderless > tbody > tr > td, table.borderless > tr > td { + border: none; +} +table.borderless > thead > tr, table.borderless > tbody > tr, table.borderless > tr { + background-color: transparent; } table.plain { - border-collapse: collapse; - border: 1px solid black; -} -table.plain > thead > tr, -table.plain > tbody tr, -table.plain > tr { - background-color: transparent; -} -table.plain > thead > tr > th, -table.plain > tbody > tr > th, -table.plain > tr > th, -table.plain > thead > tr > td, -table.plain > tbody > tr > td, -table.plain > tr > td { - border: 1px solid black; + border-collapse: collapse; + border: 1px solid black; +} +table.plain > thead > tr, table.plain > tbody tr, table.plain > tr { + background-color: transparent; +} +table.plain > thead > tr > th, table.plain > tbody > tr > th, table.plain > tr > th, +table.plain > thead > tr > td, table.plain > tbody > tr > td, table.plain > tr > td { + border: 1px solid black; } table.striped { - border-collapse: collapse; - border: 1px solid black; + border-collapse: collapse; + border: 1px solid black; } table.striped > thead { - background-color: #e3e3e3; + background-color: #E3E3E3; } -table.striped > thead > tr > th, -table.striped > thead > tr > td { - border: 1px solid black; +table.striped > thead > tr > th, table.striped > thead > tr > td { + border: 1px solid black; } table.striped > tbody > tr:nth-child(even) { - background-color: #eee; + background-color: #EEE } table.striped > tbody > tr:nth-child(odd) { - background-color: #fff; + background-color: #FFF } -table.striped > tbody > tr > th, -table.striped > tbody > tr > td { - border-left: 1px solid black; - border-right: 1px solid black; +table.striped > tbody > tr > th, table.striped > tbody > tr > td { + border-left: 1px solid black; + border-right: 1px solid black; } table.striped > tbody > tr > th { - font-weight: normal; + font-weight: normal; } /** * Tweak font sizes and paddings for small screens. */ @media screen and (max-width: 1050px) { - #search-input { - width: 300px; - } + #search-input { + width: 300px; + } } @media screen and (max-width: 800px) { - #search-input { - width: 200px; - } - .top-nav, - .bottom-nav { - font-size: 11px; - padding-top: 6px; - } - .sub-nav { - font-size: 11px; - } - .about-language { - padding-right: 16px; - } - ul.nav-list li, - .sub-nav .nav-list-search { - padding: 6px; - } - ul.sub-nav-list li { - padding-top: 5px; - } - main { - padding: 10px; - } - .summary section[class$='-summary'], - .details section[class$='-details'], - .class-uses .detail, - .serialized-class-details { - padding: 0 8px 5px 8px; - } - body { - -webkit-text-size-adjust: none; - } + #search-input { + width: 200px; + } + .top-nav, + .bottom-nav { + font-size: 11px; + padding-top: 6px; + } + .sub-nav { + font-size: 11px; + } + .about-language { + padding-right: 16px; + } + ul.nav-list li, + .sub-nav .nav-list-search { + padding: 6px; + } + ul.sub-nav-list li { + padding-top: 5px; + } + main { + padding: 10px; + } + .summary section[class$="-summary"], .details section[class$="-details"], + .class-uses .detail, .serialized-class-details { + padding: 0 8px 5px 8px; + } + body { + -webkit-text-size-adjust: none; + } } @media screen and (max-width: 500px) { - #search-input { - width: 150px; - } - .top-nav, - .bottom-nav { - font-size: 10px; - } - .sub-nav { - font-size: 10px; - } - .about-language { - font-size: 10px; - padding-right: 12px; - } + #search-input { + width: 150px; + } + .top-nav, + .bottom-nav { + font-size: 10px; + } + .sub-nav { + font-size: 10px; + } + .about-language { + font-size: 10px; + padding-right: 12px; + } } diff --git a/docs/Path/tag-search-index.js b/docs/Path/tag-search-index.js index 6080d404..f38b3cb3 100644 --- a/docs/Path/tag-search-index.js +++ b/docs/Path/tag-search-index.js @@ -1,2 +1 @@ -tagSearchIndex = [{ l: 'Serialized Form', h: '', u: 'serialized-form.html' }]; -updateSearchResults(); +tagSearchIndex = [{"l":"Serialized Form","h":"","u":"serialized-form.html"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/Path/type-search-index.js b/docs/Path/type-search-index.js index 941e2e37..6286d5b7 100644 --- a/docs/Path/type-search-index.js +++ b/docs/Path/type-search-index.js @@ -1,88 +1 @@ -typeSearchIndex = [ - { p: 'com.technototes.path.util', l: 'RegressionUtil.AccelResult' }, - { l: 'All Classes and Interfaces', u: 'allclasses-index.html' }, - { p: 'com.technototes.path.util', l: 'AxesSigns' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.AxialPID' }, - { p: 'com.technototes.path.util', l: 'BNO055IMUUtil' }, - { p: 'com.technototes.path.geometry', l: 'ConfigurablePose' }, - { p: 'com.technototes.path.geometry', l: 'ConfigurablePoseD' }, - { p: 'com.technototes.path.geometry', l: 'ConfigurableVector' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.CrossPID' }, - { p: 'com.technototes.path.util', l: 'DashboardUtil' }, - { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants' }, - { p: 'com.technototes.path.subsystem', l: 'DistanceSensorLocalizer' }, - { p: 'com.technototes.path.trajectorysequence', l: 'EmptySequenceException' }, - { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.EncoderOverflow' }, - { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.ForwardOffset' }, - { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.GearRatio' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.GearRatio' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.GearRatio' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.HeadPID' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.HeadPID' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.KA' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.KA' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.KStatic' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.KStatic' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.KV' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.KV' }, - { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.LateralDistance' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.LateralMult' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.LateralMult' }, - { p: 'com.technototes.path.util', l: 'LoggingUtil' }, - { p: 'com.technototes.path.util', l: 'LynxModuleUtil.LynxFirmwareVersion' }, - { p: 'com.technototes.path.util', l: 'LynxModuleUtil.LynxFirmwareVersionException' }, - { p: 'com.technototes.path.util', l: 'LynxModuleUtil' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MaxAccel' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.MaxAccel' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MaxAngleAccel' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.MaxAngleAccel' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MaxAngleVelo' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.MaxAngleVelo' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MaxRPM' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.MaxRPM' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MaxVelo' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.MaxVelo' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants' }, - { p: 'com.technototes.path.command', l: 'MecanumDriveCommand' }, - { p: 'com.technototes.path.subsystem', l: 'PathingMecanumDrivebaseSubsystem.Mode' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MotorVeloPID' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.MotorVeloPID' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.OmegaWeight' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.OmegaWeight' }, - { p: 'com.technototes.path.subsystem', l: 'PathingMecanumDrivebaseSubsystem' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.PoseLimit' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.PoseLimit' }, - { p: 'com.technototes.path.util', l: 'RegressionUtil.RampResult' }, - { p: 'com.technototes.path.command', l: 'RegenerativeTrajectoryCommand' }, - { p: 'com.technototes.path.command', l: 'RegenerativeTrajectorySequenceCommand' }, - { p: 'com.technototes.path.util', l: 'RegressionUtil' }, - { p: 'com.technototes.path.command', l: 'ResetGyroCommand' }, - { p: 'com.technototes.path.trajectorysequence.sequencesegment', l: 'SequenceSegment' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants' }, - { p: 'com.technototes.path.subsystem', l: 'TankDrivebaseSubsystem' }, - { p: 'com.technototes.path.subsystem', l: 'ThreeDeadWheelLocalizer' }, - { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.TicksPerRev' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.TicksPerRev' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.TicksPerRev' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.TrackWidth' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.TrackWidth' }, - { p: 'com.technototes.path.command', l: 'TrajectoryCommand' }, - { p: 'com.technototes.path.trajectorysequence.sequencesegment', l: 'TrajectorySegment' }, - { p: 'com.technototes.path.trajectorysequence', l: 'TrajectorySequence' }, - { p: 'com.technototes.path.trajectorysequence', l: 'TrajectorySequenceBuilder' }, - { p: 'com.technototes.path.command', l: 'TrajectorySequenceCommand' }, - { p: 'com.technototes.path.trajectorysequence', l: 'TrajectorySequenceRunner' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.TransPID' }, - { p: 'com.technototes.path.trajectorysequence.sequencesegment', l: 'TurnSegment' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.UseDriveEncoder' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.UseDriveEncoder' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.VXWeight' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.VXWeight' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.VYWeight' }, - { p: 'com.technototes.path.trajectorysequence.sequencesegment', l: 'WaitSegment' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.WheelBase' }, - { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.WheelRadius' }, - { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.WheelRadius' }, - { p: 'com.technototes.path.subsystem', l: 'TankConstants.WheelRadius' }, -]; -updateSearchResults(); +typeSearchIndex = [{"p":"com.technototes.path.util","l":"RegressionUtil.AccelResult"},{"l":"All Classes and Interfaces","u":"allclasses-index.html"},{"p":"com.technototes.path.util","l":"AxesSigns"},{"p":"com.technototes.path.subsystem","l":"TankConstants.AxialPID"},{"p":"com.technototes.path.util","l":"BNO055IMUUtil"},{"p":"com.technototes.path.geometry","l":"ConfigurablePose"},{"p":"com.technototes.path.geometry","l":"ConfigurablePoseD"},{"p":"com.technototes.path.geometry","l":"ConfigurableVector"},{"p":"com.technototes.path.subsystem","l":"TankConstants.CrossPID"},{"p":"com.technototes.path.util","l":"DashboardUtil"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants"},{"p":"com.technototes.path.subsystem","l":"DistanceSensorLocalizer"},{"p":"com.technototes.path.trajectorysequence","l":"EmptySequenceException"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.EncoderOverflow"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.ForwardOffset"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.GearRatio"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.GearRatio"},{"p":"com.technototes.path.subsystem","l":"TankConstants.GearRatio"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.HeadPID"},{"p":"com.technototes.path.subsystem","l":"TankConstants.HeadPID"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.KA"},{"p":"com.technototes.path.subsystem","l":"TankConstants.KA"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.KStatic"},{"p":"com.technototes.path.subsystem","l":"TankConstants.KStatic"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.KV"},{"p":"com.technototes.path.subsystem","l":"TankConstants.KV"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.LateralDistance"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.LateralMult"},{"p":"com.technototes.path.subsystem","l":"TankConstants.LateralMult"},{"p":"com.technototes.path.util","l":"LoggingUtil"},{"p":"com.technototes.path.util","l":"LynxModuleUtil.LynxFirmwareVersion"},{"p":"com.technototes.path.util","l":"LynxModuleUtil.LynxFirmwareVersionException"},{"p":"com.technototes.path.util","l":"LynxModuleUtil"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MaxAccel"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MaxAccel"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MaxAngleAccel"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MaxAngleAccel"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MaxAngleVelo"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MaxAngleVelo"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MaxRPM"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MaxRPM"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MaxVelo"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MaxVelo"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants"},{"p":"com.technototes.path.command","l":"MecanumDriveCommand"},{"p":"com.technototes.path.subsystem","l":"PathingMecanumDrivebaseSubsystem.Mode"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MotorVeloPID"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MotorVeloPID"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.OmegaWeight"},{"p":"com.technototes.path.subsystem","l":"TankConstants.OmegaWeight"},{"p":"com.technototes.path.subsystem","l":"PathingMecanumDrivebaseSubsystem"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.PoseLimit"},{"p":"com.technototes.path.subsystem","l":"TankConstants.PoseLimit"},{"p":"com.technototes.path.util","l":"RegressionUtil.RampResult"},{"p":"com.technototes.path.command","l":"RegenerativeTrajectoryCommand"},{"p":"com.technototes.path.command","l":"RegenerativeTrajectorySequenceCommand"},{"p":"com.technototes.path.util","l":"RegressionUtil"},{"p":"com.technototes.path.command","l":"ResetGyroCommand"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","l":"SequenceSegment"},{"p":"com.technototes.path.subsystem","l":"TankConstants"},{"p":"com.technototes.path.subsystem","l":"TankDrivebaseSubsystem"},{"p":"com.technototes.path.subsystem","l":"ThreeDeadWheelLocalizer"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.TicksPerRev"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.TicksPerRev"},{"p":"com.technototes.path.subsystem","l":"TankConstants.TicksPerRev"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.TrackWidth"},{"p":"com.technototes.path.subsystem","l":"TankConstants.TrackWidth"},{"p":"com.technototes.path.command","l":"TrajectoryCommand"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","l":"TrajectorySegment"},{"p":"com.technototes.path.trajectorysequence","l":"TrajectorySequence"},{"p":"com.technototes.path.trajectorysequence","l":"TrajectorySequenceBuilder"},{"p":"com.technototes.path.command","l":"TrajectorySequenceCommand"},{"p":"com.technototes.path.trajectorysequence","l":"TrajectorySequenceRunner"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.TransPID"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","l":"TurnSegment"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.UseDriveEncoder"},{"p":"com.technototes.path.subsystem","l":"TankConstants.UseDriveEncoder"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.VXWeight"},{"p":"com.technototes.path.subsystem","l":"TankConstants.VXWeight"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.VYWeight"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","l":"WaitSegment"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.WheelBase"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.WheelRadius"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.WheelRadius"},{"p":"com.technototes.path.subsystem","l":"TankConstants.WheelRadius"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/TechnoLib/allclasses-index.html b/docs/TechnoLib/allclasses-index.html index 60a3aaee..4d79fa7b 100644 --- a/docs/TechnoLib/allclasses-index.html +++ b/docs/TechnoLib/allclasses-index.html @@ -1,1520 +1,463 @@ - + - - - All Classes and Interfaces (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    All Classes and Interfaces

    -
    -
    -
    - -
    -
    -
    -
    Class
    -
    Description
    -
    - Alliance -
    -
    -
    - An enumeration to specify which alliance the bot is on (Red, Blue, or None) -
    -
    - -
    -
    Not sure what this is for.
    -
    - -
    -
    Not sure what this is for.
    -
    - -
    -
    - This feels over-engineered, but it's probably for some obnoxious Java thing, - unfortunate. -
    -
    - -
    -
    TODO: Remove this.
    -
    - -
    -
    Class for analog sensors
    -
    -
    - AxisBase -
    -
    -
    The class to extend custom gamepad axis from
    -
    -
    - Binding<T - extends - BooleanSupplier> -
    -
    -
    Class for bindings to extend
    -
    - -
    -
    Button type
    -
    - -
    -   -
    - -
    -
    The class to extend custom gamepad buttons from
    -
    - -
    -   -
    - -
    -
    - A command that allows choosing among a number of commands based on variety of - conditions -
    -
    -
    - Color -
    -
    -
    Enum for Colors and some formatting
    -
    - -
    -
    TODO: Remove this.
    -
    - -
    -   -
    - -
    -
    TODO: Remove this.
    -
    - -
    -
    Class for color sensors
    -
    -
    - Command -
    -
    -
    The root Command class
    -
    - -
    -
    The command state enum
    -
    - -
    -
    Class for command axis for the gamepad
    -
    - -
    - Deprecated. -
    - -
    -
    - Command implementation of - Binding -
    -
    - -
    -
    Class for command buttons for gamepad
    -
    - -
    -
    Class for command gamepads that specifies class params
    -
    - -
    -
    - Root class for all command groups (Sequential, Parallel, etc...) WARNING: You - probably will be better served by the specific CommandGroup subclasses, rather - than using this one directly. -
    -
    -
    - CommandInput<T - extends - ButtonBase> -
    -
    -
    Class for gamepad-command integration
    -
    - -
    -
    Class for command based op modes
    -
    - -
    -
    Enum for op mode state
    -
    - -
    -
    This is a "singleton" object for scheduling commands.
    -
    - -
    -
    - Simple class for commands that require a certain condition to be true to run -
    -
    - -
    -
    TODO: Remove this.
    -
    -
    - DeviceSubsystem<T - extends - HardwareDevice<?>> -
    -
    -
    class for subsystems
    -
    - -
    -   -
    - -
    -
    Enum for the priority of the differential.
    -
    - -
    -
    TODO: Remove this.
    -
    - -
    -
    Class for digital sensors
    -
    - -
    -
    TODO: Remove this.
    -
    -
    - DrivebaseSubsystem<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> -
    -
    -
    Class for DriveBase subsystems
    -
    -
    - DummyDevice<T> -
    -
    -
    This isn't worth actually doing.
    -
    -
    - Enablable<T - extends - Enablable<T>> -
    -
    -
    Interface for anything that can be enabled/disabled
    -
    -
    - EncodedMotor<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> -
    -
    -
    Class for encoded motors
    -
    -
    - EncodedMotorGroup<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> -
    -
    -
    Class for encoded motor groups
    -
    - -
    -
    Class for encoded motor subsystems
    -
    -
    - Encoder -
    -
    -
    Interfaces for encoders to use
    -
    -
    - Entry<T> -
    -
    -
    The root class for logging entries
    -
    - -
    -
    - A wrapper around an AnalogInput that enables "zeroing" for usefulness -
    -
    -
    - GamepadBase<T - extends - ButtonBase,U - extends - AxisBase> -
    -
    -
    - A class to extend gamepads from, it does the internal processing for you. -
    -
    - -
    -
    Axis enum for all axis on gamepad
    -
    - -
    -
    Button enum for all buttons on gamepad
    -
    -
    - GamepadDpad<T - extends - ButtonBase> -
    -
    -
    A class for dpads
    -
    -
    - GamepadStick<T - extends - AxisBase,U - extends - ButtonBase> -
    -
    -
    A class for gamepad sticks
    -
    - -
    -
    TODO: Remove this.
    -
    -
    - HardwareDevice<T - extends com.qualcomm.robotcore.hardware.HardwareDevice> -
    -
    - Deprecated. -
    - -
    - Deprecated. -
    - -
    -   -
    - -
    -   -
    -
    - IGyro -
    -
    -
    An interface for a single-angle gyroscope
    -
    - -
    -   -
    -
    - IMU -
    -
    -
    - Class for the IMU (Inertial Movement Units) that implements the IGyro interface -
    -
    - -
    -
    The direction of the axes signs when remapping the axes
    -
    - -
    -
    TODO: Remove this.
    -
    - -
    -
    This is duplicated in the IMU class
    -
    -
    - Integral -
    -
    -
    A simple Observation-based integral calculator over time
    -
    -
    - Invertable<T - extends - Invertable<T>> -
    -
    -
    Interface for anything that can be inverted
    -
    - -
    -   -
    -
    - Log -
    -
    -
    - The root annotation for annotation logging, also doubles as a basic string log -
    -
    - -
    -   -
    -
    - Log.Logs -
    -
    -   -
    - -
    -
    Log a number
    -
    - -
    -
    Log a number, but store it as a number bar
    -
    - -
    -   -
    -
    - LogConfig -
    -
    -
    Annotations for configuring Logs
    -
    - -
    -
    Annotation for Blacklisting Opmodes to log this item
    -
    - -
    -
    Annotation to completely disable the entry
    -
    - -
    -
    - Annotation for determining when logged item will be sent to Telemetry -
    -
    - -
    -
    Annotation for Whitelisting Opmodes to log this item
    -
    -
    - Loggable -
    -
    -
    - All classes with annotations for logging must extend this all the way up the - hierarchy up to the op mode -
    -
    -
    - Logger -
    -
    -
    The class to manage logging
    -
    -
    - MapUtils -
    -
    -   -
    -
    - MathUtils -
    -
    -
    Class with various math functions
    -
    -
    - Motor<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> -
    -
    -
    Class for motors
    -
    - -
    -
    TODO: Remove this.
    -
    - -
    -
    - Wraps a motor instance to provide corrected velocity counts and allow reversing - independently of the corresponding slot's motor direction -
    -
    - -
    -   -
    -
    - MotorGroup<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> -
    -
    -
    Class for a group of motors
    -
    -
    - MotorSubsystem<T - extends - Motor<?>> -
    -
    -
    Class for motor subsystems
    -
    - -
    -   -
    - -
    -   -
    - -
    -   -
    - -
    -
    - Command group to run commands in parallel until all of them finish -
    -
    - -
    -
    - Command group to run commands in parallel until one particular command completes -
    -
    - -
    -
    - Command group to run commands in parallel until *one* is finished -
    -
    -
    - Periodic -
    -
    -
    An interface for classes to have the periodic function
    -
    -
    - Range -
    -
    -
    Helper class for tracking a range
    -
    - -
    - Deprecated. -
    - -
    -
    - Root class for the Robot Library (I will put important stuff here) -
    -
    -
    - Sensor<T - extends com.qualcomm.robotcore.hardware.HardwareDevice> -
    -
    - Deprecated. -
    -
    - Sensored -
    -
    - Deprecated. -
    - -
    -
    - A grouping command which runs a list of commands in sequence -
    -
    -
    - Servo -
    -
    - Deprecated. -
    - -
    -
    TODO: Remove this.
    -
    - -
    - Deprecated. -
    - -
    -   -
    - -
    -   -
    - -
    -
    Class for servo subsystems
    -
    -
    - SimpleMecanumDrivebaseSubsystem<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> -
    -
    -
    Class for mecanum/xdrive drivebases
    -
    - -
    -
    - This is a functional interface, when 'accept' is invoked, will only invoke the - 'consume' method when a different value is provided. -
    -
    -
    - Speaker -
    -
    - Deprecated. -
    -
    - Stick -
    -
    -
    Interface for objects that behave as sticks
    -
    - -
    -   -
    -
    - Subsystem -
    -
    -   -
    -
    - TankDrivebaseSubsystem<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> -
    -
    -
    Class for drivebase subsystems
    -
    - -
    -
    A command to do nothing but wait for a span of time.
    -
    -
    -
    -
    -
    -
    -
    - + + +All Classes and Interfaces (RobotLibrary API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    All Classes and Interfaces

    +
    +
    +
    +
    +
    +
    Class
    +
    Description
    + +
    +
    An enumeration to specify which alliance the bot is on (Red, Blue, or None)
    +
    + +
    +
    Not sure what this is for.
    +
    + +
    +
    Not sure what this is for.
    +
    + +
    +
    This feels over-engineered, but it's probably for some obnoxious Java thing, + unfortunate.
    +
    + +
    +
    TODO: Remove this.
    +
    + +
    +
    Class for analog sensors
    +
    + +
    +
    The class to extend custom gamepad axis from
    +
    + +
    +
    Class for bindings to extend
    +
    + +
    +
    Button type
    +
    + +
     
    + +
    +
    The class to extend custom gamepad buttons from
    +
    + +
     
    + +
    +
    A command that allows choosing among a number of commands based on variety of conditions
    +
    + +
    +
    Enum for Colors and some formatting
    +
    + +
    +
    TODO: Remove this.
    +
    + +
     
    + +
    +
    TODO: Remove this.
    +
    + +
    +
    Class for color sensors
    +
    + +
    +
    The root Command class
    +
    + +
    +
    The command state enum
    +
    + +
    +
    Class for command axis for the gamepad
    +
    + +
    Deprecated.
    + +
    +
    Command implementation of Binding
    +
    + +
    +
    Class for command buttons for gamepad
    +
    + +
    +
    Class for command gamepads that specifies class params
    +
    + +
    +
    Root class for all command groups (Sequential, Parallel, etc...) + WARNING: You probably will be better served by the specific CommandGroup subclasses, rather than + using this one directly.
    +
    + +
    +
    Class for gamepad-command integration
    +
    + +
    +
    Class for command based op modes
    +
    + +
    +
    Enum for op mode state
    +
    + +
    +
    This is a "singleton" object for scheduling commands.
    +
    + +
    +
    Simple class for commands that require a certain condition to be true to run
    +
    + +
    +
    TODO: Remove this.
    +
    + +
    +
    class for subsystems
    +
    + +
     
    + +
    +
    Enum for the priority of the differential.
    +
    + +
    +
    TODO: Remove this.
    +
    + +
    +
    Class for digital sensors
    +
    + +
    +
    TODO: Remove this.
    +
    +
    DrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    +
    +
    Class for DriveBase subsystems
    +
    + +
    +
    This isn't worth actually doing.
    +
    + +
    +
    Interface for anything that can be enabled/disabled
    +
    +
    EncodedMotor<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    +
    +
    Class for encoded motors
    +
    +
    EncodedMotorGroup<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    +
    +
    Class for encoded motor groups
    +
    + +
    +
    Class for encoded motor subsystems
    +
    + +
    +
    Interfaces for encoders to use
    +
    + +
    +
    The root class for logging entries
    +
    + +
    +
    A wrapper around an AnalogInput that enables "zeroing" for usefulness
    +
    +
    GamepadBase<T extends ButtonBase,U extends AxisBase>
    +
    +
    A class to extend gamepads from, it does the internal processing for you.
    +
    + +
    +
    Axis enum for all axis on gamepad
    +
    + +
    +
    Button enum for all buttons on gamepad
    +
    + +
    +
    A class for dpads
    +
    + +
    +
    A class for gamepad sticks
    +
    + +
    +
    TODO: Remove this.
    +
    +
    HardwareDevice<T extends com.qualcomm.robotcore.hardware.HardwareDevice>
    +
    Deprecated.
    + +
    Deprecated.
    + +
     
    + +
     
    + +
    +
    An interface for a single-angle gyroscope
    +
    + +
     
    + +
    +
    Class for the IMU (Inertial Movement Units) that implements the IGyro interface
    +
    + +
    +
    The direction of the axes signs when remapping the axes
    +
    + +
    +
    TODO: Remove this.
    +
    + +
    +
    This is duplicated in the IMU class
    +
    + +
    +
    A simple Observation-based integral calculator over time
    +
    + +
    +
    Interface for anything that can be inverted
    +
    + +
     
    + +
    +
    The root annotation for annotation logging, also doubles as a basic string log
    +
    + +
     
    + +
     
    + +
    +
    Log a number
    +
    + +
    +
    Annotations for configuring Logs
    +
    + +
    +
    Annotation for allowing Opmodes to log this item
    +
    + +
    +
    Annotation for denying Opmodes to log this item
    +
    + +
    +
    Annotation to completely disable the entry
    +
    + +
    +
    Annotation for determining when logged item will be sent to Telemetry
    +
    + +
    +
    All classes with annotations for logging must extend this all the way up the hierarchy up to the op mode
    +
    + +
    +
    The class to manage logging
    +
    + +
     
    + +
    +
    Class with various math functions
    +
    +
    Motor<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    +
    +
    Class for motors
    +
    + +
    +
    TODO: Remove this.
    +
    + +
    +
    Wraps a motor instance to provide corrected velocity counts and allow reversing independently of the corresponding + slot's motor direction
    +
    + +
     
    +
    MotorGroup<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    +
    +
    Class for a group of motors
    +
    +
    MotorSubsystem<T extends Motor<?>>
    +
    +
    Class for motor subsystems
    +
    + +
     
    + +
    +
    Command group to run commands in parallel until all of them finish
    +
    + +
    +
    Command group to run commands in parallel until one particular command completes
    +
    + +
    +
    Command group to run commands in parallel until *one* is finished
    +
    + +
    +
    An interface for classes to have the periodic function
    +
    + +
    +
    Helper class for tracking a range
    +
    + +
    Deprecated.
    + +
    +
    Root class for the Robot Library (I will put important stuff here)
    +
    +
    Sensor<T extends com.qualcomm.robotcore.hardware.HardwareDevice>
    +
    Deprecated.
    + +
    Deprecated.
    + +
    +
    A grouping command which runs a list of commands in sequence
    +
    + +
    Deprecated.
    + +
    +
    TODO: Remove this.
    +
    + +
    Deprecated.
    + +
     
    + +
     
    + +
    +
    Class for servo subsystems
    +
    +
    SimpleMecanumDrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    +
    +
    Class for mecanum/xdrive drivebases
    +
    + +
    +
    This is a functional interface, when 'accept' is invoked, will only invoke the 'consume' method + when a different value is provided.
    +
    + +
    Deprecated.
    + +
    +
    Interface for objects that behave as sticks
    +
    + +
     
    + +
     
    +
    TankDrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    +
    +
    Class for drivebase subsystems
    +
    + +
    +
    A command to do nothing but wait for a span of time.
    +
    +
    +
    +
    +
    +
    +
    + diff --git a/docs/TechnoLib/allpackages-index.html b/docs/TechnoLib/allpackages-index.html index fd25660d..fa615a47 100644 --- a/docs/TechnoLib/allpackages-index.html +++ b/docs/TechnoLib/allpackages-index.html @@ -1,174 +1,98 @@ - + - - - All Packages (RobotLibrary API) - - - - - - - - - - - - - - - - + + +All Packages (RobotLibrary API) + + + + + + + + + + + + + + + + diff --git a/docs/TechnoLib/com/technototes/library/control/CommandAxis.html b/docs/TechnoLib/com/technototes/library/control/CommandAxis.html index 5177ba68..88fe5f9e 100644 --- a/docs/TechnoLib/com/technototes/library/control/CommandAxis.html +++ b/docs/TechnoLib/com/technototes/library/control/CommandAxis.html @@ -84,7 +84,7 @@

    Class CommandAxis

    CommandInput<CommandAxis>, Enablable<ButtonBase>, Invertable<ButtonBase>, Periodic, BooleanSupplier, DoubleSupplier

  • -
    public class CommandAxis +
    public class CommandAxis extends AxisBase implements CommandInput<CommandAxis>
    Class for command axis for the gamepad
    @@ -202,7 +202,7 @@

    Constructor Details

  • CommandAxis

    -
    public CommandAxis(DoubleSupplier supplier)
    +
    public CommandAxis(DoubleSupplier supplier)
    Make a command axis
    Parameters:
    @@ -213,7 +213,7 @@

    CommandAxis

  • CommandAxis

    -
    public CommandAxis(DoubleSupplier supplier, +
    public CommandAxis(DoubleSupplier supplier, double threshold)
    Make a command axis
    @@ -234,7 +234,7 @@

    Method Details

  • getInstance

    - +
    Description copied from interface: CommandInput
    Return instance of class parameter
    @@ -248,7 +248,7 @@

    getInstance

  • setTriggerThreshold

    -
    public CommandAxis setTriggerThreshold(double threshold)
    +
    public CommandAxis setTriggerThreshold(double threshold)
    Description copied from class: AxisBase
    Set threshold
    @@ -262,19 +262,19 @@

    setTriggerThreshold

  • schedulePressed

    - +
  • schedule

    - +
  • setInverted

    -
    public CommandAxis setInverted(boolean invert)
    +
    public CommandAxis setInverted(boolean invert)
    Description copied from interface: Invertable
    Set the inversion (true -> Is inverted, false -> Not inverted)
    @@ -292,13 +292,13 @@

    setInverted

  • getAsButton

    - +
  • getAsButton

    -
    public CommandButton getAsButton(double threshold)
    +
    public CommandButton getAsButton(double threshold)
  • diff --git a/docs/TechnoLib/com/technototes/library/control/CommandGamepad.html b/docs/TechnoLib/com/technototes/library/control/CommandGamepad.html index 51203e83..b0b07896 100644 --- a/docs/TechnoLib/com/technototes/library/control/CommandGamepad.html +++ b/docs/TechnoLib/com/technototes/library/control/CommandGamepad.html @@ -103,7 +103,7 @@

    Fields inherited from class com.technototes.library.control.GamepadBase

    -a, b, back, circle, cross, dpad, dpadDown, dpadLeft, dpadRight, dpadUp, leftBumper, leftStick, leftStickButton, leftStickX, leftStickY, leftTrigger, options, rightBumper, rightStick, rightStickButton, rightStickX, rightStickY, rightTrigger, share, square, start, triangle, x, y
  • +dpad, dpadDown, dpadLeft, dpadRight, dpadUp, leftBumper, leftStick, leftStickButton, leftStickX, leftStickY, leftTrigger, ps_circle, ps_cross, ps_options, ps_share, ps_square, ps_triangle, rightBumper, rightStick, rightStickButton, rightStickX, rightStickY, rightTrigger, xbox_a, xbox_b, xbox_back, xbox_start, xbox_x, xbox_y
  • diff --git a/docs/TechnoLib/com/technototes/library/control/GamepadBase.Button.html b/docs/TechnoLib/com/technototes/library/control/GamepadBase.Button.html index bb126056..b6feb1bf 100644 --- a/docs/TechnoLib/com/technototes/library/control/GamepadBase.Button.html +++ b/docs/TechnoLib/com/technototes/library/control/GamepadBase.Button.html @@ -109,37 +109,37 @@

    Enum Constant Summary

    Enum Constant
    Description
    - +
    -
    XBox A button
    +
    Left bumper button
    - +
    -
    XBox B button
    +
    Button when clicking the left stick
    - +
    -
    PS4/XBox Back button
    +
    PS4 Circle (O) button
    - +
    -
    PS4 Circle (O) button
    +
    PS4 Cross (X) button
    - +
    -
    PS4 Cross (X) button
    +
    PS4 Options button
    - +
    -
    Left bumper button
    +
    PS4 Share button
    - +
    -
    Button when clicking the left stick
    +
    PS4 Square button
    - +
    -
    PS4 Options button
    +
    PS4 Triangle button
    @@ -149,27 +149,27 @@

    Enum Constant Summary

    Button which clicking the right stick
    - +
    -
    PS4 Share button
    +
    XBox A button
    - +
    -
    PS4 Square button
    +
    XBox B button
    - +
    -
    PS4/XBox Start button
    +
    XBox Back button
    - +
    -
    PS4 Triangle button
    +
    XBox Start button
    - +
    XBox X button
    - +
    XBox Y button
    @@ -219,87 +219,87 @@

    Methods inherited from cl

    Enum Constant Details

    - +
    -
    The button objects for the PS4 game controller
    +
    The button objects for the XBox game controller
    - +
    -
    The button objects for the PS4 game controller
    +
    The button objects for the XBox game controller
    - +
    The button objects for the XBox game controller
    - +
    -
    The button objects for the PS4 game controller
    +
    The button objects for the XBox game controller
    - +
    The button objects for the XBox game controller
    - +
    The button objects for the XBox game controller
    @@ -424,86 +424,86 @@

    Field Details

      @@ -86,54 +86,29 @@

      Optional Element Summary

      Modifier and Type
      Optional Element
      Description
      - - -
      -
      The color for the tag for the boolean
      -
      - - -
      -
      The color for the false String
      -
      - +
      -
      The format for when the boolean returns false
      -
      - - -
      Store the string when the annotated method returns false
      -
      int
      - -
      -
      Store index for this annotation (position in telemetry)
      -
      - - +
      int
      +
      -
      Store the name for this annotation to be be beside
      +
      Store index for this annotation (position in telemetry)
      -
      int
      - + +
      -
      Store priority for this log entry (to pick the most wanted entry over others with same index)
      +
      Store the name for this annotation to be be beside
      - - +
      int
      +
      -
      The color for the true String
      +
      Store priority for this log entry (to pick the most wanted entry over others with same index)
      - +
      -
      The format for when the boolean returns true
      -
      - - -
      Store the string when the annotated method returns true
  • @@ -151,7 +126,7 @@

    Element Details

  • index

    -
    int index
    +
    int index
    Store index for this annotation (position in telemetry)
    Returns:
    @@ -166,7 +141,7 @@

    index

  • priority

    - +
    Store priority for this log entry (to pick the most wanted entry over others with same index)
    Returns:
    @@ -181,7 +156,7 @@

    priority

  • trueValue

    - +
    Store the string when the annotated method returns true
    Returns:
    @@ -194,39 +169,9 @@

    trueValue

  • -
    -

    trueFormat

    - -
    The format for when the boolean returns true
    -
    -
    Returns:
    -
    The String format
    -
    -
    -
    Default:
    -
    "%s"
    -
    -
    -
  • -
  • -
    -

    trueColor

    - -
    The color for the true String
    -
    -
    Returns:
    -
    The color
    -
    -
    -
    Default:
    -
    NO_COLOR
    -
    -
    -
  • -
  • falseValue

    - +
    Store the string when the annotated method returns false
    Returns:
    @@ -239,39 +184,9 @@

    falseValue

  • -
    -

    falseFormat

    - -
    The format for when the boolean returns false
    -
    -
    Returns:
    -
    The String format
    -
    -
    -
    Default:
    -
    "%s"
    -
    -
    -
  • -
  • -
    -

    falseColor

    - -
    The color for the false String
    -
    -
    Returns:
    -
    The color
    -
    -
    -
    Default:
    -
    NO_COLOR
    -
    -
    -
  • -
  • name

    - +
    Store the name for this annotation to be be beside
    Returns:
    @@ -283,21 +198,6 @@

    name

  • -
  • -
    -

    color

    - -
    The color for the tag for the boolean
    -
    -
    Returns:
    -
    The color
    -
    -
    -
    Default:
    -
    NO_COLOR
    -
    -
    -
  • diff --git a/docs/TechnoLib/com/technototes/library/logger/Log.Logs.html b/docs/TechnoLib/com/technototes/library/logger/Log.Logs.html index 320e1432..0e81251c 100644 --- a/docs/TechnoLib/com/technototes/library/logger/Log.Logs.html +++ b/docs/TechnoLib/com/technototes/library/logger/Log.Logs.html @@ -74,7 +74,7 @@

    Annotation Interface Log
    @Documented @Retention(RUNTIME) @Target({FIELD,METHOD}) -public static @interface Log.Logs
    +public static @interface Log.Logs

  • diff --git a/docs/TechnoLib/com/technototes/library/logger/Log.Number.html b/docs/TechnoLib/com/technototes/library/logger/Log.Number.html index e15a0f8d..5ebf0497 100644 --- a/docs/TechnoLib/com/technototes/library/logger/Log.Number.html +++ b/docs/TechnoLib/com/technototes/library/logger/Log.Number.html @@ -73,7 +73,7 @@

    Annotation Interface L
    +public static @interface Log.Number
    Log a number

    @@ -87,25 +87,15 @@

    Optional Element Summary

    Modifier and Type
    Optional Element
    Description
    - - +
    int
    +
    -
    The color for the tag for the number
    -
    -
    int
    - -
    Store index for this annotation (position in telemetry)
    - - -
    -
    Store the name for this annotation to be be beside
    -
    - - + +
    -
    The color for the number
    +
    Store the name for this annotation to be be beside
    int
    @@ -127,7 +117,7 @@

    Element Details

  • index

    -
    int index
    +
    int index
    Store index for this annotation (position in telemetry)
    Returns:
    @@ -142,7 +132,7 @@

    index

  • priority

    - +
    Store priority for this log entry (to pick the most wanted entry over others with same index)
    Returns:
    @@ -157,7 +147,7 @@

    priority

  • name

    - +
    Store the name for this annotation to be be beside
    Returns:
    @@ -169,36 +159,6 @@

    name

  • -
  • -
    -

    color

    - -
    The color for the tag for the number
    -
    -
    Returns:
    -
    The color
    -
    -
    -
    Default:
    -
    NO_COLOR
    -
    -
    -
  • -
  • -
    -

    numberColor

    - -
    The color for the number
    -
    -
    Returns:
    -
    The color
    -
    -
    -
    Default:
    -
    NO_COLOR
    -
    -
    -
  • diff --git a/docs/TechnoLib/com/technototes/library/logger/Log.NumberBar.html b/docs/TechnoLib/com/technototes/library/logger/Log.NumberBar.html deleted file mode 100644 index 188e93f1..00000000 --- a/docs/TechnoLib/com/technototes/library/logger/Log.NumberBar.html +++ /dev/null @@ -1,312 +0,0 @@ - - - - -Log.NumberBar (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    - -
    - -

    Annotation Interface Log.NumberBar

    -
    -
    -
    -
    Enclosing class:
    -
    Log
    -
    -
    - -
    Log a number, but store it as a number bar
    -
    -
    -
      - -
    • -
      -

      Optional Element Summary

      -
      Optional Elements
      -
      -
      Modifier and Type
      -
      Optional Element
      -
      Description
      - - -
      -
      The color for the tag for the bar
      -
      - - -
      -
      The color for the filled in bar color
      -
      - - -
      -
      The color for the not filled in bar color
      -
      -
      int
      - -
      -
      Store index for this annotation (position in telemetry)
      -
      -
      double
      - -
      -
      Store the max for the number bar to scale to
      -
      -
      double
      - -
      -
      Store the min for the number bar to scale to
      -
      - - -
      -
      Store the name for this annotation to be be beside
      -
      - - -
      -
      The color for the bar outlines
      -
      -
      int
      - -
      -
      Store priority for this log entry (to pick the most wanted entry over others with same index)
      -
      -
      double
      - -
      -
      Store the scale for the number bar to scale to
      -
      -
      -
      -
    • -
    -
    -
    -
      - -
    • -
      -

      Element Details

      -
        -
      • -
        -

        index

        -
        int index
        -
        Store index for this annotation (position in telemetry)
        -
        -
        Returns:
        -
        The index
        -
        -
        -
        Default:
        -
        -1
        -
        -
        -
      • -
      • -
        -

        priority

        - -
        Store priority for this log entry (to pick the most wanted entry over others with same index)
        -
        -
        Returns:
        -
        The priority
        -
        -
        -
        Default:
        -
        -1
        -
        -
        -
      • -
      • -
        -

        min

        -
        double min
        -
        Store the min for the number bar to scale to
        -
        -
        Returns:
        -
        The min
        -
        -
        -
        Default:
        -
        -1.0
        -
        -
        -
      • -
      • -
        -

        max

        -
        double max
        -
        Store the max for the number bar to scale to
        -
        -
        Returns:
        -
        The max
        -
        -
        -
        Default:
        -
        1.0
        -
        -
        -
      • -
      • -
        -

        scale

        -
        double scale
        -
        Store the scale for the number bar to scale to
        -
        -
        Returns:
        -
        The scale
        -
        -
        -
        Default:
        -
        0.1
        -
        -
        -
      • -
      • -
        -

        name

        - -
        Store the name for this annotation to be be beside
        -
        -
        Returns:
        -
        The name as a string
        -
        -
        -
        Default:
        -
        ""
        -
        -
        -
      • -
      • -
        -

        color

        - -
        The color for the tag for the bar
        -
        -
        Returns:
        -
        The color
        -
        -
        -
        Default:
        -
        NO_COLOR
        -
        -
        -
      • -
      • -
        -

        completeBarColor

        - -
        The color for the filled in bar color
        -
        -
        Returns:
        -
        The color
        -
        -
        -
        Default:
        -
        NO_COLOR
        -
        -
        -
      • -
      • -
        -

        incompleteBarColor

        - -
        The color for the not filled in bar color
        -
        -
        Returns:
        -
        The color
        -
        -
        -
        Default:
        -
        NO_COLOR
        -
        -
        -
      • -
      • -
        -

        outline

        - -
        The color for the bar outlines
        -
        -
        Returns:
        -
        The color
        -
        -
        -
        Default:
        -
        NO_COLOR
        -
        -
        -
      • -
      -
      -
    • -
    -
    - -
    -
    -
    - - diff --git a/docs/TechnoLib/com/technototes/library/logger/Log.NumberSlider.html b/docs/TechnoLib/com/technototes/library/logger/Log.NumberSlider.html deleted file mode 100644 index e6e43ce3..00000000 --- a/docs/TechnoLib/com/technototes/library/logger/Log.NumberSlider.html +++ /dev/null @@ -1,311 +0,0 @@ - - - - -Log.NumberSlider (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    - -
    - -

    Annotation Interface Log.NumberSlider

    -
    -
    -
    -
    Enclosing class:
    -
    Log
    -
    -
    - -
    -
    -
      - -
    • -
      -

      Optional Element Summary

      -
      Optional Elements
      -
      -
      Modifier and Type
      -
      Optional Element
      -
      Description
      - - -
      -
      The color for the tag for the slider
      -
      -
      int
      - -
      -
      Store index for this annotation (position in telemetry)
      -
      -
      double
      - -
      -
      Store the max for the number bar to scale to
      -
      -
      double
      - -
      -
      Store the min for the number bar to scale to
      -
      - - -
      -
      Store the name for this annotation to be be beside
      -
      - - -
      -
      The color for the slider outline
      -
      -
      int
      - -
      -
      Store priority for this log entry (to pick the most wanted entry over others with same index)
      -
      -
      double
      - -
      -
      Store the scale for the number bar to scale to
      -
      - - -
      -
      The color for the slider slide
      -
      - - -
      -
      The color for the slider background
      -
      -
      -
      -
    • -
    -
    -
    -
      - -
    • -
      -

      Element Details

      -
        -
      • -
        -

        index

        -
        int index
        -
        Store index for this annotation (position in telemetry)
        -
        -
        Returns:
        -
        The index
        -
        -
        -
        Default:
        -
        -1
        -
        -
        -
      • -
      • -
        -

        priority

        - -
        Store priority for this log entry (to pick the most wanted entry over others with same index)
        -
        -
        Returns:
        -
        The priority
        -
        -
        -
        Default:
        -
        -1
        -
        -
        -
      • -
      • -
        -

        min

        -
        double min
        -
        Store the min for the number bar to scale to
        -
        -
        Returns:
        -
        The min
        -
        -
        -
        Default:
        -
        -1.0
        -
        -
        -
      • -
      • -
        -

        max

        -
        double max
        -
        Store the max for the number bar to scale to
        -
        -
        Returns:
        -
        The max
        -
        -
        -
        Default:
        -
        1.0
        -
        -
        -
      • -
      • -
        -

        scale

        -
        double scale
        -
        Store the scale for the number bar to scale to
        -
        -
        Returns:
        -
        The scale
        -
        -
        -
        Default:
        -
        0.1
        -
        -
        -
      • -
      • -
        -

        name

        - -
        Store the name for this annotation to be be beside
        -
        -
        Returns:
        -
        The name as a string
        -
        -
        -
        Default:
        -
        ""
        -
        -
        -
      • -
      • -
        -

        color

        - -
        The color for the tag for the slider
        -
        -
        Returns:
        -
        The color
        -
        -
        -
        Default:
        -
        NO_COLOR
        -
        -
        -
      • -
      • -
        -

        sliderBackground

        - -
        The color for the slider background
        -
        -
        Returns:
        -
        The color
        -
        -
        -
        Default:
        -
        NO_COLOR
        -
        -
        -
      • -
      • -
        -

        outline

        - -
        The color for the slider outline
        -
        -
        Returns:
        -
        The color
        -
        -
        -
        Default:
        -
        NO_COLOR
        -
        -
        -
      • -
      • -
        -

        slider

        - -
        The color for the slider slide
        -
        -
        Returns:
        -
        The color
        -
        -
        -
        Default:
        -
        NO_COLOR
        -
        -
        -
      • -
      -
      -
    • -
    -
    - -
    -
    -
    - - diff --git a/docs/TechnoLib/com/technototes/library/logger/Log.html b/docs/TechnoLib/com/technototes/library/logger/Log.html index 44cdc9f3..8e7813c3 100644 --- a/docs/TechnoLib/com/technototes/library/logger/Log.html +++ b/docs/TechnoLib/com/technototes/library/logger/Log.html @@ -71,7 +71,7 @@

    Annotation Interface Log

    @Repeatable(Logs.class) @Retention(RUNTIME) @Target({FIELD,LOCAL_VARIABLE,METHOD}) -public @interface Log +public @interface Log
    The root annotation for annotation logging, also doubles as a basic string log
    @@ -96,14 +96,6 @@

    Nested Class Summary

    Log a number
    -
    static @interface 
    - -
    -
    Log a number, but store it as a number bar
    -
    -
    static @interface 
    - -
     
  • @@ -116,16 +108,6 @@

    Optional Element Summary

    Modifier and Type
    Optional Element
    Description
    - - -
    -
    The color for the tag for the entry
    -
    - - -
    -
    The color for the entry
    -
    @@ -161,7 +143,7 @@

    Element Details

  • index

    -
    int index
    +
    int index
    Store index for this annotation (position in telemetry)
    Returns:
    @@ -176,7 +158,7 @@

    index

  • priority

    - +
    Store priority for this log entry (to pick the most wanted entry over others with same index)
    Returns:
    @@ -191,7 +173,7 @@

    priority

  • name

    - +
    Store the name for this annotation to be be beside
    Returns:
    @@ -206,7 +188,7 @@

    name

  • format

    - +
    The format for the logged String
    Returns:
    @@ -218,36 +200,6 @@

    format

  • -
  • -
    -

    entryColor

    - -
    The color for the entry
    -
    -
    Returns:
    -
    The color
    -
    -
    -
    Default:
    -
    NO_COLOR
    -
    -
    -
  • -
  • -
    -

    color

    - -
    The color for the tag for the entry
    -
    -
    Returns:
    -
    The color
    -
    -
    -
    Default:
    -
    NO_COLOR
    -
    -
    -
  • diff --git a/docs/TechnoLib/com/technototes/library/logger/LogConfig.Blacklist.html b/docs/TechnoLib/com/technototes/library/logger/LogConfig.AllowList.html similarity index 92% rename from docs/TechnoLib/com/technototes/library/logger/LogConfig.Blacklist.html rename to docs/TechnoLib/com/technototes/library/logger/LogConfig.AllowList.html index 493cbdd9..2673237f 100644 --- a/docs/TechnoLib/com/technototes/library/logger/LogConfig.Blacklist.html +++ b/docs/TechnoLib/com/technototes/library/logger/LogConfig.AllowList.html @@ -2,10 +2,10 @@ -LogConfig.Blacklist (RobotLibrary API) +LogConfig.AllowList (RobotLibrary API) - + @@ -63,7 +63,7 @@
    -

    Annotation Interface LogConfig.Blacklist

    +

    Annotation Interface LogConfig.AllowList

    @@ -73,8 +73,8 @@

    Annotation In
    -
    Annotation for Blacklisting Opmodes to log this item
    +public static @interface LogConfig.AllowList

  • +
    Annotation for allowing Opmodes to log this item
      @@ -90,7 +90,7 @@

      Required Element Summary

      Class<?>[]
      -
      The blacklisted opmodes
      +
      The allowed opmodes
    @@ -107,8 +107,8 @@

    Element Details

  • value

    -
    Class<?>[] value
    -
    The blacklisted opmodes
    +
    Class<?>[] value
    +
    The allowed opmodes
    Returns:
    Opmode Classes
    diff --git a/docs/TechnoLib/com/technototes/library/logger/LogConfig.Whitelist.html b/docs/TechnoLib/com/technototes/library/logger/LogConfig.DenyList.html similarity index 92% rename from docs/TechnoLib/com/technototes/library/logger/LogConfig.Whitelist.html rename to docs/TechnoLib/com/technototes/library/logger/LogConfig.DenyList.html index 68d77335..8d81a1a6 100644 --- a/docs/TechnoLib/com/technototes/library/logger/LogConfig.Whitelist.html +++ b/docs/TechnoLib/com/technototes/library/logger/LogConfig.DenyList.html @@ -2,10 +2,10 @@ -LogConfig.Whitelist (RobotLibrary API) +LogConfig.DenyList (RobotLibrary API) - + @@ -63,7 +63,7 @@
    -

    Annotation Interface LogConfig.Whitelist

    +

    Annotation Interface LogConfig.DenyList

    @@ -73,8 +73,8 @@

    Annotation In
    -
    Annotation for Whitelisting Opmodes to log this item
    +public static @interface LogConfig.DenyList +
    Annotation for denying Opmodes to log this item

      @@ -90,7 +90,7 @@

      Required Element Summary

      Class<?>[]
      -
      The whitelisted opmodes
      +
      The denied opmodes
    @@ -107,8 +107,8 @@

    Element Details

  • value

    -
    Class<?>[] value
    -
    The whitelisted opmodes
    +
    Class<?>[] value
    +
    The denied opmodes
    Returns:
    Opmode Classes
    diff --git a/docs/TechnoLib/com/technototes/library/logger/LogConfig.html b/docs/TechnoLib/com/technototes/library/logger/LogConfig.html index 7598ae48..045bac53 100644 --- a/docs/TechnoLib/com/technototes/library/logger/LogConfig.html +++ b/docs/TechnoLib/com/technototes/library/logger/LogConfig.html @@ -83,24 +83,24 @@

    Nested Class Summary

    Class
    Description
    static @interface 
    - +
    -
    Annotation for Blacklisting Opmodes to log this item
    +
    Annotation for allowing Opmodes to log this item
    static @interface 
    - +
    -
    Annotation to completely disable the entry
    +
    Annotation for denying Opmodes to log this item
    static @interface 
    - +
    -
    Annotation for determining when logged item will be sent to Telemetry
    +
    Annotation to completely disable the entry
    static @interface 
    - +
    -
    Annotation for Whitelisting Opmodes to log this item
    +
    Annotation for determining when logged item will be sent to Telemetry
    diff --git a/docs/TechnoLib/com/technototes/library/logger/Logger.html b/docs/TechnoLib/com/technototes/library/logger/Logger.html index 75854ac7..4eabcd91 100644 --- a/docs/TechnoLib/com/technototes/library/logger/Logger.html +++ b/docs/TechnoLib/com/technototes/library/logger/Logger.html @@ -76,7 +76,7 @@

    Class Logger


    -
    public class Logger +
    public class Logger extends Object
    The class to manage logging
    @@ -167,19 +167,19 @@

    Field Details

  • runEntries

    -
    public Entry<?>[] runEntries
    +
    public Entry<?>[] runEntries
  • initEntries

    -
    public Entry<?>[] initEntries
    +
    public Entry<?>[] initEntries
  • captionDivider

    -
    public char captionDivider
    +
    public char captionDivider
    The divider between the tag and the entry for telemetry (default ':')
  • @@ -194,7 +194,7 @@

    Constructor Details

  • Logger

    -
    public Logger(com.qualcomm.robotcore.eventloop.opmode.OpMode op)
    +
    public Logger(com.qualcomm.robotcore.eventloop.opmode.OpMode op)
    Instantiate the logger
    Parameters:
    @@ -213,21 +213,21 @@

    Method Details

  • runUpdate

    -
    public void runUpdate()
    +
    public void runUpdate()
    Update the logged run items in temeletry
  • initUpdate

    -
    public void initUpdate()
    +
    public void initUpdate()
    Update the logged init items in temeletry
  • repeat

    -
    public static String repeat(String s, +
    public static String repeat(String s, int num)
    Repeat a String
    diff --git a/docs/TechnoLib/com/technototes/library/logger/entry/BooleanEntry.html b/docs/TechnoLib/com/technototes/library/logger/entry/BooleanEntry.html index 2107e10d..cd653280 100644 --- a/docs/TechnoLib/com/technototes/library/logger/entry/BooleanEntry.html +++ b/docs/TechnoLib/com/technototes/library/logger/entry/BooleanEntry.html @@ -93,7 +93,7 @@

    Class BooleanEntry

    Field Summary

    Fields inherited from class com.technototes.library.logger.entry.Entry

    -color, name, priority, supplier, tag, x
    +name, priority, supplier, x
  • @@ -104,16 +104,11 @@

    Constructor Summary

    Constructor
    Description
    -
    BooleanEntry(String n, +
    BooleanEntry(String n, Supplier<Boolean> s, int index, String wt, - String wf, - Color c, - String tf, - String ff, - Color tc, - Color fc)
    + String wf)
     
    @@ -139,7 +134,7 @@

    Method Summary

    Methods inherited from class com.technototes.library.logger.entry.Entry

    -get, getIndex, getName, getPriority, getTag, setIndex, setPriority
    +get, getIndex, getName, getPriority, setIndex, setPriority

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    @@ -155,18 +150,13 @@

    Methods inherited from cl

    Constructor Details

    @@ -180,7 +170,7 @@

    Method Details

  • toString

    -
    public String toString()
    +
    public String toString()
    Description copied from class: Entry
    The String for the logged item
    diff --git a/docs/TechnoLib/com/technototes/library/logger/entry/Entry.html b/docs/TechnoLib/com/technototes/library/logger/entry/Entry.html index e57b77b7..bb0f2971 100644 --- a/docs/TechnoLib/com/technototes/library/logger/entry/Entry.html +++ b/docs/TechnoLib/com/technototes/library/logger/entry/Entry.html @@ -88,7 +88,7 @@

    Class Entry<T>

    BooleanEntry, NumberEntry, StringEntry

    -
    public abstract class Entry<T> +
    public abstract class Entry<T> extends Object implements Supplier<T>
    The root class for logging entries
    @@ -104,30 +104,20 @@

    Field Summary

    Modifier and Type
    Field
    Description
    -
    protected Color
    - +
    protected String
    +
    -
    Color to display
    -
    -
    protected String
    - -
    The name of the Entry
    -
    protected int
    - -
    -
    The priority (in the telemetry list) of the entry
    -
    -
    protected Supplier<T>
    - +
    protected int
    +
    -
    The function called to get the value to display
    +
    The priority (in the telemetry list) of the entry
    -
    protected String
    - +
    protected Supplier<T>
    +
    -
    String to use a 'header' (calculated from name and color)
    +
    The function called to get the value to display
    protected int
    @@ -145,12 +135,11 @@

    Constructor Summary

    Constructor
    Description
    -
    Entry(String n, +
    Entry(String n, Supplier<T> s, - int index, - Color c)
    + int index)
    -
    Create an entry with name, value, index, and color
    +
    Create an entry with name, value, index
    @@ -177,31 +166,26 @@

    Method Summary

    -
    Get the name (unformatted tag)
    +
    Get the name
    int
    Get Priority for the entry
    - - + +
    setIndex(int i)
    -
    The tag for the entry
    -
    - -
    setIndex(int i)
    -
    Set index
    - -
    setPriority(int p)
    -
    + +
    setPriority(int p)
    +
    Set's the priority for this log line (handy for telemetry overflow)
    - - -
    + + +
    The String for the logged item
    @@ -224,45 +208,31 @@

    Field Details

  • x

    -
    protected int x
    +
    protected int x
    The index (in the list) of the entry
  • priority

    -
    protected int priority
    +
    protected int priority
    The priority (in the telemetry list) of the entry
  • supplier

    -
    protected Supplier<T> supplier
    +
    protected Supplier<T> supplier
    The function called to get the value to display
  • name

    -
    protected String name
    +
    protected String name
    The name of the Entry
  • -
  • -
    -

    tag

    -
    protected String tag
    -
    String to use a 'header' (calculated from name and color)
    -
    -
  • -
  • -
    -

    color

    -
    protected Color color
    -
    Color to display
    -
    -
  • @@ -272,19 +242,17 @@

    color

    Constructor Details

    diff --git a/docs/TechnoLib/constant-values.html b/docs/TechnoLib/constant-values.html index 5af54f17..08ce8446 100644 --- a/docs/TechnoLib/constant-values.html +++ b/docs/TechnoLib/constant-values.html @@ -1,236 +1,117 @@ - + - - - Constant Field Values (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Constant Field Values

    -
    -

    Contents

    - -
    -
    -
    -

    com.technototes.*

    -
      -
    • -
      - com.technototes.library.control.AxisBase -
      -
      -
      Modifier and Type
      -
      Constant Field
      -
      Value
      -
      - public static final double -
      - -
      0.05
      -
      -
    • -
    -
      -
    • -
      - com.technototes.library.structure.CommandOpMode -
      -
      -
      Modifier and Type
      -
      Constant Field
      -
      Value
      -
      - public static final int -
      -
      - MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED -
      -
      900
      -
      -
    • -
    -
      -
    • -
      - com.technototes.library.util.Characters -
      -
      -
      Modifier and Type
      -
      Constant Field
      -
      Value
      -
      - public static final String -
      - -
      "\ud83d\udd35"
      -
      - public static final String -
      -
      - CYCLE -
      -
      "\u267b\ufe0f"
      -
      - public static final String -
      -
      - DUCK -
      -
      "\ud83e\udd86"
      -
      - public static final String -
      -
      - GAMEPAD -
      -
      "\ud83c\udfae"
      -
      - public static final String -
      - -
      "\ud83d\udfe5"
      -
      -
    • -
    -
    -
    -
    -
    - + + +Constant Field Values (RobotLibrary API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Constant Field Values

    +
    +

    Contents

    + +
    +
    +
    +

    com.technototes.*

    + +
      +
    • +
      com.technototes.library.structure.CommandOpMode
      +
      +
      Modifier and Type
      +
      Constant Field
      +
      Value
      +
      public static final int
      +
      MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED
      +
      900
      +
      +
    • +
    + +
    +
    +
    +
    + diff --git a/docs/TechnoLib/deprecated-list.html b/docs/TechnoLib/deprecated-list.html index fc5f118b..1f0e48e2 100644 --- a/docs/TechnoLib/deprecated-list.html +++ b/docs/TechnoLib/deprecated-list.html @@ -1,195 +1,120 @@ - + - - - Deprecated List (RobotLibrary API) - - - - - - - - - - - - - - - - + + +Deprecated List (RobotLibrary API) + + + + + + + + + + + + + + + + diff --git a/docs/TechnoLib/help-doc.html b/docs/TechnoLib/help-doc.html index 76a45f3d..44dc1160 100644 --- a/docs/TechnoLib/help-doc.html +++ b/docs/TechnoLib/help-doc.html @@ -1,269 +1,186 @@ - + - - - API Help (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    -

    JavaDoc Help

    - -
    -
    -

    Navigation

    - Starting from the Overview page, you can browse the - documentation using the links in each page, and in the navigation bar at the top of each - page. The Index and Search box allow you to navigate to - specific declarations and summary pages, including: - All Packages, - All Classes and Interfaces - -
    -
    -
    -

    Kinds of Pages

    - The following sections describe the different kinds of pages in this collection. -
    -

    Overview

    -

    - The Overview page is the front page of this API document - and provides a list of all packages with a summary for each. This page can also - contain an overall description of the set of packages. -

    -
    -
    -

    Package

    -

    - Each package has a page that contains a list of its classes and interfaces, with a - summary for each. These pages may contain the following categories: -

    -
      -
    • Interfaces
    • -
    • Classes
    • -
    • Enum Classes
    • -
    • Exceptions
    • -
    • Errors
    • -
    • Annotation Interfaces
    • -
    -
    -
    -

    Class or Interface

    -

    - Each class, interface, nested class and nested interface has its own separate page. - Each of these pages has three sections consisting of a declaration and description, - member summary tables, and detailed member descriptions. Entries in each of these - sections are omitted if they are empty or not applicable. -

    -
      -
    • Class Inheritance Diagram
    • -
    • Direct Subclasses
    • -
    • All Known Subinterfaces
    • -
    • All Known Implementing Classes
    • -
    • Class or Interface Declaration
    • -
    • Class or Interface Description
    • -
    -
    -
      -
    • Nested Class Summary
    • -
    • Enum Constant Summary
    • -
    • Field Summary
    • -
    • Property Summary
    • -
    • Constructor Summary
    • -
    • Method Summary
    • -
    • Required Element Summary
    • -
    • Optional Element Summary
    • -
    -
    -
      -
    • Enum Constant Details
    • -
    • Field Details
    • -
    • Property Details
    • -
    • Constructor Details
    • -
    • Method Details
    • -
    • Element Details
    • -
    -

    - Note: Annotation interfaces have required and - optional elements, but not methods. Only enum classes have enum constants. The - components of a record class are displayed as part of the declaration of the record - class. Properties are a feature of JavaFX. -

    -

    - The summary entries are alphabetical, while the detailed descriptions are in the - order they appear in the source code. This preserves the logical groupings - established by the programmer. -

    -
    -
    -

    Other Files

    -

    - Packages and modules may contain pages with additional information related to the - declarations nearby. -

    -
    -
    -

    Tree (Class Hierarchy)

    -

    - There is a Class Hierarchy page for all packages, - plus a hierarchy for each package. Each hierarchy page contains a list of classes - and a list of interfaces. Classes are organized by inheritance structure starting - with java.lang.Object. Interfaces do not inherit from - java.lang.Object. -

    -
      -
    • - When viewing the Overview page, clicking on TREE displays the hierarchy for all - packages. -
    • -
    • - When viewing a particular package, class or interface page, clicking on TREE - displays the hierarchy for only that package. -
    • -
    -
    -
    -

    Deprecated API

    -

    - The Deprecated API page lists all of the API that - have been deprecated. A deprecated API is not recommended for use, generally due to - shortcomings, and a replacement API is usually given. Deprecated APIs may be removed - in future implementations. -

    -
    -
    -

    Constant Field Values

    -

    - The Constant Field Values page lists the static - final fields and their values. -

    -
    -
    -

    All Packages

    -

    - The All Packages page contains an alphabetic - index of all packages contained in the documentation. -

    -
    -
    -

    All Classes and Interfaces

    -

    - The All Classes and Interfaces page contains an - alphabetic index of all classes and interfaces contained in the documentation, - including annotation interfaces, enum classes, and record classes. -

    -
    -
    -

    Index

    -

    - The Index contains an alphabetic index of all classes, - interfaces, constructors, methods, and fields in the documentation, as well as - summary pages such as All Packages, - All Classes and Interfaces. -

    -
    -
    -
    - This help file applies to API documentation generated by the standard doclet. -
    -
    -
    - + + +API Help (RobotLibrary API) + + + + + + + + + + + + + + +
    + +
    +
    +

    JavaDoc Help

    + +
    +
    +

    Navigation

    +Starting from the Overview page, you can browse the documentation using the links in each page, and in the navigation bar at the top of each page. The Index and Search box allow you to navigate to specific declarations and summary pages, including: All Packages, All Classes and Interfaces + +
    +
    +
    +

    Kinds of Pages

    +The following sections describe the different kinds of pages in this collection. +
    +

    Overview

    +

    The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

    +
    +
    +

    Package

    +

    Each package has a page that contains a list of its classes and interfaces, with a summary for each. These pages may contain the following categories:

    +
      +
    • Interfaces
    • +
    • Classes
    • +
    • Enum Classes
    • +
    • Exceptions
    • +
    • Errors
    • +
    • Annotation Interfaces
    • +
    +
    +
    +

    Class or Interface

    +

    Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a declaration and description, member summary tables, and detailed member descriptions. Entries in each of these sections are omitted if they are empty or not applicable.

    +
      +
    • Class Inheritance Diagram
    • +
    • Direct Subclasses
    • +
    • All Known Subinterfaces
    • +
    • All Known Implementing Classes
    • +
    • Class or Interface Declaration
    • +
    • Class or Interface Description
    • +
    +
    +
      +
    • Nested Class Summary
    • +
    • Enum Constant Summary
    • +
    • Field Summary
    • +
    • Property Summary
    • +
    • Constructor Summary
    • +
    • Method Summary
    • +
    • Required Element Summary
    • +
    • Optional Element Summary
    • +
    +
    +
      +
    • Enum Constant Details
    • +
    • Field Details
    • +
    • Property Details
    • +
    • Constructor Details
    • +
    • Method Details
    • +
    • Element Details
    • +
    +

    Note: Annotation interfaces have required and optional elements, but not methods. Only enum classes have enum constants. The components of a record class are displayed as part of the declaration of the record class. Properties are a feature of JavaFX.

    +

    The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.

    +
    +
    +

    Other Files

    +

    Packages and modules may contain pages with additional information related to the declarations nearby.

    +
    +
    +

    Tree (Class Hierarchy)

    +

    There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. Classes are organized by inheritance structure starting with java.lang.Object. Interfaces do not inherit from java.lang.Object.

    +
      +
    • When viewing the Overview page, clicking on TREE displays the hierarchy for all packages.
    • +
    • When viewing a particular package, class or interface page, clicking on TREE displays the hierarchy for only that package.
    • +
    +
    +
    +

    Deprecated API

    +

    The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to shortcomings, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.

    +
    +
    +

    Constant Field Values

    +

    The Constant Field Values page lists the static final fields and their values.

    +
    +
    +

    All Packages

    +

    The All Packages page contains an alphabetic index of all packages contained in the documentation.

    +
    +
    +

    All Classes and Interfaces

    +

    The All Classes and Interfaces page contains an alphabetic index of all classes and interfaces contained in the documentation, including annotation interfaces, enum classes, and record classes.

    +
    +
    +

    Index

    +

    The Index contains an alphabetic index of all classes, interfaces, constructors, methods, and fields in the documentation, as well as summary pages such as All Packages, All Classes and Interfaces.

    +
    +
    +
    +This help file applies to API documentation generated by the standard doclet.
    +
    +
    + diff --git a/docs/TechnoLib/index-all.html b/docs/TechnoLib/index-all.html index 6f766cc2..81a9c88f 100644 --- a/docs/TechnoLib/index-all.html +++ b/docs/TechnoLib/index-all.html @@ -1,14693 +1,3359 @@ - + - - - Index (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Index

    -
    - A B C D E F G H I J L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Constant Field Values -

    A

    -
    -
    - a - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the XBox game controller
    -
    -
    - A - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    XBox A button
    -
    -
    - accept(T) - - Method in interface com.technototes.library.util.SmartConsumer -
    -
    -
    - The public interface for a SmartConsumer: accept should be invoked, not consume :) -
    -
    -
    - addCommands(Command...) - - Method in class com.technototes.library.command.CommandGroup -
    -
    -
    Add a command to the group
    -
    -
    - additionalInitConditions() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
     
    -
    - addRequirements(Subsystem...) - - Method in interface com.technototes.library.command.Command -
    -
    -
    Add requirement subsystems to command
    -
    -
    - addSongs(String...) - - Method in class com.technototes.library.hardware.Speaker -
    -
    -
    Deprecated.
    -   -
    -
    - ALL_ACTIVE - - Enum constant in enum class com.technototes.library.control.Binding.Type -
    -
     
    -
    - Alliance - - Enum Class in - com.technototes.library.util -
    -
    -
    - An enumeration to specify which alliance the bot is on (Red, Blue, or None) -
    -
    -
    - Alliance.Blue - - Annotation Interface in - com.technototes.library.util -
    -
    -
    Not sure what this is for.
    -
    -
    - Alliance.Red - - Annotation Interface in - com.technototes.library.util -
    -
    -
    Not sure what this is for.
    -
    -
    - Alliance.Selector<T> - Class in - com.technototes.library.util -
    -
    -
    - This feels over-engineered, but it's probably for some obnoxious Java thing, - unfortunate. -
    -
    -
    - alongWith(Command...) - - Method in interface com.technototes.library.command.Command -
    -
    -
    Run this command in parallel with additional commands
    -
    -
    - alpha() - - Method in interface com.technototes.library.hardware.sensor.IColorSensor -
    -
    -
    Get the alpha (transparency) of the color
    -
    -
    - analog(int) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - analog(String) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - AnalogBuilder - - Class in - com.technototes.library.hardware2 -
    -
    -
    TODO: Remove this.
    -
    -
    - AnalogBuilder(int) - - Constructor for class com.technototes.library.hardware2.AnalogBuilder -
    -
     
    -
    - AnalogBuilder(AnalogSensor) - - Constructor for class com.technototes.library.hardware2.AnalogBuilder -
    -
     
    -
    - AnalogBuilder(String) - - Constructor for class com.technototes.library.hardware2.AnalogBuilder -
    -
     
    -
    - AnalogSensor - - Class in - com.technototes.library.hardware.sensor -
    -
    -
    Class for analog sensors
    -
    -
    - AnalogSensor(AnalogInput) - - Constructor for class com.technototes.library.hardware.sensor.AnalogSensor -
    -
    -
    Make an analog sensor
    -
    -
    - AnalogSensor(String) - - Constructor for class com.technototes.library.hardware.sensor.AnalogSensor -
    -
    -
    Make an analog sensor
    -
    -
    - andThen(Command...) - - Method in interface com.technototes.library.command.Command -
    -
    -
    Run a command or series of ParallelCommands after this one
    -
    -
    - anyCancelled - - Variable in class com.technototes.library.command.CommandGroup -
    -
    -
    Have *any* of the command list been cancelled
    -
    -
    - apply(UnaryOperator<T>) - - Method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - arcadeDrive(double, double) - - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem -
    -
     
    -
    - argb() - - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor -
    -
     
    -
    - argb() - - Method in class com.technototes.library.hardware.sensor.ColorSensor -
    -
     
    -
    - argb() - - Method in interface com.technototes.library.hardware.sensor.IColorSensor -
    -
     
    -
    - asConditional(BooleanSupplier) - - Method in interface com.technototes.library.command.Command -
    -
    -
    Creates a conditional command out of this
    -
    -
    - at(double) - - Method in class com.technototes.library.hardware2.ServoBuilder -
    -
     
    -
    - AVERAGE - - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority -
    -
     
    -
    - AxisBase - - Class in - com.technototes.library.control -
    -
    -
    The class to extend custom gamepad axis from
    -
    -
    - AxisBase(DoubleSupplier) - - Constructor for class com.technototes.library.control.AxisBase -
    -
    -
    Make a GamepadAxis with the supplier
    -
    -
    - AxisBase(DoubleSupplier, double) - - Constructor for class com.technototes.library.control.AxisBase -
    -
    -
    - Make a GamepadAxis with the supplier and the threshold for the stick to behave as a - button -
    -
    -
    - axisInstance(DoubleSupplier) - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    - Returns the U (extended from AxisBase) type wrapped around a simple DoubleSupplier -
    -
    -
    -

    B

    -
    -
    - b - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the XBox game controller
    -
    -
    - B - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    XBox B button
    -
    -
    - back - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the XBox game controller
    -
    -
    - BACK - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    PS4/XBox Back button
    -
    -
    - Binding<T - extends - BooleanSupplier> - Interface in - com.technototes.library.control -
    -
    -
    Class for bindings to extend
    -
    -
    - Binding.Type - - Enum Class in - com.technototes.library.control -
    -
    -
    Button type
    -
    -
    - BLACK - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - blue() - - Method in interface com.technototes.library.hardware.sensor.IColorSensor -
    -
    -
    Get the RGB blue of the sensor
    -
    -
    - BLUE - - Enum constant in enum class com.technototes.library.util.Alliance -
    -
    -
    BLUE alliance selector
    -
    -
    - BLUE - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - BLUE_CIRCLE - - Static variable in class com.technototes.library.util.Characters -
    -
     
    -
    - BooleanEntry - - Class in - com.technototes.library.logger.entry -
    -
     
    -
    - BooleanEntry(String, Supplier<Boolean>, int, String, String, Color, String, - String, Color, Color) - - Constructor for class com.technototes.library.logger.entry.BooleanEntry -
    -
     
    -
    - booleanSupplier - - Variable in class com.technototes.library.control.ButtonBase -
    -
     
    -
    - brake() - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
     
    -
    - brake() - - Method in class com.technototes.library.hardware.motor.Motor -
    -
    -
    Configure the motor to *brake* when the power is set to zero.
    -
    -
    - brake() - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - build() - - Method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - build() - - Method in class com.technototes.library.hardware2.IMUBuilder -
    -
    -
    Deprecated
    -
    -
    - ButtonBase - - Class in - com.technototes.library.control -
    -
    -
    The class to extend custom gamepad buttons from
    -
    -
    - ButtonBase(BooleanSupplier) - - Constructor for class com.technototes.library.control.ButtonBase -
    -
    -
    Create button with boolean supplier
    -
    -
    - buttonInstance(BooleanSupplier) - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Great a ButtonBase type from the given BooleanSupplier
    -
    -
    - bVal - - Variable in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns -
    -
    -
    The value of the enumeration
    -
    -
    - bVal - - Variable in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns -
    -
    -
    deprecated
    -
    -
    -

    C

    -
    -
    - calculateA(double, double, double, double) - - Method in enum class com.technototes.library.util.Differential.DifferentialPriority -
    -
    -
    - Calculates the value for the differential output generated by averaging -
    -
    -
    - calculateS(double, double, double, double) - - Method in enum class com.technototes.library.util.Differential.DifferentialPriority -
    -
    -
    - Calculates the value for the differential output generated by subtracting -
    -
    -
    - cancel() - - Method in interface com.technototes.library.command.Command -
    -
    -
    - If the command is running, interrupt it such that it can be cancelled -
    -
    -
    - CANCELLED - - Enum constant in enum class com.technototes.library.command.Command.CommandState -
    -
    -
    The command has been cancelled
    -
    -
    - cancelUpon(BooleanSupplier) - - Method in interface com.technototes.library.command.Command -
    -
    -
    - Runs this command until it finishes, or until the condition supplied is true -
    -
    -
    - captionDivider - - Variable in class com.technototes.library.logger.Logger -
    -
    -
    - The divider between the tag and the entry for telemetry (default ':') -
    -
    -
    - Characters - - Class in - com.technototes.library.util -
    -
     
    -
    - Characters() - - Constructor for class com.technototes.library.util.Characters -
    -
     
    -
    - ChoiceCommand - - Class in - com.technototes.library.command -
    -
    -
    - A command that allows choosing among a number of commands based on variety of - conditions -
    -
    -
    - ChoiceCommand(Pair<BooleanSupplier, Command>...) - - Constructor for class com.technototes.library.command.ChoiceCommand -
    -
    -
    - Each pair represents a condition to check, and the command to execute if that - condition is true -
    -
    -
    - ChoiceCommand(BooleanSupplier, Command) - - Constructor for class com.technototes.library.command.ChoiceCommand -
    -
    -
    - This is a simplistic ChoiceCommand that is simply a single conditional command I - *think* this will wwait until b is true -
    -
    -
    - circle - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the PS4 game controller
    -
    -
    - CIRCLE - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    PS4 Circle (O) button
    -
    -
    - clear() - - Static method in interface com.technototes.library.command.Command -
    -
    -
    Clear out the state, time, and requirement maps.
    -
    -
    - close() - - Method in class com.technototes.library.hardware.DummyDevice -
    -
     
    -
    - closestTo(double, double...) - - Static method in class com.technototes.library.util.MathUtils -
    -
    -
    - Returns the value from a list which is closed to the first value. -
    -
    -
    - closestTo(double, int...) - - Static method in class com.technototes.library.util.MathUtils -
    -
    -
    - Returns the value from a list which is closed to the first value. -
    -
    -
    - coast() - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
     
    -
    - coast() - - Method in class com.technototes.library.hardware.motor.Motor -
    -
    -
    Configure the motor to *float* when the power is set to zero.
    -
    -
    - coast() - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - codriverGamepad - - Variable in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Command gamepad objects
    -
    -
    - color - - Variable in class com.technototes.library.logger.entry.Entry -
    -
    -
    Color to display
    -
    -
    - color() - - Element in annotation interface com.technototes.library.logger.Log.Boolean -
    -
    -
    The color for the tag for the boolean
    -
    -
    - color() - - Element in annotation interface com.technototes.library.logger.Log -
    -
    -
    The color for the tag for the entry
    -
    -
    - color() - - Element in annotation interface com.technototes.library.logger.Log.Number -
    -
    -
    The color for the tag for the number
    -
    -
    - color() - - Element in annotation interface com.technototes.library.logger.Log.NumberBar -
    -
    -
    The color for the tag for the bar
    -
    -
    - color() - - Element in annotation interface com.technototes.library.logger.Log.NumberSlider -
    -
    -
    The color for the tag for the slider
    -
    -
    - color(String) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - Color - - Enum Class in - com.technototes.library.util -
    -
    -
    Enum for Colors and some formatting
    -
    -
    - ColorBuilder - - Class in - com.technototes.library.hardware2 -
    -
    -
    TODO: Remove this.
    -
    -
    - ColorBuilder(ColorSensor) - - Constructor for class com.technototes.library.hardware2.ColorBuilder -
    -
     
    -
    - ColorBuilder(String) - - Constructor for class com.technototes.library.hardware2.ColorBuilder -
    -
     
    -
    - ColorDistanceSensor - - Class in - com.technototes.library.hardware.sensor -
    -
     
    -
    - ColorDistanceSensor(ColorRangeSensor) - - Constructor for class com.technototes.library.hardware.sensor.ColorDistanceSensor -
    -
     
    -
    - ColorDistanceSensor(String) - - Constructor for class com.technototes.library.hardware.sensor.ColorDistanceSensor -
    -
     
    -
    - colorRange(String) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - ColorRangeBuilder - - Class in - com.technototes.library.hardware2 -
    -
    -
    TODO: Remove this.
    -
    -
    - ColorRangeBuilder(ColorRangeSensor) - - Constructor for class com.technototes.library.hardware2.ColorRangeBuilder -
    -
     
    -
    - ColorRangeBuilder(String) - - Constructor for class com.technototes.library.hardware2.ColorRangeBuilder -
    -
     
    -
    - ColorSensor - - Class in - com.technototes.library.hardware.sensor -
    -
    -
    Class for color sensors
    -
    -
    - ColorSensor(ColorSensor) - - Constructor for class com.technototes.library.hardware.sensor.ColorSensor -
    -
    -
    Make a color Sensor
    -
    -
    - ColorSensor(String) - - Constructor for class com.technototes.library.hardware.sensor.ColorSensor -
    -
    -
    Make a color sensor
    -
    -
    - com.technototes.library - - package com.technototes.library -
    -
     
    -
    - com.technototes.library.command - - package com.technototes.library.command -
    -
     
    -
    - com.technototes.library.control - - package com.technototes.library.control -
    -
     
    -
    - com.technototes.library.general - - package com.technototes.library.general -
    -
     
    -
    - com.technototes.library.hardware - - package com.technototes.library.hardware -
    -
     
    -
    - com.technototes.library.hardware.motor - - package com.technototes.library.hardware.motor -
    -
     
    -
    - com.technototes.library.hardware.sensor - - package com.technototes.library.hardware.sensor -
    -
     
    -
    - com.technototes.library.hardware.sensor.encoder - - package com.technototes.library.hardware.sensor.encoder -
    -
     
    -
    - com.technototes.library.hardware.servo - - package com.technototes.library.hardware.servo -
    -
     
    -
    - com.technototes.library.hardware2 - - package com.technototes.library.hardware2 -
    -
     
    -
    - com.technototes.library.logger - - package com.technototes.library.logger -
    -
     
    -
    - com.technototes.library.logger.entry - - package com.technototes.library.logger.entry -
    -
     
    -
    - com.technototes.library.structure - - package com.technototes.library.structure -
    -
     
    -
    - com.technototes.library.subsystem - - package com.technototes.library.subsystem -
    -
     
    -
    - com.technototes.library.subsystem.drivebase - - package com.technototes.library.subsystem.drivebase -
    -
     
    -
    - com.technototes.library.subsystem.motor - - package com.technototes.library.subsystem.motor -
    -
     
    -
    - com.technototes.library.subsystem.servo - - package com.technototes.library.subsystem.servo -
    -
     
    -
    - com.technototes.library.util - - package com.technototes.library.util -
    -
     
    -
    - Command - - Interface in - com.technototes.library.command -
    -
    -
    The root Command class
    -
    -
    - Command.CommandState - - Enum Class in - com.technototes.library.command -
    -
    -
    The command state enum
    -
    -
    - CommandAxis - - Class in - com.technototes.library.control -
    -
    -
    Class for command axis for the gamepad
    -
    -
    - CommandAxis(DoubleSupplier) - - Constructor for class com.technototes.library.control.CommandAxis -
    -
    -
    Make a command axis
    -
    -
    - CommandAxis(DoubleSupplier, double) - - Constructor for class com.technototes.library.control.CommandAxis -
    -
    -
    Make a command axis
    -
    -
    - CommandBase - - Class in - com.technototes.library.command -
    -
    -
    Deprecated.
    -
    -
    - CommandBase() - - Constructor for class com.technototes.library.command.CommandBase -
    -
    -
    Deprecated.
    -   -
    -
    - CommandBinding - - Class in - com.technototes.library.control -
    -
    -
    - Command implementation of - Binding -
    -
    -
    - CommandBinding(Binding.Type, CommandInput...) - - Constructor for class com.technototes.library.control.CommandBinding -
    -
     
    -
    - CommandBinding(CommandInput...) - - Constructor for class com.technototes.library.control.CommandBinding -
    -
     
    -
    - CommandButton - - Class in - com.technototes.library.control -
    -
    -
    Class for command buttons for gamepad
    -
    -
    - CommandButton(BooleanSupplier) - - Constructor for class com.technototes.library.control.CommandButton -
    -
    -
    Make command button
    -
    -
    - CommandGamepad - - Class in - com.technototes.library.control -
    -
    -
    Class for command gamepads that specifies class params
    -
    -
    - CommandGamepad(Gamepad) - - Constructor for class com.technototes.library.control.CommandGamepad -
    -
    -
    Make command gamepad
    -
    -
    - CommandGroup - - Class in - com.technototes.library.command -
    -
    -
    - Root class for all command groups (Sequential, Parallel, etc...) WARNING: You - probably will be better served by the specific CommandGroup subclasses, rather than - using this one directly. -
    -
    -
    - CommandGroup(boolean, Command...) - - Constructor for class com.technototes.library.command.CommandGroup -
    -
    -
    Create a command group with commands
    -
    -
    - CommandInput<T - extends - ButtonBase> - Interface in - com.technototes.library.control -
    -
    -
    Class for gamepad-command integration
    -
    -
    - commandMap - - Variable in class com.technototes.library.command.CommandGroup -
    -
    -
    This is a map from the command to whether it has been run
    -
    -
    - CommandOpMode - - Class in - com.technototes.library.structure -
    -
    -
    Class for command based op modes
    -
    -
    - CommandOpMode() - - Constructor for class com.technototes.library.structure.CommandOpMode -
    -
     
    -
    - CommandOpMode.OpModeState - - Enum Class in - com.technototes.library.structure -
    -
    -
    Enum for op mode state
    -
    -
    - CommandScheduler - - Class in - com.technototes.library.command -
    -
    -
    This is a "singleton" object for scheduling commands.
    -
    -
    - completeBarColor() - - Element in annotation interface com.technototes.library.logger.Log.NumberBar -
    -
    -
    The color for the filled in bar color
    -
    -
    - ConditionalCommand - - Class in - com.technototes.library.command -
    -
    -
    - Simple class for commands that require a certain condition to be true to run -
    -
    -
    - ConditionalCommand(BooleanSupplier) - - Constructor for class com.technototes.library.command.ConditionalCommand -
    -
    -
    This makes a "wait" command
    -
    -
    - ConditionalCommand(BooleanSupplier, Command) - - Constructor for class com.technototes.library.command.ConditionalCommand -
    -
    -
    Make a conditional command
    -
    -
    - ConditionalCommand(BooleanSupplier, Command, Command) - - Constructor for class com.technototes.library.command.ConditionalCommand -
    -
    -
    Make a conditional command
    -
    -
    - constrain(double, double, double) - - Static method in class com.technototes.library.util.MathUtils -
    -
    -
    - Deprecated.  -
    -
    -
    - constrain(int, int, int) - - Static method in class com.technototes.library.util.MathUtils -
    -
    -
    - Deprecated.  -
    -
    -
    - Constraints(double, double, double) - - Constructor for class com.technototes.library.hardware.servo.ServoProfiler.Constraints -
    -
     
    -
    - consume(T) - - Method in interface com.technototes.library.util.SmartConsumer -
    -
    -
    The 'consume' function
    -
    -
    - countCancel - - Variable in class com.technototes.library.command.CommandGroup -
    -
    -
    Should a cancelled command be considered 'finished'
    -
    -
    - countCancel() - - Method in class com.technototes.library.command.CommandGroup -
    -
    -
    - Specify that this CommandGroup should count a cancellation as 'completed' -
    -
    -
    - create(int) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - create(Command, Subsystem...) - - Static method in interface com.technototes.library.command.Command -
    -
    -
    - This is a helper to create a new command from an existing command, but with - additional subsystem requirements -
    -
    -
    - create(String) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - cross - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the PS4 game controller
    -
    -
    - CROSS - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    PS4 Cross (X) button
    -
    -
    - crServo(int) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - crServo(String) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - CRServoBuilder - - Class in - com.technototes.library.hardware2 -
    -
    -
    TODO: Remove this.
    -
    -
    - CRServoBuilder(int) - - Constructor for class com.technototes.library.hardware2.CRServoBuilder -
    -
     
    -
    - CRServoBuilder(CRServo) - - Constructor for class com.technototes.library.hardware2.CRServoBuilder -
    -
     
    -
    - CRServoBuilder(String) - - Constructor for class com.technototes.library.hardware2.CRServoBuilder -
    -
     
    -
    - CYAN - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - CYCLE - - Static variable in class com.technototes.library.util.Characters -
    -
     
    -
    -

    D

    -
    -
    - DARK_GRAY - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - deadline(Command...) - - Method in interface com.technototes.library.command.Command -
    -
    -
    - Runs all the commands specified in parallel *until this command is completed* -
    -
    -
    - DEFAULT_TRIGGER_THRESHOLD - - Static variable in class com.technototes.library.control.AxisBase -
    -
    -
    The default trigger threshold
    -
    -
    - degrees() - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Set angle format to degrees
    -
    -
    - degrees() - - Method in class com.technototes.library.hardware2.IMUBuilder -
    -
    -
    Deprecated
    -
    -
    - device - - Variable in class com.technototes.library.hardware.HardwareDevice -
    -
    -
    Deprecated.
    -   -
    -
    - device - - Variable in class com.technototes.library.subsystem.DeviceSubsystem -
    -
     
    -
    - DeviceSubsystem<T - extends - HardwareDevice<?>> - Class in - com.technototes.library.subsystem -
    -
    -
    class for subsystems
    -
    -
    - DeviceSubsystem(T) - - Constructor for class com.technototes.library.subsystem.DeviceSubsystem -
    -
    -
    Create a subsystem
    -
    -
    - DIFFERENCE - - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority -
    -
     
    -
    - Differential - - Class in - com.technototes.library.util -
    -
     
    -
    - Differential(DoubleConsumer, DoubleConsumer) - - Constructor for class com.technototes.library.util.Differential -
    -
    -
    Create differential from two consumers
    -
    -
    - Differential(DoubleConsumer, DoubleConsumer, Differential.DifferentialPriority) - - Constructor for class com.technototes.library.util.Differential -
    -
    -
    Create differential from two consumers
    -
    -
    - Differential.DifferentialPriority - - Enum Class in - com.technototes.library.util -
    -
    -
    Enum for the priority of the differential.
    -
    -
    - digital(int) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - digital(String) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - DigitalBuilder - - Class in - com.technototes.library.hardware2 -
    -
    -
    TODO: Remove this.
    -
    -
    - DigitalBuilder(int) - - Constructor for class com.technototes.library.hardware2.DigitalBuilder -
    -
    -
    Don't use this in the future
    -
    -
    - DigitalBuilder(DigitalChannel) - - Constructor for class com.technototes.library.hardware2.DigitalBuilder -
    -
    -
    Don't use this in the future
    -
    -
    - DigitalBuilder(String) - - Constructor for class com.technototes.library.hardware2.DigitalBuilder -
    -
    -
    Don't use this in the future
    -
    -
    - DigitalSensor - - Class in - com.technototes.library.hardware.sensor -
    -
    -
    Class for digital sensors
    -
    -
    - DigitalSensor(DigitalChannel) - - Constructor for class com.technototes.library.hardware.sensor.DigitalSensor -
    -
    -
    Make a digital sensor
    -
    -
    - DigitalSensor(String) - - Constructor for class com.technototes.library.hardware.sensor.DigitalSensor -
    -
    -
    Make a digital sensor
    -
    -
    - direction(DcMotorSimple.Direction) - - Method in class com.technototes.library.hardware2.CRServoBuilder -
    -
     
    -
    - direction(DcMotorSimple.Direction) - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - direction(Servo.Direction) - - Method in class com.technototes.library.hardware2.ServoBuilder -
    -
     
    -
    - disable() - - Method in class com.technototes.library.control.CommandGamepad -
    -
     
    -
    - disable() - - Method in interface com.technototes.library.general.Enablable -
    -
    -
    Disable the object
    -
    -
    - disable() - - Method in class com.technototes.library.hardware2.ColorRangeBuilder -
    -
     
    -
    - disable() - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - distance(String) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - DistanceBuilder - - Class in - com.technototes.library.hardware2 -
    -
    -
    TODO: Remove this.
    -
    -
    - DistanceBuilder(DistanceSensor) - - Constructor for class com.technototes.library.hardware2.DistanceBuilder -
    -
     
    -
    - DistanceBuilder(String) - - Constructor for class com.technototes.library.hardware2.DistanceBuilder -
    -
     
    -
    - doubleSupplier - - Variable in class com.technototes.library.control.AxisBase -
    -
     
    -
    - down - - Variable in class com.technototes.library.control.GamepadDpad -
    -
    -
    The objects for the dpad buttons
    -
    -
    - dpad - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The dpad object
    -
    -
    - dpadDown - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    - dpadLeft - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    - dpadRight - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    - dpadUp - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    - drive(double, double) - - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem -
    -
     
    -
    - drive(double, double, double) - - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem -
    -
     
    -
    - drive(double, double, double, double) - - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem -
    -
     
    -
    - DrivebaseSubsystem<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in - com.technototes.library.subsystem.drivebase -
    -
    -
    Class for DriveBase subsystems
    -
    -
    - DrivebaseSubsystem(Motor<T>...) - - Constructor for class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem -
    -
    -
    Create a drivebase subsystem
    -
    -
    - DrivebaseSubsystem(DoubleSupplier, Motor<T>...) - - Constructor for class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem -
    -
    -
    Create a drivebase subsystem
    -
    -
    - driverGamepad - - Variable in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Command gamepad objects
    -
    -
    - DUCK - - Static variable in class com.technototes.library.util.Characters -
    -
     
    -
    - DummyDevice<T> - Class in - com.technototes.library.hardware -
    -
    -
    This isn't worth actually doing.
    -
    -
    - DummyDevice(T) - - Constructor for class com.technototes.library.hardware.DummyDevice -
    -
     
    -
    - duringInit() - - Element in annotation interface com.technototes.library.logger.LogConfig.Run -
    -
    -
    Run the log during the init Period
    -
    -
    - duringRun() - - Element in annotation interface com.technototes.library.logger.LogConfig.Run -
    -
    -
    Run the log during the teleop Period
    -
    -
    -

    E

    -
    -
    - Enablable<T - extends - Enablable<T>> - Interface in - com.technototes.library.general -
    -
    -
    Interface for anything that can be enabled/disabled
    -
    -
    - enable() - - Method in class com.technototes.library.control.CommandGamepad -
    -
     
    -
    - enable() - - Method in interface com.technototes.library.general.Enablable -
    -
    -
    Enable the object
    -
    -
    - enable() - - Method in class com.technototes.library.hardware2.ColorRangeBuilder -
    -
     
    -
    - enable() - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - EncodedMotor<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in - com.technototes.library.hardware.motor -
    -
    -
    Class for encoded motors
    -
    -
    - EncodedMotor(String) - - Constructor for class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Make encoded motor, with the default encoder configured
    -
    -
    - EncodedMotor(String, Encoder) - - Constructor for class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Make encoded motor
    -
    -
    - EncodedMotor(T) - - Constructor for class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Make encoded motor, with the default encoder configured
    -
    -
    - EncodedMotor(T, Encoder) - - Constructor for class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Make encoded motor
    -
    -
    - EncodedMotorGroup<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in - com.technototes.library.hardware.motor -
    -
    -
    Class for encoded motor groups
    -
    -
    - EncodedMotorGroup(EncodedMotor<T>, Motor<T>...) - - Constructor for class com.technototes.library.hardware.motor.EncodedMotorGroup -
    -
    -
    Create an encoded motor groupM
    -
    -
    - EncodedMotorSubsystem - - Class in - com.technototes.library.subsystem.motor -
    -
    -
    Class for encoded motor subsystems
    -
    -
    - EncodedMotorSubsystem(EncodedMotor<?>) - - Constructor for class com.technototes.library.subsystem.motor.EncodedMotorSubsystem -
    -
    -
    Create encoded motor subsystem
    -
    -
    - Encoder - - Interface in - com.technototes.library.hardware.sensor.encoder -
    -
    -
    Interfaces for encoders to use
    -
    -
    - end() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Runs once when op mode is ended
    -
    -
    - end(boolean) - - Method in interface com.technototes.library.command.Command -
    -
    -
    End the command
    -
    -
    - end(boolean) - - Method in class com.technototes.library.command.CommandGroup -
    -
    -
    This stops the command group from executing
    -
    -
    - END - - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState -
    -
     
    -
    - Entry<T> - Class in - com.technototes.library.logger.entry -
    -
    -
    The root class for logging entries
    -
    -
    - Entry(String, Supplier<T>, int, Color) - - Constructor for class com.technototes.library.logger.entry.Entry -
    -
    -
    Create an entry with name, value, index, and color
    -
    -
    - entryColor() - - Element in annotation interface com.technototes.library.logger.Log -
    -
    -
    The color for the entry
    -
    -
    - execute() - - Method in interface com.technototes.library.command.Command -
    -
    -
    Execute the command
    -
    -
    - execute() - - Method in class com.technototes.library.command.CommandBase -
    -
    -
    Deprecated.
    -
    Execute the command
    -
    -
    - execute() - - Method in class com.technototes.library.command.CommandGroup -
    -
     
    -
    - execute() - - Method in class com.technototes.library.command.ConditionalCommand -
    -
     
    -
    - execute() - - Method in class com.technototes.library.command.WaitCommand -
    -
     
    -
    - EXECUTING - - Enum constant in enum class com.technototes.library.command.Command.CommandState -
    -
    -
    The command is running normally
    -
    -
    - expandedPWM() - - Method in class com.technototes.library.hardware2.ServoBuilder -
    -
     
    -
    - expandedRange() - - Method in class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -   -
    -
    - ExternalEncoder - - Class in - com.technototes.library.hardware.sensor.encoder -
    -
    -
    - A wrapper around an AnalogInput that enables "zeroing" for usefulness -
    -
    -
    - ExternalEncoder(AnalogInput) - - Constructor for class com.technototes.library.hardware.sensor.encoder.ExternalEncoder -
    -
    -
    Create an ExternalEncoder from an arbitrary AnalogInput
    -
    -
    - ExternalEncoder(String) - - Constructor for class com.technototes.library.hardware.sensor.encoder.ExternalEncoder -
    -
    -
    - Create an ExternalEncoder from an arbitrary AnalogInput device -
    -
    -
    -

    F

    -
    -
    - falseColor() - - Element in annotation interface com.technototes.library.logger.Log.Boolean -
    -
    -
    The color for the false String
    -
    -
    - falseFormat() - - Element in annotation interface com.technototes.library.logger.Log.Boolean -
    -
    -
    The format for when the boolean returns false
    -
    -
    - falseValue() - - Element in annotation interface com.technototes.library.logger.Log.Boolean -
    -
    -
    Store the string when the annotated method returns false
    -
    -
    - FINISHED - - Enum constant in enum class com.technototes.library.command.Command.CommandState -
    -
    -
    The command has completed successfully
    -
    -
    - flMotor - - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem -
    -
    -
    Drive motors
    -
    -
    - format() - - Element in annotation interface com.technototes.library.logger.Log -
    -
    -
    The format for the logged String
    -
    -
    - format(Object) - - Method in enum class com.technototes.library.util.Color -
    -
    -
    Format the supplied object with the HTML to become this color
    -
    -
    - format(String, Object...) - - Method in enum class com.technototes.library.util.Color -
    -
    -
    - Format the supplied object with the HTML and a format String to become this color -
    -
    -
    - forward() - - Method in class com.technototes.library.hardware2.CRServoBuilder -
    -
     
    -
    - forward() - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - forward() - - Method in class com.technototes.library.hardware2.ServoBuilder -
    -
     
    -
    - FORWARD - - Enum constant in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction -
    -
     
    -
    - frMotor - - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem -
    -
    -
    Drive motors
    -
    -
    -

    G

    -
    -
    - gain(float) - - Method in class com.technototes.library.hardware2.ColorRangeBuilder -
    -
     
    -
    - GAMEPAD - - Static variable in class com.technototes.library.util.Characters -
    -
     
    -
    - gamepad1 - - Variable in class com.technototes.library.structure.CommandOpMode -
    -
     
    -
    - gamepad2 - - Variable in class com.technototes.library.structure.CommandOpMode -
    -
     
    -
    - GamepadBase<T - extends - ButtonBase,U - extends - AxisBase> - Class in - com.technototes.library.control -
    -
    -
    - A class to extend gamepads from, it does the internal processing for you. -
    -
    -
    - GamepadBase(Gamepad, Class<T>, Class<U>) - - Constructor for class com.technototes.library.control.GamepadBase -
    -
    -
    Creates a gamepad with these parameters
    -
    -
    - GamepadBase.Axis - - Enum Class in - com.technototes.library.control -
    -
    -
    Axis enum for all axis on gamepad
    -
    -
    - GamepadBase.Button - - Enum Class in - com.technototes.library.control -
    -
    -
    Button enum for all buttons on gamepad
    -
    -
    - GamepadDpad<T - extends - ButtonBase> - Class in - com.technototes.library.control -
    -
    -
    A class for dpads
    -
    -
    - GamepadDpad(T, T, T, T) - - Constructor for class com.technototes.library.control.GamepadDpad -
    -
    -
    Create dpad with 4 buttons
    -
    -
    - GamepadStick<T - extends - AxisBase,U - extends - ButtonBase> - Class in - com.technototes.library.control -
    -
    -
    A class for gamepad sticks
    -
    -
    - GamepadStick(T, T, U) - - Constructor for class com.technototes.library.control.GamepadStick -
    -
    -
    Make a gamepad stick
    -
    -
    - get() - - Method in interface com.technototes.library.command.Command -
    -
    -
    - Gets the current state of the command (Supplier<CommandState>) -
    -
    -
    - get() - - Method in interface com.technototes.library.control.Binding -
    -
     
    -
    - get() - - Method in class com.technototes.library.hardware.DummyDevice -
    -
     
    -
    - get() - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
     
    -
    - get() - - Method in class com.technototes.library.hardware.motor.Motor -
    -
    -
    - Gets the *speed* of the motor when it's used as a DoubleSupplier -
    -
    -
    - get() - - Method in class com.technototes.library.logger.entry.Entry -
    -
     
    -
    - get(Binding.Type) - - Method in interface com.technototes.library.control.Binding -
    -
    -
    Get this as boolean for the type
    -
    -
    - get(Class<? extends OpMode>) - - Static method in enum class com.technototes.library.util.Alliance -
    -
    -
    - Get the alliance set for the OpMode passed in, if it's set in the annotation -
    -
    -
    - getAllDeviceList() - - Method in interface com.technototes.library.hardware.HardwareDeviceGroup -
    -
    -
    Deprecated.
    -   -
    -
    - getAllDevices() - - Method in interface com.technototes.library.hardware.HardwareDeviceGroup -
    -
    -
    Deprecated.
    -
    Get all devices in group
    -
    -
    - getAllDevices() - - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup -
    -
     
    -
    - getAllDevices() - - Method in class com.technototes.library.hardware.motor.MotorGroup -
    -
     
    -
    - getAllDevices() - - Method in class com.technototes.library.hardware.servo.ServoGroup -
    -
    -
    Deprecated.
    -   -
    -
    - getAngle() - - Method in interface com.technototes.library.control.Stick -
    -
    -
    Returns the angle of the stick
    -
    -
    - getAngularOrientation() - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
     
    -
    - getAngularOrientation(AngleUnit) - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Gets the Angular orientation of the IMU
    -
    -
    - getAngularVelocity() - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
     
    -
    - getAngularVelocity(AngleUnit) - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Gets the angular velocity (in default units)
    -
    -
    - getAsBoolean() - - Method in interface com.technototes.library.control.Binding -
    -
     
    -
    - getAsBoolean() - - Method in class com.technototes.library.control.ButtonBase -
    -
    -
    Same as isPressed()
    -
    -
    - getAsButton() - - Method in class com.technototes.library.control.CommandAxis -
    -
     
    -
    - getAsButton(double) - - Method in class com.technototes.library.control.CommandAxis -
    -
     
    -
    - getAsDouble() - - Method in class com.technototes.library.control.AxisBase -
    -
    -
    Returns the double from the axis
    -
    -
    - getAsDouble() - - Method in interface com.technototes.library.hardware.Sensored -
    -
    -
    Deprecated.
    -   -
    -
    - getAverage() - - Method in class com.technototes.library.util.Differential -
    -
    -
    - Gets the current average of the two differential inputs, equating to one of the - outputs -
    -
    -
    - getAxis(GamepadBase.Axis) - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Returns an axis
    -
    -
    - getAxisAsBoolean(GamepadBase.Axis) - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Returns an axis as boolean
    -
    -
    - getAxisAsDouble(GamepadBase.Axis) - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Returns an axis as double
    -
    -
    - getButton(GamepadBase.Button) - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Returns a button
    -
    -
    - getButtonAsBoolean(GamepadBase.Button) - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Returns a button as boolean (same as isPressed)
    -
    -
    - getColor() - - Method in enum class com.technototes.library.util.Alliance -
    -
    -
    Get the alliance color (Red, Blue, or Black)
    -
    -
    - getConnectionInfo() - - Method in class com.technototes.library.hardware.DummyDevice -
    -
     
    -
    - getCorrectedVelocity() - - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - getCurrent(Subsystem) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    This gets the command currently using the subsystem provided
    -
    -
    - getCurrentPosition() - - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - getCurrentPosition() - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - getCurrentSong() - - Method in class com.technototes.library.hardware.Speaker -
    -
    -
    Deprecated.
    -   -
    -
    - getDefault(Subsystem) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Get the default command that is running on the subsystem provided -
    -
    -
    - getDefaultCommand() - - Method in interface com.technototes.library.subsystem.Subsystem -
    -
     
    -
    - getDefaultType() - - Method in interface com.technototes.library.control.Binding -
    -
     
    -
    - getDefaultType() - - Method in class com.technototes.library.control.CommandBinding -
    -
     
    -
    - getDeviation() - - Method in class com.technototes.library.util.Differential -
    -
    -
    - Gets the current deviation between the two differential inputs and the average, - equating to one of the outputs -
    -
    -
    - getDevice() - - Method in class com.technototes.library.hardware.HardwareDevice -
    -
    -
    Deprecated.
    -
    Get encapsulated device
    -
    -
    - getDevice() - - Method in class com.technototes.library.subsystem.DeviceSubsystem -
    -
    -
    Get the devices for this subsystem
    -
    -
    - getDeviceName() - - Method in class com.technototes.library.hardware.DummyDevice -
    -
     
    -
    - getDifferentialPriority() - - Method in class com.technototes.library.util.Differential -
    -
    -
    Gets the priority for the difference output.
    -
    -
    - getDirection() - - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - getDistance() - - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor -
    -
     
    -
    - getDistance(DistanceUnit) - - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor -
    -
     
    -
    - getDistance(DistanceUnit) - - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor -
    -
     
    -
    - getDistance(DistanceUnit) - - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor -
    -
    -
    Deprecated.
    -
    Get the value with a specified distance Unit
    -
    -
    - getDistanceFromCenter() - - Method in interface com.technototes.library.control.Stick -
    -
    -
    Returns the stick's distance from the center
    -
    -
    - getDouble() - - Method in class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    - getDpad() - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Returns the Dpad object
    -
    -
    - getEncoder() - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Get the encoder object
    -
    -
    - getFollowerist() - - Method in interface com.technototes.library.hardware.HardwareDeviceGroup -
    -
    -
    Deprecated.
    -   -
    -
    - getFollowers() - - Method in interface com.technototes.library.hardware.HardwareDeviceGroup -
    -
    -
    Deprecated.
    -
    Get the followers for the lead device
    -
    -
    - getFollowers() - - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup -
    -
     
    -
    - getFollowers() - - Method in class com.technototes.library.hardware.motor.MotorGroup -
    -
     
    -
    - getFollowers() - - Method in class com.technototes.library.hardware.servo.ServoGroup -
    -
    -
    Deprecated.
    -   -
    -
    - getGamepad() - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Returns the encapsulated gamepad
    -
    -
    - getGyro() - - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem -
    -
    -
    Get the Gyro angle
    -
    -
    - getHexValue() - - Method in enum class com.technototes.library.util.Color -
    -
    -
    Get the hex value
    -
    -
    - getIndex() - - Method in class com.technototes.library.logger.entry.Entry -
    -
    -
    Get the index for the entry
    -
    -
    - getInstance() - - Static method in class com.technototes.library.command.CommandScheduler -
    -
    -
    Get (or create) the singleton CommandScheduler object
    -
    -
    - getInstance() - - Method in class com.technototes.library.control.CommandAxis -
    -
     
    -
    - getInstance() - - Method in class com.technototes.library.control.CommandButton -
    -
     
    -
    - getInstance() - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    Return instance of class parameter
    -
    -
    - getInverted() - - Method in class com.technototes.library.control.ButtonBase -
    -
     
    -
    - getInverted() - - Method in interface com.technototes.library.general.Invertable -
    -
    -
    Get current inversion
    -
    -
    - getInverted() - - Method in class com.technototes.library.hardware.motor.Motor -
    -
    -
    Returns whether the motor is inverted.
    -
    -
    - getInverted() - - Method in class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -   -
    -
    - getLast() - - Method in interface com.technototes.library.util.SmartConsumer -
    -
     
    -
    - getLeftStick() - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Returns the left stick
    -
    -
    - getLight() - - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor -
    -
     
    -
    - getLogger() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Get the op mode's logger
    -
    -
    - getManufacturer() - - Method in class com.technototes.library.hardware.DummyDevice -
    -
     
    -
    - getMap() - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
     
    -
    - getMax(double...) - - Static method in class com.technototes.library.util.MathUtils -
    -
    -
    Get the max of supplied doubles
    -
    -
    - getMax(int...) - - Static method in class com.technototes.library.util.MathUtils -
    -
    -
    Get the max of supplied ints
    -
    -
    - getMaxAccel() - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - getMaxAcceleration() - - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints -
    -
     
    -
    - getMaxVel() - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - getMaxVelocity() - - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints -
    -
     
    -
    - getMultiplier() - - Method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction -
    -
     
    -
    - getName() - - Method in class com.technototes.library.logger.entry.Entry -
    -
    -
    Get the name (unformatted tag)
    -
    -
    - getOpModeRuntime() - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    Gets the number of seconds that the opmode has been executing
    -
    -
    - getOpModeRuntime() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Get the opmode runtime
    -
    -
    - getOpModeState() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Get op mode state
    -
    -
    - getPosition() - - Method in interface com.technototes.library.hardware.sensor.encoder.Encoder -
    -
     
    -
    - getPosition() - - Method in class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -
    Get servo position
    -
    -
    - getPosition() - - Method in class com.technototes.library.subsystem.servo.ServoSubsystem -
    -
    -
    Get subsystem servo position
    -
    -
    - getPriority() - - Method in class com.technototes.library.logger.entry.Entry -
    -
    -
    Get Priority for the entry
    -
    -
    - getProportion() - - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints -
    -
     
    -
    - getRawVelocity() - - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - getRequirements() - - Method in interface com.technototes.library.command.Command -
    -
    -
    Return the subsystem requirements for this command
    -
    -
    - getRightStick() - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Returns the right stick
    -
    -
    - getRuntime() - - Method in interface com.technototes.library.command.Command -
    -
    -
    - Return the amount of time since the command was first initialized -
    -
    -
    - getScale(double...) - - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem -
    -
    -
    - This will give you a *positive* value to scale the value to such that the largest - value of the list will be |1| (negative or positive). -
    -
    -
    - getSeconds() - - Method in class com.technototes.library.command.WaitCommand -
    -
     
    -
    - getSensorValue() - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Get the encoder position value
    -
    -
    - getSensorValue() - - Method in class com.technototes.library.hardware.sensor.AnalogSensor -
    -
     
    -
    - getSensorValue() - - Method in class com.technototes.library.hardware.sensor.encoder.ExternalEncoder -
    -
    -
    Get the sensor value (relative to the assigned zero)
    -
    -
    - getSensorValue() - - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - getSensorValue() - - Method in interface com.technototes.library.hardware.Sensored -
    -
    -
    Deprecated.
    -
    Get the sensor value
    -
    -
    - getSensorValue() - - Method in class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -   -
    -
    - getServo() - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - getSpeed() - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Gets the power set for the motor
    -
    -
    - getSpeed() - - Method in class com.technototes.library.hardware.motor.Motor -
    -
    -
    Gets the power value for the motor
    -
    -
    - getSpeed() - - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem -
    -
    -
    Override this one, I guess? Not sure how useful it is.
    -
    -
    - getSpeed() - - Method in class com.technototes.library.subsystem.motor.MotorSubsystem -
    -
    -
    Get the speed of the motors in the subsystem
    -
    -
    - getState() - - Method in interface com.technototes.library.command.Command -
    -
    -
    Return the command state: Probably don't use this
    -
    -
    - getSuppliers() - - Method in interface com.technototes.library.control.Binding -
    -
     
    -
    - getSuppliers() - - Method in class com.technototes.library.control.CommandBinding -
    -
     
    -
    - getTag() - - Method in class com.technototes.library.logger.entry.Entry -
    -
    -
    The tag for the entry
    -
    -
    - getTargetPosition() - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - getTargetTolerance() - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - getTriggerThreshold() - - Method in class com.technototes.library.control.AxisBase -
    -
    -
    Gets the trigger threshold
    -
    -
    - getUnit() - - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor -
    -
     
    -
    - getUnit() - - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor -
    -
     
    -
    - getUnit() - - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor -
    -
    -
    Deprecated.
    -
    Get the current distance unit
    -
    -
    - getValue() - - Method in class com.technototes.library.hardware.sensor.DigitalSensor -
    -
    -
    Get the sensor value as a boolean
    -
    -
    - getValue() - - Method in class com.technototes.library.util.Integral -
    -
    -
    Get the current accumulation
    -
    -
    - getVelocity() - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Get the power for the motor (Velocity, I guess?)
    -
    -
    - getVersion() - - Method in class com.technototes.library.hardware.DummyDevice -
    -
     
    -
    - getVersion() - - Static method in class com.technototes.library.RobotLibrary -
    -
    -
    Get library version
    -
    -
    - getVolume() - - Method in class com.technototes.library.hardware.Speaker -
    -
    -
    Deprecated.
    -   -
    -
    - getXAxis() - - Method in class com.technototes.library.control.GamepadDpad -
    -
    -
    Return x axis double (treating dpad as stick)
    -
    -
    - getXAxis() - - Method in class com.technototes.library.control.GamepadStick -
    -
     
    -
    - getXAxis() - - Method in interface com.technototes.library.control.Stick -
    -
    -
    Return x axis double
    -
    -
    - getXSupplier() - - Method in interface com.technototes.library.control.Stick -
    -
    -
    Return x axis supplier
    -
    -
    - getYAxis() - - Method in class com.technototes.library.control.GamepadDpad -
    -
    -
    Return y axis double (treating dpad as stick)
    -
    -
    - getYAxis() - - Method in class com.technototes.library.control.GamepadStick -
    -
     
    -
    - getYAxis() - - Method in interface com.technototes.library.control.Stick -
    -
    -
    Return y axis double
    -
    -
    - getYSupplier() - - Method in interface com.technototes.library.control.Stick -
    -
    -
    Return y axis supplier
    -
    -
    - green() - - Method in interface com.technototes.library.hardware.sensor.IColorSensor -
    -
    -
    Get the RGB green of the sensor
    -
    -
    - GREEN - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - gyroHeading() - - Method in interface com.technototes.library.hardware.sensor.IGyro -
    -
    -
    The heading (in default units)
    -
    -
    - gyroHeading() - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Get gyro heading
    -
    -
    - gyroHeading(AngleUnit) - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Get the gyro heading in the provided units
    -
    -
    - gyroHeadingInDegrees() - - Method in interface com.technototes.library.hardware.sensor.IGyro -
    -
    -
    The heading (in degrees)
    -
    -
    - gyroHeadingInDegrees() - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Gets the gyro heading in degrees
    -
    -
    - gyroHeadingInRadians() - - Method in interface com.technototes.library.hardware.sensor.IGyro -
    -
    -
    The heading (in radians)
    -
    -
    - gyroHeadingInRadians() - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Gets the gyro heading in radians
    -
    -
    - gyroSupplier - - Variable in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem -
    -
    -
    Override this to get the gyroscope heading.
    -
    -
    -

    H

    -
    -
    - HardwareBuilder<T> - Class in - com.technototes.library.hardware2 -
    -
    -
    TODO: Remove this.
    -
    -
    - HardwareBuilder(int) - - Constructor for class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - HardwareBuilder(String) - - Constructor for class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - HardwareBuilder(T) - - Constructor for class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - HardwareDevice<T - extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in - com.technototes.library.hardware -
    -
    -
    Deprecated.
    -
    -
    - HardwareDevice(String) - - Constructor for class com.technototes.library.hardware.HardwareDevice -
    -
    -
    Deprecated.
    -
    - Make a hardware device with the string to get from hardwaremap -
    -
    -
    - HardwareDevice(T) - - Constructor for class com.technototes.library.hardware.HardwareDevice -
    -
    -
    Deprecated.
    -
    Make a hardware device
    -
    -
    - HardwareDeviceGroup<T - extends - HardwareDevice> - Interface in - com.technototes.library.hardware -
    -
    -
    Deprecated.
    -
    -
    - hardwareMap - - Variable in class com.technototes.library.structure.CommandOpMode -
    -
     
    -
    - hardwareMap - - Static variable in class com.technototes.library.hardware.HardwareDevice -
    -
    -
    Deprecated.
    -
    Hardware map object for stuff
    -
    -
    - hsv() - - Method in interface com.technototes.library.hardware.sensor.IColorSensor -
    -
    -
    Get HSV as an int
    -
    -
    - hsvArray() - - Method in interface com.technototes.library.hardware.sensor.IColorSensor -
    -
     
    -
    - hue() - - Method in interface com.technototes.library.hardware.sensor.IColorSensor -
    -
    -
    Get HSV hue
    -
    -
    -

    I

    -
    -
    - IColorSensor - - Interface in - com.technototes.library.hardware.sensor -
    -
     
    -
    - IDistanceSensor - - Interface in - com.technototes.library.hardware.sensor -
    -
     
    -
    - idle(DcMotor.ZeroPowerBehavior) - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - ignoreCancel() - - Method in class com.technototes.library.command.CommandGroup -
    -
    -
    - Specify that this CommandGroup should NOT count cancellation as 'completed' -
    -
    -
    - IGyro - - Interface in - com.technototes.library.hardware.sensor -
    -
    -
    An interface for a single-angle gyroscope
    -
    -
    - ILightSensor - - Interface in - com.technototes.library.hardware.sensor -
    -
     
    -
    - imu(String) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - IMU - - Class in - com.technototes.library.hardware.sensor -
    -
    -
    - Class for the IMU (Inertial Movement Units) that implements the IGyro interface -
    -
    -
    - IMU(IMU, RevHubOrientationOnRobot.LogoFacingDirection, - RevHubOrientationOnRobot.UsbFacingDirection) - - Constructor for class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Make an imu
    -
    -
    - IMU(IMU, IMU.Parameters) - - Constructor for class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Make an imu
    -
    -
    - IMU(String, RevHubOrientationOnRobot.LogoFacingDirection, - RevHubOrientationOnRobot.UsbFacingDirection) - - Constructor for class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Make an imu
    -
    -
    - IMU(String, IMU.Parameters) - - Constructor for class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Make an imu
    -
    -
    - IMU.AxesSigns - - Enum Class in - com.technototes.library.hardware.sensor -
    -
    -
    The direction of the axes signs when remapping the axes
    -
    -
    - IMUBuilder - - Class in - com.technototes.library.hardware2 -
    -
    -
    TODO: Remove this.
    -
    -
    - IMUBuilder(BNO055IMUImpl) - - Constructor for class com.technototes.library.hardware2.IMUBuilder -
    -
    -
    Deprecated
    -
    -
    - IMUBuilder(String) - - Constructor for class com.technototes.library.hardware2.IMUBuilder -
    -
    -
    deprecated
    -
    -
    - IMUBuilder.AxesSigns - - Enum Class in - com.technototes.library.hardware2 -
    -
    -
    This is duplicated in the IMU class
    -
    -
    - incompleteBarColor() - - Element in annotation interface com.technototes.library.logger.Log.NumberBar -
    -
    -
    The color for the not filled in bar color
    -
    -
    - incrementPosition(double) - - Method in class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -   -
    -
    - index() - - Element in annotation interface com.technototes.library.logger.Log.Boolean -
    -
    -
    Store index for this annotation (position in telemetry)
    -
    -
    - index() - - Element in annotation interface com.technototes.library.logger.Log -
    -
    -
    Store index for this annotation (position in telemetry)
    -
    -
    - index() - - Element in annotation interface com.technototes.library.logger.Log.Number -
    -
    -
    Store index for this annotation (position in telemetry)
    -
    -
    - index() - - Element in annotation interface com.technototes.library.logger.Log.NumberBar -
    -
    -
    Store index for this annotation (position in telemetry)
    -
    -
    - index() - - Element in annotation interface com.technototes.library.logger.Log.NumberSlider -
    -
    -
    Store index for this annotation (position in telemetry)
    -
    -
    - INIT - - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState -
    -
     
    -
    - initEntries - - Variable in class com.technototes.library.logger.Logger -
    -
     
    -
    - initialize() - - Method in interface com.technototes.library.command.Command -
    -
    -
    Init the command
    -
    -
    - initialize() - - Method in class com.technototes.library.command.CommandGroup -
    -
    -
    Mark all commands in the group as not yet run
    -
    -
    - initialize(IMU.Parameters) - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Initialize the IMU
    -
    -
    - INITIALIZING - - Enum constant in enum class com.technototes.library.command.Command.CommandState -
    -
    -
    The command is initializing after having been triggered
    -
    -
    - initLoop() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Runs constantly when op mode is initialized, yet not started
    -
    -
    - initMap(HardwareMap) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - initUpdate() - - Method in class com.technototes.library.logger.Logger -
    -
    -
    Update the logged init items in temeletry
    -
    -
    - input() - - Method in class com.technototes.library.hardware2.DigitalBuilder -
    -
    -
    Don't use this in the future
    -
    -
    - inRange(double) - - Method in class com.technototes.library.util.Range -
    -
    -
    Check if the value is in the range
    -
    -
    - Integral - - Class in - com.technototes.library.util -
    -
    -
    A simple Observation-based integral calculator over time
    -
    -
    - Integral() - - Constructor for class com.technototes.library.util.Integral -
    -
    -
    Initialize it with a value of 0
    -
    -
    - Integral(double) - - Constructor for class com.technototes.library.util.Integral -
    -
    -
    Initialize it with the value c
    -
    -
    - INTERRUPTED - - Enum constant in enum class com.technototes.library.command.Command.CommandState -
    -
    -
    - The command is pending cancellation (but has not yet processed the cancellation) -
    -
    -
    - invert() - - Method in interface com.technototes.library.general.Invertable -
    -
    -
    Toggle inversion
    -
    -
    - invert() - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Invert the motor (toggle inversion)
    -
    -
    - invert() - - Method in class com.technototes.library.hardware.motor.Motor -
    -
    -
    Invert the motor (toggle inversion)
    -
    -
    - invert() - - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - Invertable<T - extends - Invertable<T>> - Interface in - com.technototes.library.general -
    -
    -
    Interface for anything that can be inverted
    -
    -
    - isAtPosition(double) - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Is the motor at the specified position
    -
    -
    - isAtTarget() - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - isCancelled() - - Method in interface com.technototes.library.command.Command -
    -
    -
    Exactly what it says
    -
    -
    - isDisabled() - - Method in interface com.technototes.library.general.Enablable -
    -
     
    -
    - isEnabled() - - Method in class com.technototes.library.control.ButtonBase -
    -
     
    -
    - isEnabled() - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Is the gamepad (and all bound commands from it!) enabled?
    -
    -
    - isEnabled() - - Method in class com.technototes.library.control.GamepadDpad -
    -
     
    -
    - isEnabled() - - Method in class com.technototes.library.control.GamepadStick -
    -
     
    -
    - isEnabled() - - Method in interface com.technototes.library.general.Enablable -
    -
     
    -
    - isFinished() - - Method in interface com.technototes.library.command.Command -
    -
    -
    Return if the command is finished
    -
    -
    - isFinished() - - Method in class com.technototes.library.command.CommandBase -
    -
    -
    Deprecated.
    -
    Is this command finished
    -
    -
    - isFinished() - - Method in class com.technototes.library.command.CommandGroup -
    -
    -
    MUST IMPLEMENT IN SUBCLASSES:
    -
    -
    - isFinished() - - Method in class com.technototes.library.command.ConditionalCommand -
    -
     
    -
    - isFinished() - - Method in class com.technototes.library.command.ParallelCommandGroup -
    -
     
    -
    - isFinished() - - Method in class com.technototes.library.command.ParallelDeadlineGroup -
    -
     
    -
    - isFinished() - - Method in class com.technototes.library.command.ParallelRaceGroup -
    -
    -
    Is this finished?
    -
    -
    - isFinished() - - Method in class com.technototes.library.command.SequentialCommandGroup -
    -
    -
    Returns if all the commands are finished
    -
    -
    - isFinished() - - Method in class com.technototes.library.command.WaitCommand -
    -
     
    -
    - isInverseToggled() - - Method in class com.technototes.library.control.ButtonBase -
    -
    -
    Returns if the button is untoggled
    -
    -
    - isJustInverseToggled() - - Method in class com.technototes.library.control.ButtonBase -
    -
    -
    Returns if the button is just untoggled
    -
    -
    - isJustPressed() - - Method in class com.technototes.library.control.ButtonBase -
    -
    -
    Returns if the button is just pressed
    -
    -
    - isJustReleased() - - Method in class com.technototes.library.control.ButtonBase -
    -
    -
    Returns if the button is just released
    -
    -
    - isJustToggled() - - Method in class com.technototes.library.control.ButtonBase -
    -
    -
    Returns if the button is just toggled
    -
    -
    - isPreRelease() - - Static method in class com.technototes.library.RobotLibrary -
    -
    -
    Get if the library is a pre release
    -
    -
    - isPressed() - - Method in class com.technototes.library.control.ButtonBase -
    -
    -
    Returns if the button is pressed
    -
    -
    - isPrime(int) - - Static method in class com.technototes.library.util.MathUtils -
    -
    -
    Calculate if the supplied number is prime
    -
    -
    - isReleased() - - Method in class com.technototes.library.control.ButtonBase -
    -
    -
    Returns if the button is released
    -
    -
    - isRumbling() - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Is the gamepad rumbling
    -
    -
    - isRunning() - - Method in interface com.technototes.library.command.Command -
    -
    -
    - Is the command in some state of running/started/finished/cancelled -
    -
    -
    - isState(CommandOpMode.OpModeState...) - - Method in enum class com.technototes.library.structure.CommandOpMode.OpModeState -
    -
    -
    Check if other states are this state
    -
    -
    - isToggled() - - Method in class com.technototes.library.control.ButtonBase -
    -
    -
    Returns if the button is toggled
    -
    -
    - IterativeCommand - - Class in - com.technototes.library.command -
    -
     
    -
    - IterativeCommand(Function<Integer, Command>, int) - - Constructor for class com.technototes.library.command.IterativeCommand -
    -
    -
    iterative command for an int
    -
    -
    - IterativeCommand(Function<Integer, Command>, int, BooleanSupplier) - - Constructor for class com.technototes.library.command.IterativeCommand -
    -
     
    -
    - IterativeCommand(Function<Integer, Command>, BooleanSupplier) - - Constructor for class com.technototes.library.command.IterativeCommand -
    -
     
    -
    - IterativeCommand(Function<T, Command>, T, T, Function<T, T>) - - Constructor for class com.technototes.library.command.IterativeCommand -
    -
    -
    iterative command for anything
    -
    -
    - IterativeCommand(Function<T, Command>, T, T, Function<T, T>, - BooleanSupplier) - - Constructor for class com.technototes.library.command.IterativeCommand -
    -
     
    -
    -

    J

    -
    -
    - joystickDrive(double, double, double) - - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem -
    -
     
    -
    - joystickDriveWithGyro(double, double, double, double) - - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem -
    -
     
    -
    - justFinished() - - Method in interface com.technototes.library.command.Command -
    -
    -
    Is this command finished?
    -
    -
    - justFinishedNoCancel() - - Method in interface com.technototes.library.command.Command -
    -
    -
    Is this command completed?
    -
    -
    - justStarted() - - Method in interface com.technototes.library.command.Command -
    -
    -
    Has the command just be started?
    -
    -
    -

    L

    -
    -
    - lastCommand - - Variable in class com.technototes.library.command.SequentialCommandGroup -
    -
     
    -
    - led(boolean) - - Method in class com.technototes.library.hardware2.ColorRangeBuilder -
    -
     
    -
    - left - - Variable in class com.technototes.library.control.GamepadDpad -
    -
    -
    The objects for the dpad buttons
    -
    -
    - LEFT_BUMPER - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    Left bumper button
    -
    -
    - LEFT_STICK_BUTTON - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    Button when clicking the left stick
    -
    -
    - LEFT_STICK_X - - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis -
    -
    -
    Left stick's horizontal axis
    -
    -
    - LEFT_STICK_Y - - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis -
    -
    -
    Left stick's vertical axis
    -
    -
    - LEFT_TRIGGER - - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis -
    -
    -
    Left Trigger's axis
    -
    -
    - leftBumper - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    - leftSide - - Variable in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem -
    -
    -
    Drive motors
    -
    -
    - leftStick - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The stick objects
    -
    -
    - leftStickButton - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    - leftStickX - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The axis objects
    -
    -
    - leftStickY - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The axis objects
    -
    -
    - leftTrigger - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The axis objects
    -
    -
    - LIGHT_GRAY - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - LIME - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - Log - - Annotation Interface in - com.technototes.library.logger -
    -
    -
    - The root annotation for annotation logging, also doubles as a basic string log -
    -
    -
    - Log.Boolean - - Annotation Interface in - com.technototes.library.logger -
    -
     
    -
    - Log.Logs - - Annotation Interface in - com.technototes.library.logger -
    -
     
    -
    - Log.Number - - Annotation Interface in - com.technototes.library.logger -
    -
    -
    Log a number
    -
    -
    - Log.NumberBar - - Annotation Interface in - com.technototes.library.logger -
    -
    -
    Log a number, but store it as a number bar
    -
    -
    - Log.NumberSlider - - Annotation Interface in - com.technototes.library.logger -
    -
     
    -
    - LogConfig - - Annotation Interface in - com.technototes.library.logger -
    -
    -
    Annotations for configuring Logs
    -
    -
    - LogConfig.Blacklist - - Annotation Interface in - com.technototes.library.logger -
    -
    -
    Annotation for Blacklisting Opmodes to log this item
    -
    -
    - LogConfig.Disabled - - Annotation Interface in - com.technototes.library.logger -
    -
    -
    Annotation to completely disable the entry
    -
    -
    - LogConfig.Run - - Annotation Interface in - com.technototes.library.logger -
    -
    -
    - Annotation for determining when logged item will be sent to Telemetry -
    -
    -
    - LogConfig.Whitelist - - Annotation Interface in - com.technototes.library.logger -
    -
    -
    Annotation for Whitelisting Opmodes to log this item
    -
    -
    - Loggable - - Interface in - com.technototes.library.logger -
    -
    -
    - All classes with annotations for logging must extend this all the way up the - hierarchy up to the op mode -
    -
    -
    - Logger - - Class in - com.technototes.library.logger -
    -
    -
    The class to manage logging
    -
    -
    - Logger(OpMode) - - Constructor for class com.technototes.library.logger.Logger -
    -
    -
    Instantiate the logger
    -
    -
    -

    M

    -
    -
    - MAGENTA - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - map - - Static variable in interface com.technototes.library.util.SmartConsumer -
    -
    -
    The map of values that have been consumed.
    -
    -
    - map(double, double, double, double, double) - - Static method in class com.technototes.library.util.MathUtils -
    -
    -
    - Scale a value originally between in_min and in_max to be the same ratio when mapped - to out_min and out_max. -
    -
    -
    - MapUtils - - Class in - com.technototes.library.util -
    -
     
    -
    - MapUtils() - - Constructor for class com.technototes.library.util.MapUtils -
    -
     
    -
    - MathUtils - - Class in - com.technototes.library.util -
    -
    -
    Class with various math functions
    -
    -
    - MathUtils() - - Constructor for class com.technototes.library.util.MathUtils -
    -
     
    -
    - max - - Variable in class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    - max - - Variable in class com.technototes.library.util.Range -
    -
    -
    The maximum value of the range
    -
    -
    - max() - - Method in class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    - max() - - Element in annotation interface com.technototes.library.logger.Log.NumberBar -
    -
    -
    Store the max for the number bar to scale to
    -
    -
    - max() - - Element in annotation interface com.technototes.library.logger.Log.NumberSlider -
    -
    -
    Store the max for the number bar to scale to
    -
    -
    - maxAcceleration - - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints -
    -
     
    -
    - maxSpeed - - Variable in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem -
    -
    -
    Max speed
    -
    -
    - maxVelocity - - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints -
    -
     
    -
    - middle() - - Method in class com.technototes.library.util.Range -
    -
    -
    Get the 'middle' of the range
    -
    -
    - min - - Variable in class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    - min - - Variable in class com.technototes.library.util.Range -
    -
    -
    The minimum value of the range
    -
    -
    - min() - - Method in class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    - min() - - Element in annotation interface com.technototes.library.logger.Log.NumberBar -
    -
    -
    Store the min for the number bar to scale to
    -
    -
    - min() - - Element in annotation interface com.technototes.library.logger.Log.NumberSlider -
    -
    -
    Store the min for the number bar to scale to
    -
    -
    - mode(DcMotor.RunMode) - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - mode(DigitalChannel.Mode) - - Method in class com.technototes.library.hardware2.DigitalBuilder -
    -
    -
    Don't use this in the future
    -
    -
    - motor(int) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - motor(String) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - Motor<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in - com.technototes.library.hardware.motor -
    -
    -
    Class for motors
    -
    -
    - Motor(String) - - Constructor for class com.technototes.library.hardware.motor.Motor -
    -
    -
    Create a motor
    -
    -
    - Motor(T) - - Constructor for class com.technototes.library.hardware.motor.Motor -
    -
    -
    Create a motor
    -
    -
    - MotorBuilder - - Class in - com.technototes.library.hardware2 -
    -
    -
    TODO: Remove this.
    -
    -
    - MotorBuilder(int) - - Constructor for class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - MotorBuilder(DcMotorEx) - - Constructor for class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - MotorBuilder(String) - - Constructor for class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - MotorEncoder - - Class in - com.technototes.library.hardware.sensor.encoder -
    -
    -
    - Wraps a motor instance to provide corrected velocity counts and allow reversing - independently of the corresponding slot's motor direction -
    -
    -
    - MotorEncoder(DcMotorEx) - - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - MotorEncoder(DcMotorEx, ElapsedTime) - - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - MotorEncoder(EncodedMotor<DcMotorEx>) - - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - MotorEncoder(String) - - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - MotorEncoder.Direction - - Enum Class in - com.technototes.library.hardware.sensor.encoder -
    -
     
    -
    - MotorGroup<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in - com.technototes.library.hardware.motor -
    -
    -
    Class for a group of motors
    -
    -
    - MotorGroup(Motor<T>...) - - Constructor for class com.technototes.library.hardware.motor.MotorGroup -
    -
    -
    Make a motor group
    -
    -
    - MotorSubsystem<T - extends - Motor<?>> - Class in - com.technototes.library.subsystem.motor -
    -
    -
    Class for motor subsystems
    -
    -
    - MotorSubsystem(T) - - Constructor for class com.technototes.library.subsystem.motor.MotorSubsystem -
    -
    -
    Create motor subsystem
    -
    -
    - MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED - - Static variable in class com.technototes.library.structure.CommandOpMode -
    -
     
    -
    - msStuckDetectStop - - Variable in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Deprecated.
    -
    -
    -

    N

    -
    -
    - name - - Variable in class com.technototes.library.logger.entry.Entry -
    -
    -
    The name of the Entry
    -
    -
    - name() - - Element in annotation interface com.technototes.library.logger.Log.Boolean -
    -
    -
    Store the name for this annotation to be be beside
    -
    -
    - name() - - Element in annotation interface com.technototes.library.logger.Log -
    -
    -
    Store the name for this annotation to be be beside
    -
    -
    - name() - - Element in annotation interface com.technototes.library.logger.Log.Number -
    -
    -
    Store the name for this annotation to be be beside
    -
    -
    - name() - - Element in annotation interface com.technototes.library.logger.Log.NumberBar -
    -
    -
    Store the name for this annotation to be be beside
    -
    -
    - name() - - Element in annotation interface com.technototes.library.logger.Log.NumberSlider -
    -
    -
    Store the name for this annotation to be be beside
    -
    -
    - NEUTRAL - - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority -
    -
     
    -
    - NNN - - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns -
    -
    -
    Negative, Negative, Negative
    -
    -
    - NNN - - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns -
    -
    -
    deprecated
    -
    -
    - NNP - - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns -
    -
    -
    Negative, Negative, Positive
    -
    -
    - NNP - - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns -
    -
    -
    deprecated
    -
    -
    - NO_COLOR - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - NONE - - Enum constant in enum class com.technototes.library.util.Alliance -
    -
    -
    NO ALLIANCE SELECTED
    -
    -
    - NONE_ACTIVE - - Enum constant in enum class com.technototes.library.control.Binding.Type -
    -
     
    -
    - NPN - - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns -
    -
    -
    Negative, Positive, Negative
    -
    -
    - NPN - - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns -
    -
    -
    deprecated
    -
    -
    - NPP - - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns -
    -
    -
    Negative, Positive, Positive
    -
    -
    - NPP - - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns -
    -
    -
    deprecated
    -
    -
    - NumberBarEntry - - Class in - com.technototes.library.logger.entry -
    -
     
    -
    - NumberBarEntry(String, Supplier<Number>, int, Number, Number, Number, Color, - Color, Color, Color) - - Constructor for class com.technototes.library.logger.entry.NumberBarEntry -
    -
     
    -
    - numberColor - - Variable in class com.technototes.library.logger.entry.NumberEntry -
    -
     
    -
    - numberColor() - - Element in annotation interface com.technototes.library.logger.Log.Number -
    -
    -
    The color for the number
    -
    -
    - NumberEntry - - Class in - com.technototes.library.logger.entry -
    -
     
    -
    - NumberEntry(String, Supplier<Number>, int, Color) - - Constructor for class com.technototes.library.logger.entry.NumberEntry -
    -
     
    -
    - NumberEntry(String, Supplier<Number>, int, Color, Color) - - Constructor for class com.technototes.library.logger.entry.NumberEntry -
    -
     
    -
    - NumberSliderEntry - - Class in - com.technototes.library.logger.entry -
    -
     
    -
    - NumberSliderEntry(String, Supplier<Number>, int, Number, Number, Number, - Color, Color, Color, Color) - - Constructor for class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    -

    O

    -
    -
    - of(Pair<T, U>...) - - Static method in class com.technototes.library.util.MapUtils -
    -
     
    -
    - of(T, T) - - Static method in class com.technototes.library.util.Alliance.Selector -
    -
    -
    Selector factory method
    -
    -
    - offset - - Variable in class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - onlyIf(BooleanSupplier) - - Method in interface com.technototes.library.command.Command -
    -
    -
    Runs this command only if the choiceCondition is met (i.e.
    -
    -
    - onRange(double, double) - - Method in class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -
    Set servo range
    -
    -
    - onUnit(DistanceUnit) - - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor -
    -
     
    -
    - onUnit(DistanceUnit) - - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor -
    -
     
    -
    - onUnit(DistanceUnit) - - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor -
    -
    -
    Deprecated.
    -
    Set the distance unit
    -
    -
    - options - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the PS4 game controller
    -
    -
    - OPTIONS - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    PS4 Options button
    -
    -
    - ORANGE - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - outline() - - Element in annotation interface com.technototes.library.logger.Log.NumberBar -
    -
    -
    The color for the bar outlines
    -
    -
    - outline() - - Element in annotation interface com.technototes.library.logger.Log.NumberSlider -
    -
    -
    The color for the slider outline
    -
    -
    - output() - - Method in class com.technototes.library.hardware2.DigitalBuilder -
    -
    -
    Don't use this in the future
    -
    -
    -

    P

    -
    -
    - ParallelCommandGroup - - Class in - com.technototes.library.command -
    -
    -
    - Command group to run commands in parallel until all of them finish -
    -
    -
    - ParallelCommandGroup(Command...) - - Constructor for class com.technototes.library.command.ParallelCommandGroup -
    -
    -
    Make parallel command group
    -
    -
    - ParallelDeadlineGroup - - Class in - com.technototes.library.command -
    -
    -
    - Command group to run commands in parallel until one particular command completes -
    -
    -
    - ParallelDeadlineGroup(Command, Command...) - - Constructor for class com.technototes.library.command.ParallelDeadlineGroup -
    -
    -
    Make parallel deadline group
    -
    -
    - ParallelRaceGroup - - Class in - com.technototes.library.command -
    -
    -
    - Command group to run commands in parallel until *one* is finished -
    -
    -
    - ParallelRaceGroup(Command...) - - Constructor for class com.technototes.library.command.ParallelRaceGroup -
    -
    -
    Make parallel race group
    -
    -
    - parameter(Consumer<BNO055IMU.Parameters>) - - Method in class com.technototes.library.hardware2.IMUBuilder -
    -
    -
    Deprecated
    -
    -
    - periodic() - - Method in class com.technototes.library.control.ButtonBase -
    -
     
    -
    - periodic() - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    - Run the periodic functions for the controller (if the controller is enabled) -
    -
    -
    - periodic() - - Method in class com.technototes.library.control.GamepadDpad -
    -
     
    -
    - periodic() - - Method in class com.technototes.library.control.GamepadStick -
    -
     
    -
    - periodic() - - Method in interface com.technototes.library.general.Periodic -
    -
    -
    The periodic function
    -
    -
    - periodic() - - Method in class com.technototes.library.subsystem.DeviceSubsystem -
    -
     
    -
    - periodic() - - Method in interface com.technototes.library.subsystem.Subsystem -
    -
     
    -
    - Periodic - - Interface in - com.technototes.library.general -
    -
    -
    An interface for classes to have the periodic function
    -
    -
    - PINK - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - PNN - - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns -
    -
    -
    Positive, Negative, Negative
    -
    -
    - PNN - - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns -
    -
    -
    deprecated
    -
    -
    - PNP - - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns -
    -
    -
    Positive, Negative, Positive
    -
    -
    - PNP - - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns -
    -
    -
    deprecated
    -
    -
    - position(double) - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - positionThreshold - - Variable in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Deadzone for going to positions with encoder
    -
    -
    - PPN - - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns -
    -
    -
    Positive, Positive, Negative
    -
    -
    - PPN - - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns -
    -
    -
    deprecated
    -
    -
    - PPP - - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns -
    -
    -
    Positive, Positive, Positive
    -
    -
    - PPP - - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns -
    -
    -
    deprecated
    -
    -
    - primary - - Variable in class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    - priority - - Variable in class com.technototes.library.logger.entry.Entry -
    -
    -
    The priority (in the telemetry list) of the entry
    -
    -
    - priority() - - Element in annotation interface com.technototes.library.logger.Log.Boolean -
    -
    -
    - Store priority for this log entry (to pick the most wanted entry over others with - same index) -
    -
    -
    - priority() - - Element in annotation interface com.technototes.library.logger.Log.Number -
    -
    -
    - Store priority for this log entry (to pick the most wanted entry over others with - same index) -
    -
    -
    - priority() - - Element in annotation interface com.technototes.library.logger.Log.NumberBar -
    -
    -
    - Store priority for this log entry (to pick the most wanted entry over others with - same index) -
    -
    -
    - priority() - - Element in annotation interface com.technototes.library.logger.Log.NumberSlider -
    -
    -
    - Store priority for this log entry (to pick the most wanted entry over others with - same index) -
    -
    -
    - priority() - - Element in annotation interface com.technototes.library.logger.Log -
    -
    -
    - Store priority for this log entry (to pick the most wanted entry over others with - same index) -
    -
    -
    - product - - Variable in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - propagate(double) - - Method in interface com.technototes.library.hardware.HardwareDeviceGroup -
    -
    -
    Deprecated.
    -
    Propagate actions across the followers
    -
    -
    - propogate(double) - - Method in interface com.technototes.library.hardware.HardwareDeviceGroup -
    -
    -
    Deprecated.
    -
    -
    - propogate(double) - - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup -
    -
     
    -
    - propogate(double) - - Method in class com.technototes.library.hardware.motor.MotorGroup -
    -
     
    -
    - propogate(double) - - Method in class com.technototes.library.hardware.servo.ServoGroup -
    -
    -
    Deprecated.
    -   -
    -
    - proportion - - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints -
    -
     
    -
    - PURPLE - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - pwmRange(double, double) - - Method in class com.technototes.library.hardware2.ServoBuilder -
    -
     
    -
    - pythag(double...) - - Static method in class com.technototes.library.util.MathUtils -
    -
    -
    Calculate pythagorean theorem of any number of sides
    -
    -
    -

    R

    -
    -
    - raceWith(Command...) - - Method in interface com.technototes.library.command.Command -
    -
    -
    - Runs all the commands in parallel (including this command) until one of them - finishes -
    -
    -
    - radians() - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Set angle format to radians
    -
    -
    - radians() - - Method in class com.technototes.library.hardware2.IMUBuilder -
    -
    -
    Deprecated
    -
    -
    - range(double, double) - - Method in class com.technototes.library.hardware2.ServoBuilder -
    -
     
    -
    - Range - - Class in - com.technototes.library.util -
    -
    -
    Helper class for tracking a range
    -
    -
    - Range(double, double) - - Constructor for class com.technototes.library.util.Range -
    -
    -
    Create a range with the given minimum and maximum
    -
    -
    - raw() - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - red() - - Method in interface com.technototes.library.hardware.sensor.IColorSensor -
    -
    -
    Get the RGB red of the sensor
    -
    -
    - RED - - Enum constant in enum class com.technototes.library.util.Alliance -
    -
    -
    RED alliance selector
    -
    -
    - RED - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - RED_SQUARE - - Static variable in class com.technototes.library.util.Characters -
    -
     
    -
    - register() - - Method in interface com.technototes.library.subsystem.Subsystem -
    -
     
    -
    - register(Periodic) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Register a periodic function to be run once each schedule loop -
    -
    -
    - remap(AxesOrder, IMUBuilder.AxesSigns) - - Method in class com.technototes.library.hardware2.IMUBuilder -
    -
    -
    Deprecated
    -
    -
    - remapAxesAndSigns(AxesOrder, IMU.AxesSigns) - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Remaps the axes for the IMU in the order and sign provided.
    -
    -
    - remapLegacyAxes(AxesOrder, IMU.AxesSigns) - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    - Remaps the axes for the BNO055 IMU in the order and sign provided The SDK 8.1.1 - added a new IMU class, which (delightfully) rotated the X and Y axes around the Z - axis by 90 degrees clock-wise (viewed from above) If you have code that was using - that layout, this is what you probably need to call. -
    -
    -
    - repeat(String, int) - - Static method in class com.technototes.library.logger.Logger -
    -
    -
    Repeat a String
    -
    -
    - requestOpModeStop() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
     
    -
    - requirementMap - - Static variable in interface com.technototes.library.command.Command -
    -
    -
    The Command to Required Subsystems lookup
    -
    -
    - reset() - - Static method in interface com.technototes.library.util.SmartConsumer -
    -
     
    -
    - RESET - - Enum constant in enum class com.technototes.library.command.Command.CommandState -
    -
    -
    The command has just be scheduled
    -
    -
    - resetDeviceConfigurationForOpMode() - - Method in class com.technototes.library.hardware.DummyDevice -
    -
     
    -
    - resetScheduler() - - Static method in class com.technototes.library.command.CommandScheduler -
    -
    -
    Alex had a comment "be careful with this" and he's not wrong.
    -
    -
    - Rev2MDistanceSensor - - Class in - com.technototes.library.hardware.sensor -
    -
    -
    Deprecated.
    -
    -
    - Rev2MDistanceSensor(DistanceSensor) - - Constructor for class com.technototes.library.hardware.sensor.Rev2MDistanceSensor -
    -
    -
    Deprecated.
    -
    Create a range sensor
    -
    -
    - Rev2MDistanceSensor(String) - - Constructor for class com.technototes.library.hardware.sensor.Rev2MDistanceSensor -
    -
    -
    Deprecated.
    -
    Create a range sensor
    -
    -
    - reverse() - - Method in class com.technototes.library.hardware2.CRServoBuilder -
    -
     
    -
    - reverse() - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - reverse() - - Method in class com.technototes.library.hardware2.ServoBuilder -
    -
     
    -
    - REVERSE - - Enum constant in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction -
    -
     
    -
    - rgb() - - Method in interface com.technototes.library.hardware.sensor.IColorSensor -
    -
     
    -
    - right - - Variable in class com.technototes.library.control.GamepadDpad -
    -
    -
    The objects for the dpad buttons
    -
    -
    - RIGHT_BUMPER - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    Right bumper button
    -
    -
    - RIGHT_STICK_BUTTON - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    Button which clicking the right stick
    -
    -
    - RIGHT_STICK_X - - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis -
    -
    -
    Right stick's horizontal axis
    -
    -
    - RIGHT_STICK_Y - - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis -
    -
    -
    Right stick's vertical axis
    -
    -
    - RIGHT_TRIGGER - - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis -
    -
    -
    Right Trigger's axis
    -
    -
    - rightBumper - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    - rightSide - - Variable in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem -
    -
    -
    Drive motors
    -
    -
    - rightStick - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The stick objects
    -
    -
    - rightStickButton - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    - rightStickX - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The axis objects
    -
    -
    - rightStickY - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The axis objects
    -
    -
    - rightTrigger - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The axis objects
    -
    -
    - rlMotor - - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem -
    -
    -
    Drive motors
    -
    -
    - RobotLibrary - - Class in - com.technototes.library -
    -
    -
    - Root class for the Robot Library (I will put important stuff here) -
    -
    -
    - RobotLibrary() - - Constructor for class com.technototes.library.RobotLibrary -
    -
     
    -
    - rrMotor - - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem -
    -
    -
    Drive motors
    -
    -
    - rumble() - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Rumble for about 1/8th of a second
    -
    -
    - rumble(double) - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Rumble the gamepad for 'seconds'
    -
    -
    - rumbleBlip() - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Run a single "RumbleBlip"
    -
    -
    - rumbleBlips(int) - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Run a bunch of "RumbleBlips"
    -
    -
    - run() - - Method in interface com.technototes.library.command.Command -
    -
    -
    Run the commmand
    -
    -
    - run() - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - This is invoked from inside the CommandOpMode method, during the opCode. -
    -
    -
    - RUN - - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState -
    -
     
    -
    - runEntries - - Variable in class com.technototes.library.logger.Logger -
    -
     
    -
    - runLoop() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Runs constantly when op mode is started
    -
    -
    - runOpMode() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
     
    -
    - runUpdate() - - Method in class com.technototes.library.logger.Logger -
    -
    -
    Update the logged run items in temeletry
    -
    -
    -

    S

    -
    -
    - saturation() - - Method in interface com.technototes.library.hardware.sensor.IColorSensor -
    -
    -
    Get HSV saturation
    -
    -
    - scale - - Variable in class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    - scale() - - Method in class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    - scale() - - Element in annotation interface com.technototes.library.logger.Log.NumberBar -
    -
    -
    Store the scale for the number bar to scale to
    -
    -
    - scale() - - Element in annotation interface com.technototes.library.logger.Log.NumberSlider -
    -
    -
    Store the scale for the number bar to scale to
    -
    -
    - scale(double) - - Method in class com.technototes.library.util.Range -
    -
    -
    Scale the range by a given value
    -
    -
    - scalePWM(double, double) - - Method in class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -   -
    -
    - schedule(Command) - - Method in class com.technototes.library.command.CommandGroup -
    -
    -
    - This should schedule the command as part of this command group, I think. -
    -
    -
    - schedule(Command) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    Schedule a command to run
    -
    -
    - schedule(Command) - - Method in class com.technototes.library.command.ParallelCommandGroup -
    -
     
    -
    - schedule(Command) - - Method in class com.technototes.library.command.ParallelDeadlineGroup -
    -
    -
    - Add another command to the group to be run while waiting for the 'deadline' command - to finish -
    -
    -
    - schedule(Command) - - Method in class com.technototes.library.command.ParallelRaceGroup -
    -
    -
    - Add one more command to the list of commands that will be run at the same time -
    -
    -
    - schedule(Command) - - Method in class com.technototes.library.command.SequentialCommandGroup -
    -
    -
    - This allows you to append another command to the Sequential Command Group -
    -
    -
    - schedule(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    Schedule the command to run
    -
    -
    - schedule(Command, BooleanSupplier) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    Register a command to be scheduled.
    -
    -
    - schedule(BooleanSupplier, Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    Schedule the command to run over & over
    -
    -
    - schedule(Consumer<Boolean>) - - Method in class com.technototes.library.control.CommandButton -
    -
     
    -
    - schedule(Function<Boolean, Command>) - - Method in class com.technototes.library.control.CommandButton -
    -
     
    -
    - schedule(Function<Double, Command>) - - Method in class com.technototes.library.control.CommandAxis -
    -
     
    -
    - scheduleAfterOther(Command, Command) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Schedule the 'other' command (the second one) when the 'dependency' command has - finished (but *not* been cancelled!). -
    -
    -
    - scheduleAfterOther(Command, Command, BooleanSupplier) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Schedule the 'other' command (the second one) when the 'dependency' command has - finished (but *not* been cancelled!) *and* 'additionalCondition' is true. -
    -
    -
    - scheduleDefault(Command, Subsystem) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    Schedule the default command for a given subsystem.
    -
    -
    - scheduleDpad(BiConsumer<Double, Double>) - - Method in class com.technototes.library.control.CommandGamepad -
    -
     
    -
    - scheduleDpad(BiFunction<Double, Double, Command>) - - Method in class com.technototes.library.control.CommandGamepad -
    -
     
    -
    - scheduleForState(Command, CommandOpMode.OpModeState...) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Schedule a command to be run when the OpMode is one of the provided list of states. -
    -
    -
    - scheduleForState(Command, BooleanSupplier, CommandOpMode.OpModeState...) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Schedule a command to be run when the OpMode is one of the provided list of states - and the 'supplier' boolean function is also true. -
    -
    -
    - scheduleInit(Command) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Schedule a command to be run recurringly during the 'Init' phase of an opmode. -
    -
    -
    - scheduleInit(Command, BooleanSupplier) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Schedule a command to be run recurringly during the 'Init' phase of an opmode. -
    -
    -
    - scheduleJoystick(Command) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Schedules a command to be run during Run and End states, all the time. -
    -
    -
    - scheduleJoystick(Command, BooleanSupplier) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Schedules a command to be run during Run and End states, all the time. -
    -
    -
    - scheduleLeftStick(BiConsumer<Double, Double>) - - Method in class com.technototes.library.control.CommandGamepad -
    -
     
    -
    - scheduleLeftStick(BiFunction<Double, Double, Command>) - - Method in class com.technototes.library.control.CommandGamepad -
    -
     
    -
    - scheduleOnce(Command) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    Schedule a command to run
    -
    -
    - scheduleOnceForState(Command, CommandOpMode.OpModeState) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    Schedule a command to run during a particular OpModeState
    -
    -
    - schedulePressed(Function<DoubleSupplier, Command>) - - Method in class com.technototes.library.control.CommandAxis -
    -
     
    -
    - scheduleRightStick(BiConsumer<Double, Double>) - - Method in class com.technototes.library.control.CommandGamepad -
    -
     
    -
    - scheduleRightStick(BiFunction<Double, Double, Command>) - - Method in class com.technototes.library.control.CommandGamepad -
    -
     
    -
    - scheduleStick(Stick, BiConsumer<Double, Double>) - - Method in class com.technototes.library.control.CommandGamepad -
    -
     
    -
    - scheduleStick(Stick, BiFunction<Double, Double, Command>) - - Method in class com.technototes.library.control.CommandGamepad -
    -
     
    -
    - scheduleWithOther(Command, Command) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Schedule the 'other' command (the second one) when the 'dependency' command has just - started. -
    -
    -
    - scheduleWithOther(Command, Command, BooleanSupplier) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    - Schedule the 'other' command (the second one) when the 'dependency' command has just - started *and* 'additionalCondition' is also true. -
    -
    -
    - secondary - - Variable in class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    - select(Alliance) - - Method in class com.technototes.library.util.Alliance.Selector -
    -
    -
    Select the red or blue item based on the Alliance
    -
    -
    - selectOf(Alliance, T, T) - - Static method in class com.technototes.library.util.Alliance.Selector -
    -
    -
    Based on Alliance, choose red or blue
    -
    -
    - selectOf(T, T) - - Method in enum class com.technototes.library.util.Alliance -
    -
    -
    Select either 'a' or 'b' depending on alliance
    -
    -
    - Selector(T, T) - - Constructor for class com.technototes.library.util.Alliance.Selector -
    -
    -
    Create a Selelector for red/blue
    -
    -
    - Sensor<T - extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in - com.technototes.library.hardware.sensor -
    -
    -
    Deprecated.
    -
    -
    - Sensor(String) - - Constructor for class com.technototes.library.hardware.sensor.Sensor -
    -
    -
    Deprecated.
    -
    Create sensor
    -
    -
    - Sensor(T) - - Constructor for class com.technototes.library.hardware.sensor.Sensor -
    -
    -
    Deprecated.
    -
    Create a sensor
    -
    -
    - Sensored - - Interface in - com.technototes.library.hardware -
    -
    -
    Deprecated.
    -
    -
    - SequentialCommandGroup - - Class in - com.technototes.library.command -
    -
    -
    A grouping command which runs a list of commands in sequence
    -
    -
    - SequentialCommandGroup(Command...) - - Constructor for class com.technototes.library.command.SequentialCommandGroup -
    -
    -
    Make sequential command group.
    -
    -
    - servo(int) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - servo(String) - - Static method in class com.technototes.library.hardware2.HardwareBuilder -
    -
    -
    Deprecated
    -
    -
    - Servo - - Class in - com.technototes.library.hardware.servo -
    -
    -
    Deprecated.
    -
    -
    - Servo(Servo) - - Constructor for class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -
    Create servo object
    -
    -
    - Servo(String) - - Constructor for class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -
    Create servo object
    -
    -
    - ServoBuilder - - Class in - com.technototes.library.hardware2 -
    -
    -
    TODO: Remove this.
    -
    -
    - ServoBuilder(int) - - Constructor for class com.technototes.library.hardware2.ServoBuilder -
    -
     
    -
    - ServoBuilder(Servo) - - Constructor for class com.technototes.library.hardware2.ServoBuilder -
    -
     
    -
    - ServoBuilder(String) - - Constructor for class com.technototes.library.hardware2.ServoBuilder -
    -
     
    -
    - ServoGroup - - Class in - com.technototes.library.hardware.servo -
    -
    -
    Deprecated.
    -
    -
    - ServoGroup(Servo...) - - Constructor for class com.technototes.library.hardware.servo.ServoGroup -
    -
    -
    Deprecated.
    -
    Create a servo group
    -
    -
    - ServoProfiler - - Class in - com.technototes.library.hardware.servo -
    -
     
    -
    - ServoProfiler(Servo) - - Constructor for class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - ServoProfiler.Constraints - - Class in - com.technototes.library.hardware.servo -
    -
     
    -
    - ServoSubsystem - - Class in - com.technototes.library.subsystem.servo -
    -
    -
    Class for servo subsystems
    -
    -
    - ServoSubsystem(Servo) - - Constructor for class com.technototes.library.subsystem.servo.ServoSubsystem -
    -
    -
    Create servo subsystem
    -
    -
    - ServoSubsystem(Servo...) - - Constructor for class com.technototes.library.subsystem.servo.ServoSubsystem -
    -
     
    -
    - set(double) - - Method in class com.technototes.library.util.Integral -
    -
    -
    Set the value to C
    -
    -
    - setAverageOutput(double) - - Method in class com.technototes.library.util.Differential -
    -
    -
    Set the average of the differential.
    -
    -
    - setConstraints(double, double, double) - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - setConstraints(ServoProfiler.Constraints) - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - setDefaultCommand(Command) - - Method in interface com.technototes.library.subsystem.Subsystem -
    -
     
    -
    - setDeviationOutput(double) - - Method in class com.technototes.library.util.Differential -
    -
    -
    Set the deviation of the differential.
    -
    -
    - setDirection(MotorEncoder.Direction) - - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
    -
    - Allows you to set the direction of the counts and velocity without modifying the - motor's direction state -
    -
    -
    - setEnabled(boolean) - - Method in class com.technototes.library.control.ButtonBase -
    -
     
    -
    - setEnabled(boolean) - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    - Enable/disable the gamepad (and all potentially bound commands!) -
    -
    -
    - setEnabled(boolean) - - Method in class com.technototes.library.control.GamepadDpad -
    -
     
    -
    - setEnabled(boolean) - - Method in class com.technototes.library.control.GamepadStick -
    -
     
    -
    - setEnabled(boolean) - - Method in interface com.technototes.library.general.Enablable -
    -
    -
    Set whether or not the device is enabled
    -
    -
    - setEncoder(Encoder) - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Explicitly set the encoder for the motor
    -
    -
    - setHeading(double) - - Method in interface com.technototes.library.hardware.sensor.IGyro -
    -
    -
    Sets the current heading (in default units)
    -
    -
    - setHeading(double) - - Method in class com.technototes.library.hardware.sensor.IMU -
    -
    -
    Sets the current heading to be 'new heading'
    -
    -
    - setIndex(int) - - Method in class com.technototes.library.logger.entry.Entry -
    -
    -
    Set index
    -
    -
    - setInverted(boolean) - - Method in class com.technototes.library.control.ButtonBase -
    -
     
    -
    - setInverted(boolean) - - Method in class com.technototes.library.control.CommandAxis -
    -
     
    -
    - setInverted(boolean) - - Method in class com.technototes.library.control.CommandButton -
    -
     
    -
    - setInverted(boolean) - - Method in interface com.technototes.library.general.Invertable -
    -
    -
    - Set the inversion (true -> Is inverted, false -> Not inverted) -
    -
    -
    - setInverted(boolean) - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Set the Inverted state for the motor.
    -
    -
    - setInverted(boolean) - - Method in class com.technototes.library.hardware.motor.Motor -
    -
    -
    Set the Inverted state for the motor.
    -
    -
    - setInverted(boolean) - - Method in class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -   -
    -
    - setLimits(double, double) - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
     
    -
    - setLimits(double, double) - - Method in class com.technototes.library.hardware.motor.Motor -
    -
    -
    - Sets the min & max values for the motor power (still clipped to -1/1) -
    -
    -
    - setLimits(double, double) - - Method in class com.technototes.library.util.Differential -
    -
    -
    Set the limits for the differential
    -
    -
    - setMaxSpeed(double) - - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem -
    -
    -
    Set the max speed for the subsystem
    -
    -
    - setOpMode(CommandOpMode) - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    Set the scheduler's opmode
    -
    -
    - setOutputs(double, double) - - Method in class com.technototes.library.util.Differential -
    -
    -
    Set both outputs for the differential
    -
    -
    - setPIDFCoeffecients(double, double, double, double) - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Configure the PIDF constants for the motor
    -
    -
    - setPIDFCoeffecients(PIDFCoefficients) - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Configure the PIDF constants for the motor
    -
    -
    - setPosition(double) - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Set the position of the motor
    -
    -
    - setPosition(double) - - Method in class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -
    Set servo position
    -
    -
    - setPosition(double) - - Method in class com.technototes.library.hardware.servo.ServoGroup -
    -
    -
    Deprecated.
    -   -
    -
    - setPosition(double) - - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem -
    -
    -
    Set position for subsystem with existing max speed
    -
    -
    - setPosition(double) - - Method in class com.technototes.library.subsystem.servo.ServoSubsystem -
    -
    -
    Set servo subsystem position
    -
    -
    - setPosition(double, double) - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    - Set the power for the motor to try to get to the position specified. -
    -
    -
    - setPosition(double, double) - - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup -
    -
     
    -
    - setPosition(double, double) - - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem -
    -
    -
    Set position for subsystem
    -
    -
    - setPriority(int) - - Method in class com.technototes.library.logger.entry.Entry -
    -
    -
    - Set's the priority for this log line (handy for telemetry overflow) -
    -
    -
    - setPriority(Differential.DifferentialPriority) - - Method in class com.technototes.library.util.Differential -
    -
    -
    Sets the priority for the differential.
    -
    -
    - setRunMode(DcMotor.RunMode) - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Set the runmode for the motor
    -
    -
    - setServoRange(double) - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - setSpeed(double) - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Sets the (clipped) speed for the motor
    -
    -
    - setSpeed(double) - - Method in class com.technototes.library.hardware.motor.Motor -
    -
    -
    Set speed of motor
    -
    -
    - setSpeed(double) - - Method in class com.technototes.library.hardware.motor.MotorGroup -
    -
     
    -
    - setSpeed(double) - - Method in class com.technototes.library.subsystem.motor.MotorSubsystem -
    -
    -
    Set the speed of the primary motors in subsystem
    -
    -
    - setState(Command.CommandState) - - Method in interface com.technototes.library.command.Command -
    -
    -
    Set the command state: DEFINITELY DO NOT USE THIS!
    -
    -
    - setTargetPosition(double) - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - setTargetTolerance(double) - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - setTriggerThreshold(double) - - Method in class com.technototes.library.control.AxisBase -
    -
    -
    Set threshold
    -
    -
    - setTriggerThreshold(double) - - Method in class com.technototes.library.control.CommandAxis -
    -
     
    -
    - setVelocity(double) - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Set velocity of motor in tps
    -
    -
    - setVelocity(double) - - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup -
    -
     
    -
    - setVolume(float) - - Method in class com.technototes.library.hardware.Speaker -
    -
    -
    Deprecated.
    -   -
    -
    - share - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the PS4 game controller
    -
    -
    - SHARE - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    PS4 Share button
    -
    -
    - SimpleMecanumDrivebaseSubsystem<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in - com.technototes.library.subsystem.drivebase -
    -
    -
    Class for mecanum/xdrive drivebases
    -
    -
    - SimpleMecanumDrivebaseSubsystem(Motor<T>, Motor<T>, Motor<T>, - Motor<T>) - - Constructor for class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem -
    -
    -
    Create mecanum drivebase
    -
    -
    - SimpleMecanumDrivebaseSubsystem(DoubleSupplier, Motor<T>, Motor<T>, - Motor<T>, Motor<T>) - - Constructor for class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem -
    -
    -
    Create mecanum drivebase
    -
    -
    - sleep(double) - - Method in interface com.technototes.library.command.Command -
    -
    -
    Delay the command for some time
    -
    -
    - sleep(DoubleSupplier) - - Method in interface com.technototes.library.command.Command -
    -
    -
    Delay the command for some time
    -
    -
    - slider() - - Element in annotation interface com.technototes.library.logger.Log.NumberSlider -
    -
    -
    The color for the slider slide
    -
    -
    - sliderBackground() - - Element in annotation interface com.technototes.library.logger.Log.NumberSlider -
    -
    -
    The color for the slider background
    -
    -
    - SmartConsumer<T> - Interface in - com.technototes.library.util -
    -
    -
    - This is a functional interface, when 'accept' is invoked, will only invoke the - 'consume' method when a different value is provided. -
    -
    -
    - SOME_ACTIVE - - Enum constant in enum class com.technototes.library.control.Binding.Type -
    -
     
    -
    - Speaker - - Class in - com.technototes.library.hardware -
    -
    -
    Deprecated.
    -
    -
    - Speaker(float, String...) - - Constructor for class com.technototes.library.hardware.Speaker -
    -
    -
    Deprecated.
    -   -
    -
    - Speaker(String...) - - Constructor for class com.technototes.library.hardware.Speaker -
    -
    -
    Deprecated.
    -   -
    -
    - square - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the PS4 game controller
    -
    -
    - SQUARE - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    PS4 Square button
    -
    -
    - start - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the XBox game controller
    -
    -
    - start(String) - - Method in class com.technototes.library.hardware.Speaker -
    -
    -
    Deprecated.
    -   -
    -
    - START - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    PS4/XBox Start button
    -
    -
    - startAt(double) - - Method in class com.technototes.library.hardware.servo.Servo -
    -
    -
    Deprecated.
    -
    Set position for the servo and return this
    -
    -
    - startAt(double) - - Method in class com.technototes.library.hardware.servo.ServoGroup -
    -
    -
    Deprecated.
    -   -
    -
    - STARTED - - Enum constant in enum class com.technototes.library.command.Command.CommandState -
    -
    -
    The command has been triggered
    -
    -
    - stateMap - - Static variable in interface com.technototes.library.command.Command -
    -
    -
    The Command to Current State of the Command lookup
    -
    -
    - Stick - - Interface in - com.technototes.library.control -
    -
    -
    Interface for objects that behave as sticks
    -
    -
    - stickButton - - Variable in class com.technototes.library.control.GamepadStick -
    -
    -
    The objects for the stick button
    -
    -
    - stop() - - Method in class com.technototes.library.hardware.Speaker -
    -
    -
    Deprecated.
    -   -
    -
    - stop() - - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem -
    -
     
    -
    - stop() - - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem -
    -
     
    -
    - stop() - - Method in class com.technototes.library.subsystem.motor.MotorSubsystem -
    -
     
    -
    - stopRumble() - - Method in class com.technototes.library.control.GamepadBase -
    -
    -
    Stop rumbling on the gamepad
    -
    -
    - StringEntry - - Class in - com.technototes.library.logger.entry -
    -
     
    -
    - StringEntry(String, Supplier<String>, int, Color, String, Color) - - Constructor for class com.technototes.library.logger.entry.StringEntry -
    -
     
    -
    - Subsystem - - Interface in - com.technototes.library.subsystem -
    -
     
    -
    - supplier - - Variable in class com.technototes.library.logger.entry.Entry -
    -
    -
    The function called to get the value to display
    -
    -
    -

    T

    -
    -
    - tag - - Variable in class com.technototes.library.logger.entry.Entry -
    -
    -
    String to use a 'header' (calculated from name and color)
    -
    -
    - TankDrivebaseSubsystem<T - extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in - com.technototes.library.subsystem.drivebase -
    -
    -
    Class for drivebase subsystems
    -
    -
    - TankDrivebaseSubsystem(Motor<T>, Motor<T>) - - Constructor for class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem -
    -
    -
    Create tank drivebase
    -
    -
    - tare() - - Method in class com.technototes.library.hardware.motor.EncodedMotor -
    -
    -
    Zero the encoder
    -
    -
    - tare() - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - telemetry - - Variable in class com.technototes.library.structure.CommandOpMode -
    -
     
    -
    - terminate() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
     
    -
    - terminateOpMode() - - Method in class com.technototes.library.command.CommandScheduler -
    -
    -
    Forcefully halt the opmode
    -
    -
    - tertiary - - Variable in class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    - timeMap - - Static variable in interface com.technototes.library.command.Command -
    -
    -
    The Command to Total Time Spent Running lookup
    -
    -
    - toggle(Command, Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    - For scheduling a pair of "opposite" commands for toggling when something is or is - not being toggled -
    -
    -
    - toggleEnabled() - - Method in interface com.technototes.library.general.Enablable -
    -
    -
    Toggle whether this object is enabled or not
    -
    -
    - tolerance(int) - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    - toString() - - Method in class com.technototes.library.logger.entry.BooleanEntry -
    -
     
    -
    - toString() - - Method in class com.technototes.library.logger.entry.Entry -
    -
    -
    The String for the logged item
    -
    -
    - toString() - - Method in class com.technototes.library.logger.entry.NumberBarEntry -
    -
     
    -
    - toString() - - Method in class com.technototes.library.logger.entry.NumberEntry -
    -
     
    -
    - toString() - - Method in class com.technototes.library.logger.entry.NumberSliderEntry -
    -
     
    -
    - toString() - - Method in class com.technototes.library.logger.entry.StringEntry -
    -
     
    -
    - translateTargetPosition(double) - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - triangle - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the PS4 game controller
    -
    -
    - TRIANGLE - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    PS4 Triangle button
    -
    -
    - trueColor() - - Element in annotation interface com.technototes.library.logger.Log.Boolean -
    -
    -
    The color for the true String
    -
    -
    - trueFormat() - - Element in annotation interface com.technototes.library.logger.Log.Boolean -
    -
    -
    The format for when the boolean returns true
    -
    -
    - trueValue() - - Element in annotation interface com.technototes.library.logger.Log.Boolean -
    -
    -
    Store the string when the annotated method returns true
    -
    -
    -

    U

    -
    -
    - universalLoop() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Runs constantly during all periods
    -
    -
    - up - - Variable in class com.technototes.library.control.GamepadDpad -
    -
    -
    The objects for the dpad buttons
    -
    -
    - update() - - Method in class com.technototes.library.hardware.servo.ServoProfiler -
    -
     
    -
    - update(double) - - Method in class com.technototes.library.util.Integral -
    -
    -
    - Update the accumulated value for the number of seconds since last update -
    -
    -
    - uponInit() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Runs once when op mode is initialized
    -
    -
    - uponStart() - - Method in class com.technototes.library.structure.CommandOpMode -
    -
    -
    Runs once when op mode is started
    -
    -
    -

    V

    -
    -
    - value() - - Method in interface com.technototes.library.hardware.sensor.IColorSensor -
    -
    -
    Get HSV value (not entire HSV, just 'V')
    -
    -
    - value() - - Element in annotation interface com.technototes.library.logger.Log.Logs -
    -
     
    -
    - value() - - Element in annotation interface com.technototes.library.logger.LogConfig.Blacklist -
    -
    -
    The blacklisted opmodes
    -
    -
    - value() - - Element in annotation interface com.technototes.library.logger.LogConfig.Whitelist -
    -
    -
    The whitelisted opmodes
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.library.command.Command.CommandState -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.library.control.Binding.Type -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.library.control.GamepadBase.Axis -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.library.structure.CommandOpMode.OpModeState -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.library.util.Alliance -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.library.util.Color -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - valueOf(String) - - Static method in enum class com.technototes.library.util.Differential.DifferentialPriority -
    -
    -
    - Returns the enum constant of this class with the specified name. -
    -
    -
    - values() - - Static method in enum class com.technototes.library.command.Command.CommandState -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - values() - - Static method in enum class com.technototes.library.control.Binding.Type -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - values() - - Static method in enum class com.technototes.library.control.GamepadBase.Axis -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - values() - - Static method in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - values() - - Static method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - values() - - Static method in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - values() - - Static method in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - values() - - Static method in enum class com.technototes.library.structure.CommandOpMode.OpModeState -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - values() - - Static method in enum class com.technototes.library.util.Alliance -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - values() - - Static method in enum class com.technototes.library.util.Color -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - values() - - Static method in enum class com.technototes.library.util.Differential.DifferentialPriority -
    -
    -
    - Returns an array containing the constants of this enum class, in the order they are - declared. -
    -
    -
    - velocity(PIDFCoefficients) - - Method in class com.technototes.library.hardware2.MotorBuilder -
    -
     
    -
    -

    W

    -
    -
    - WaitCommand - - Class in - com.technototes.library.command -
    -
    -
    A command to do nothing but wait for a span of time.
    -
    -
    - WaitCommand(double) - - Constructor for class com.technototes.library.command.WaitCommand -
    -
    -
    Create a wait command for a fixed number of seconds
    -
    -
    - WaitCommand(DoubleSupplier) - - Constructor for class com.technototes.library.command.WaitCommand -
    -
    -
    - Create a wait command for a number of seconds that can be calculated when the - commannd is triggered -
    -
    -
    - waitUntil(BooleanSupplier) - - Method in interface com.technototes.library.command.Command -
    -
    -
    After this command, wait until the condition function is true
    -
    -
    - whenInverseToggled(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    - Schedule the command to be run when the input has only stopped being toggled -
    -
    -
    - whenPressed(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    Schedule a command to be run once the input is pressed.
    -
    -
    - whenPressedReleased(Command, Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    - For scheduling a pair commands for when the input is pressed and released. -
    -
    -
    - whenReleased(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    Schedule a command to be run once the input is released.
    -
    -
    - whenToggled(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    - Schedule a command to be run when the input was just toggled (From pressed to - released, or released to pressed) -
    -
    -
    - whileInverseToggled(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    - Schedule the command to run over & over while the input is *not* changing It - will be canceled once the input is toggled. -
    -
    -
    - whilePressed(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    - Schedule a command to be run over & over while the input is pressed, but once - it's released, the command will be cancelled. -
    -
    -
    - whilePressedContinuous(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    - Schedule a command to be run over & over while the input is pressed -
    -
    -
    - whilePressedOnce(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    - Schedule a command to be run while the input is pressed, but only once, and if the - command takes so long that the input is released, the command will be cancelled. -
    -
    -
    - whilePressedReleased(Command, Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    - For scheduling a pair commands for while the input is pressed and released. -
    -
    -
    - whileReleased(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    - Schedule a command to be run over & over while the input is released, but once - it's pressed, the command will be cancelled. -
    -
    -
    - whileReleasedOnce(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    - Schdule the command to be run when the input is released, but only once! -
    -
    -
    - whileToggled(Command) - - Method in interface com.technototes.library.control.CommandInput -
    -
    -
    Schedule the command to be run while the input is changing.
    -
    -
    - WHITE - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    - withTimeout(double) - - Method in interface com.technototes.library.command.Command -
    -
    -
    - Runs this command until it either finishes, or the timeout has elapsed -
    -
    -
    -

    X

    -
    -
    - x - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the XBox game controller
    -
    -
    - x - - Variable in class com.technototes.library.logger.entry.Entry -
    -
    -
    The index (in the list) of the entry
    -
    -
    - X - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    XBox X button
    -
    -
    - xAxis - - Variable in class com.technototes.library.control.GamepadStick -
    -
    -
    The objects for the stick axis
    -
    -
    -

    Y

    -
    -
    - y - - Variable in class com.technototes.library.control.GamepadBase -
    -
    -
    The button objects for the XBox game controller
    -
    -
    - Y - - Enum constant in enum class com.technototes.library.control.GamepadBase.Button -
    -
    -
    XBox Y button
    -
    -
    - yAxis - - Variable in class com.technototes.library.control.GamepadStick -
    -
    -
    The objects for the stick axis
    -
    -
    - YELLOW - - Enum constant in enum class com.technototes.library.util.Color -
    -
     
    -
    -

    Z

    -
    -
    - zero() - - Method in interface com.technototes.library.hardware.sensor.IGyro -
    -
    -
    Zeroes the current heading (in default units)
    -
    -
    - zero() - - Method in class com.technototes.library.util.Integral -
    -
    -
    Set the value to zero
    -
    -
    - zeroEncoder() - - Method in interface com.technototes.library.hardware.sensor.encoder.Encoder -
    -
    -
    zero the encoder
    -
    -
    - zeroEncoder() - - Method in class com.technototes.library.hardware.sensor.encoder.ExternalEncoder -
    -
    -
    Set the current device value as "zero"
    -
    -
    - zeroEncoder() - - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder -
    -
     
    -
    - A B C D E F G H I J L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Constant Field Values -
    -
    -
    - + + +Index (RobotLibrary API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Index

    +
    +A B C D E F G H I J L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Constant Field Values +

    A

    +
    +
    accept(T) - Method in interface com.technototes.library.util.SmartConsumer
    +
    +
    The public interface for a SmartConsumer: accept should be invoked, not consume :)
    +
    +
    addCommands(Command...) - Method in class com.technototes.library.command.CommandGroup
    +
    +
    Add a command to the group
    +
    +
    additionalInitConditions() - Method in class com.technototes.library.structure.CommandOpMode
    +
     
    +
    addRequirements(Subsystem...) - Method in interface com.technototes.library.command.Command
    +
    +
    Add requirement subsystems to command
    +
    +
    addSongs(String...) - Method in class com.technototes.library.hardware.Speaker
    +
    +
    Deprecated.
    +
    ALL_ACTIVE - Enum constant in enum class com.technototes.library.control.Binding.Type
    +
     
    +
    Alliance - Enum Class in com.technototes.library.util
    +
    +
    An enumeration to specify which alliance the bot is on (Red, Blue, or None)
    +
    +
    Alliance.Blue - Annotation Interface in com.technototes.library.util
    +
    +
    Not sure what this is for.
    +
    +
    Alliance.Red - Annotation Interface in com.technototes.library.util
    +
    +
    Not sure what this is for.
    +
    +
    Alliance.Selector<T> - Class in com.technototes.library.util
    +
    +
    This feels over-engineered, but it's probably for some obnoxious Java thing, + unfortunate.
    +
    +
    alongWith(Command...) - Method in interface com.technototes.library.command.Command
    +
    +
    Run this command in parallel with additional commands
    +
    +
    alpha() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    +
    +
    Get the alpha (transparency) of the color
    +
    +
    analog(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    analog(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    AnalogBuilder - Class in com.technototes.library.hardware2
    +
    +
    TODO: Remove this.
    +
    +
    AnalogBuilder(int) - Constructor for class com.technototes.library.hardware2.AnalogBuilder
    +
     
    +
    AnalogBuilder(AnalogSensor) - Constructor for class com.technototes.library.hardware2.AnalogBuilder
    +
     
    +
    AnalogBuilder(String) - Constructor for class com.technototes.library.hardware2.AnalogBuilder
    +
     
    +
    AnalogSensor - Class in com.technototes.library.hardware.sensor
    +
    +
    Class for analog sensors
    +
    +
    AnalogSensor(AnalogInput) - Constructor for class com.technototes.library.hardware.sensor.AnalogSensor
    +
    +
    Make an analog sensor
    +
    +
    AnalogSensor(String) - Constructor for class com.technototes.library.hardware.sensor.AnalogSensor
    +
    +
    Make an analog sensor
    +
    +
    andThen(Command...) - Method in interface com.technototes.library.command.Command
    +
    +
    Run a command or series of ParallelCommands after this one
    +
    +
    anyCancelled - Variable in class com.technototes.library.command.CommandGroup
    +
    +
    Have *any* of the command list been cancelled
    +
    +
    apply(UnaryOperator<T>) - Method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    arcadeDrive(double, double) - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    +
     
    +
    argb() - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor
    +
     
    +
    argb() - Method in class com.technototes.library.hardware.sensor.ColorSensor
    +
     
    +
    argb() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    +
     
    +
    asConditional(BooleanSupplier) - Method in interface com.technototes.library.command.Command
    +
    +
    Creates a conditional command out of this
    +
    +
    at(double) - Method in class com.technototes.library.hardware2.ServoBuilder
    +
     
    +
    AVERAGE - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority
    +
     
    +
    AxisBase - Class in com.technototes.library.control
    +
    +
    The class to extend custom gamepad axis from
    +
    +
    AxisBase(DoubleSupplier) - Constructor for class com.technototes.library.control.AxisBase
    +
    +
    Make a GamepadAxis with the supplier
    +
    +
    AxisBase(DoubleSupplier, double) - Constructor for class com.technototes.library.control.AxisBase
    +
    +
    Make a GamepadAxis with the supplier and the threshold for the stick to behave as a button
    +
    +
    axisInstance(DoubleSupplier) - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Returns the U (extended from AxisBase) type wrapped around a simple DoubleSupplier
    +
    +
    +

    B

    +
    +
    Binding<T extends BooleanSupplier> - Interface in com.technototes.library.control
    +
    +
    Class for bindings to extend
    +
    +
    Binding.Type - Enum Class in com.technototes.library.control
    +
    +
    Button type
    +
    +
    BLACK - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    blue() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    +
    +
    Get the RGB blue of the sensor
    +
    +
    BLUE - Enum constant in enum class com.technototes.library.util.Alliance
    +
    +
    BLUE alliance selector
    +
    +
    BLUE - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    BLUE_CIRCLE - Static variable in class com.technototes.library.util.Characters
    +
     
    +
    BooleanEntry - Class in com.technototes.library.logger.entry
    +
     
    +
    BooleanEntry(String, Supplier<Boolean>, int, String, String) - Constructor for class com.technototes.library.logger.entry.BooleanEntry
    +
     
    +
    booleanSupplier - Variable in class com.technototes.library.control.ButtonBase
    +
     
    +
    brake() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
     
    +
    brake() - Method in class com.technototes.library.hardware.motor.Motor
    +
    +
    Configure the motor to *brake* when the power is set to zero.
    +
    +
    brake() - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    build() - Method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    build() - Method in class com.technototes.library.hardware2.IMUBuilder
    +
    +
    Deprecated
    +
    +
    ButtonBase - Class in com.technototes.library.control
    +
    +
    The class to extend custom gamepad buttons from
    +
    +
    ButtonBase(BooleanSupplier) - Constructor for class com.technototes.library.control.ButtonBase
    +
    +
    Create button with boolean supplier
    +
    +
    buttonInstance(BooleanSupplier) - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Great a ButtonBase type from the given BooleanSupplier
    +
    +
    bVal - Variable in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    +
    +
    The value of the enumeration
    +
    +
    bVal - Variable in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    +
    +
    deprecated
    +
    +
    +

    C

    +
    +
    calculateA(double, double, double, double) - Method in enum class com.technototes.library.util.Differential.DifferentialPriority
    +
    +
    Calculates the value for the differential output generated by averaging
    +
    +
    calculateS(double, double, double, double) - Method in enum class com.technototes.library.util.Differential.DifferentialPriority
    +
    +
    Calculates the value for the differential output generated by subtracting
    +
    +
    cancel() - Method in interface com.technototes.library.command.Command
    +
    +
    If the command is running, interrupt it such that it can be cancelled
    +
    +
    CANCELLED - Enum constant in enum class com.technototes.library.command.Command.CommandState
    +
    +
    The command has been cancelled
    +
    +
    cancelUpon(BooleanSupplier) - Method in interface com.technototes.library.command.Command
    +
    +
    Runs this command until it finishes, or until the condition supplied is true
    +
    +
    captionDivider - Variable in class com.technototes.library.logger.Logger
    +
    +
    The divider between the tag and the entry for telemetry (default ':')
    +
    +
    Characters - Class in com.technototes.library.util
    +
     
    +
    Characters() - Constructor for class com.technototes.library.util.Characters
    +
     
    +
    ChoiceCommand - Class in com.technototes.library.command
    +
    +
    A command that allows choosing among a number of commands based on variety of conditions
    +
    +
    ChoiceCommand(Pair<BooleanSupplier, Command>...) - Constructor for class com.technototes.library.command.ChoiceCommand
    +
    +
    Each pair represents a condition to check, and the command to execute if that condition is + true
    +
    +
    ChoiceCommand(BooleanSupplier, Command) - Constructor for class com.technototes.library.command.ChoiceCommand
    +
    +
    This is a simplistic ChoiceCommand that is simply a single conditional command + I *think* this will wwait until b is true
    +
    +
    clear() - Static method in interface com.technototes.library.command.Command
    +
    +
    Clear out the state, time, and requirement maps.
    +
    +
    close() - Method in class com.technototes.library.hardware.DummyDevice
    +
     
    +
    closestTo(double, double...) - Static method in class com.technototes.library.util.MathUtils
    +
    +
    Returns the value from a list which is closed to the first value.
    +
    +
    closestTo(double, int...) - Static method in class com.technototes.library.util.MathUtils
    +
    +
    Returns the value from a list which is closed to the first value.
    +
    +
    coast() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
     
    +
    coast() - Method in class com.technototes.library.hardware.motor.Motor
    +
    +
    Configure the motor to *float* when the power is set to zero.
    +
    +
    coast() - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    codriverGamepad - Variable in class com.technototes.library.structure.CommandOpMode
    +
    +
    Command gamepad objects
    +
    +
    color(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    Color - Enum Class in com.technototes.library.util
    +
    +
    Enum for Colors and some formatting
    +
    +
    ColorBuilder - Class in com.technototes.library.hardware2
    +
    +
    TODO: Remove this.
    +
    +
    ColorBuilder(ColorSensor) - Constructor for class com.technototes.library.hardware2.ColorBuilder
    +
     
    +
    ColorBuilder(String) - Constructor for class com.technototes.library.hardware2.ColorBuilder
    +
     
    +
    ColorDistanceSensor - Class in com.technototes.library.hardware.sensor
    +
     
    +
    ColorDistanceSensor(ColorRangeSensor) - Constructor for class com.technototes.library.hardware.sensor.ColorDistanceSensor
    +
     
    +
    ColorDistanceSensor(String) - Constructor for class com.technototes.library.hardware.sensor.ColorDistanceSensor
    +
     
    +
    colorRange(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    ColorRangeBuilder - Class in com.technototes.library.hardware2
    +
    +
    TODO: Remove this.
    +
    +
    ColorRangeBuilder(ColorRangeSensor) - Constructor for class com.technototes.library.hardware2.ColorRangeBuilder
    +
     
    +
    ColorRangeBuilder(String) - Constructor for class com.technototes.library.hardware2.ColorRangeBuilder
    +
     
    +
    ColorSensor - Class in com.technototes.library.hardware.sensor
    +
    +
    Class for color sensors
    +
    +
    ColorSensor(ColorSensor) - Constructor for class com.technototes.library.hardware.sensor.ColorSensor
    +
    +
    Make a color Sensor
    +
    +
    ColorSensor(String) - Constructor for class com.technototes.library.hardware.sensor.ColorSensor
    +
    +
    Make a color sensor
    +
    +
    com.technototes.library - package com.technototes.library
    +
     
    +
    com.technototes.library.command - package com.technototes.library.command
    +
     
    +
    com.technototes.library.control - package com.technototes.library.control
    +
     
    +
    com.technototes.library.general - package com.technototes.library.general
    +
     
    +
    com.technototes.library.hardware - package com.technototes.library.hardware
    +
     
    +
    com.technototes.library.hardware.motor - package com.technototes.library.hardware.motor
    +
     
    +
    com.technototes.library.hardware.sensor - package com.technototes.library.hardware.sensor
    +
     
    +
    com.technototes.library.hardware.sensor.encoder - package com.technototes.library.hardware.sensor.encoder
    +
     
    +
    com.technototes.library.hardware.servo - package com.technototes.library.hardware.servo
    +
     
    +
    com.technototes.library.hardware2 - package com.technototes.library.hardware2
    +
     
    +
    com.technototes.library.logger - package com.technototes.library.logger
    +
     
    +
    com.technototes.library.logger.entry - package com.technototes.library.logger.entry
    +
     
    +
    com.technototes.library.structure - package com.technototes.library.structure
    +
     
    +
    com.technototes.library.subsystem - package com.technototes.library.subsystem
    +
     
    +
    com.technototes.library.subsystem.drivebase - package com.technototes.library.subsystem.drivebase
    +
     
    +
    com.technototes.library.subsystem.motor - package com.technototes.library.subsystem.motor
    +
     
    +
    com.technototes.library.subsystem.servo - package com.technototes.library.subsystem.servo
    +
     
    +
    com.technototes.library.util - package com.technototes.library.util
    +
     
    +
    Command - Interface in com.technototes.library.command
    +
    +
    The root Command class
    +
    +
    Command.CommandState - Enum Class in com.technototes.library.command
    +
    +
    The command state enum
    +
    +
    CommandAxis - Class in com.technototes.library.control
    +
    +
    Class for command axis for the gamepad
    +
    +
    CommandAxis(DoubleSupplier) - Constructor for class com.technototes.library.control.CommandAxis
    +
    +
    Make a command axis
    +
    +
    CommandAxis(DoubleSupplier, double) - Constructor for class com.technototes.library.control.CommandAxis
    +
    +
    Make a command axis
    +
    +
    CommandBase - Class in com.technototes.library.command
    +
    +
    Deprecated.
    +
    +
    CommandBase() - Constructor for class com.technototes.library.command.CommandBase
    +
    +
    Deprecated.
    +
    CommandBinding - Class in com.technototes.library.control
    +
    +
    Command implementation of Binding
    +
    +
    CommandBinding(Binding.Type, CommandInput...) - Constructor for class com.technototes.library.control.CommandBinding
    +
     
    +
    CommandBinding(CommandInput...) - Constructor for class com.technototes.library.control.CommandBinding
    +
     
    +
    CommandButton - Class in com.technototes.library.control
    +
    +
    Class for command buttons for gamepad
    +
    +
    CommandButton(BooleanSupplier) - Constructor for class com.technototes.library.control.CommandButton
    +
    +
    Make command button
    +
    +
    CommandGamepad - Class in com.technototes.library.control
    +
    +
    Class for command gamepads that specifies class params
    +
    +
    CommandGamepad(Gamepad) - Constructor for class com.technototes.library.control.CommandGamepad
    +
    +
    Make command gamepad
    +
    +
    CommandGroup - Class in com.technototes.library.command
    +
    +
    Root class for all command groups (Sequential, Parallel, etc...) + WARNING: You probably will be better served by the specific CommandGroup subclasses, rather than + using this one directly.
    +
    +
    CommandGroup(boolean, Command...) - Constructor for class com.technototes.library.command.CommandGroup
    +
    +
    Create a command group with commands
    +
    +
    CommandInput<T extends ButtonBase> - Interface in com.technototes.library.control
    +
    +
    Class for gamepad-command integration
    +
    +
    commandMap - Variable in class com.technototes.library.command.CommandGroup
    +
    +
    This is a map from the command to whether it has been run
    +
    +
    CommandOpMode - Class in com.technototes.library.structure
    +
    +
    Class for command based op modes
    +
    +
    CommandOpMode() - Constructor for class com.technototes.library.structure.CommandOpMode
    +
     
    +
    CommandOpMode.OpModeState - Enum Class in com.technototes.library.structure
    +
    +
    Enum for op mode state
    +
    +
    CommandScheduler - Class in com.technototes.library.command
    +
    +
    This is a "singleton" object for scheduling commands.
    +
    +
    ConditionalCommand - Class in com.technototes.library.command
    +
    +
    Simple class for commands that require a certain condition to be true to run
    +
    +
    ConditionalCommand(BooleanSupplier) - Constructor for class com.technototes.library.command.ConditionalCommand
    +
    +
    This makes a "wait" command
    +
    +
    ConditionalCommand(BooleanSupplier, Command) - Constructor for class com.technototes.library.command.ConditionalCommand
    +
    +
    Make a conditional command
    +
    +
    ConditionalCommand(BooleanSupplier, Command, Command) - Constructor for class com.technototes.library.command.ConditionalCommand
    +
    +
    Make a conditional command
    +
    +
    constrain(double, double, double) - Static method in class com.technototes.library.util.MathUtils
    +
    +
    Deprecated. 
    +
    +
    constrain(int, int, int) - Static method in class com.technototes.library.util.MathUtils
    +
    +
    Deprecated. 
    +
    +
    Constraints(double, double, double) - Constructor for class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    +
     
    +
    consume(T) - Method in interface com.technototes.library.util.SmartConsumer
    +
    +
    The 'consume' function
    +
    +
    countCancel - Variable in class com.technototes.library.command.CommandGroup
    +
    +
    Should a cancelled command be considered 'finished'
    +
    +
    countCancel() - Method in class com.technototes.library.command.CommandGroup
    +
    +
    Specify that this CommandGroup should count a cancellation as 'completed'
    +
    +
    create(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    create(Command, Subsystem...) - Static method in interface com.technototes.library.command.Command
    +
    +
    This is a helper to create a new command from an existing command, but with additional + subsystem requirements
    +
    +
    create(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    crServo(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    crServo(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    CRServoBuilder - Class in com.technototes.library.hardware2
    +
    +
    TODO: Remove this.
    +
    +
    CRServoBuilder(int) - Constructor for class com.technototes.library.hardware2.CRServoBuilder
    +
     
    +
    CRServoBuilder(CRServo) - Constructor for class com.technototes.library.hardware2.CRServoBuilder
    +
     
    +
    CRServoBuilder(String) - Constructor for class com.technototes.library.hardware2.CRServoBuilder
    +
     
    +
    CYAN - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    CYCLE - Static variable in class com.technototes.library.util.Characters
    +
     
    +
    +

    D

    +
    +
    DARK_GRAY - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    deadline(Command...) - Method in interface com.technototes.library.command.Command
    +
    +
    Runs all the commands specified in parallel *until this command is completed*
    +
    +
    DEFAULT_TRIGGER_THRESHOLD - Static variable in class com.technototes.library.control.AxisBase
    +
    +
    The default trigger threshold
    +
    +
    degrees() - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Set angle format to degrees
    +
    +
    degrees() - Method in class com.technototes.library.hardware2.IMUBuilder
    +
    +
    Deprecated
    +
    +
    device - Variable in class com.technototes.library.hardware.HardwareDevice
    +
    +
    Deprecated.
    +
    device - Variable in class com.technototes.library.subsystem.DeviceSubsystem
    +
     
    +
    DeviceSubsystem<T extends HardwareDevice<?>> - Class in com.technototes.library.subsystem
    +
    +
    class for subsystems
    +
    +
    DeviceSubsystem(T) - Constructor for class com.technototes.library.subsystem.DeviceSubsystem
    +
    +
    Create a subsystem
    +
    +
    DIFFERENCE - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority
    +
     
    +
    Differential - Class in com.technototes.library.util
    +
     
    +
    Differential(DoubleConsumer, DoubleConsumer) - Constructor for class com.technototes.library.util.Differential
    +
    +
    Create differential from two consumers
    +
    +
    Differential(DoubleConsumer, DoubleConsumer, Differential.DifferentialPriority) - Constructor for class com.technototes.library.util.Differential
    +
    +
    Create differential from two consumers
    +
    +
    Differential.DifferentialPriority - Enum Class in com.technototes.library.util
    +
    +
    Enum for the priority of the differential.
    +
    +
    digital(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    digital(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    DigitalBuilder - Class in com.technototes.library.hardware2
    +
    +
    TODO: Remove this.
    +
    +
    DigitalBuilder(int) - Constructor for class com.technototes.library.hardware2.DigitalBuilder
    +
    +
    Don't use this in the future
    +
    +
    DigitalBuilder(DigitalChannel) - Constructor for class com.technototes.library.hardware2.DigitalBuilder
    +
    +
    Don't use this in the future
    +
    +
    DigitalBuilder(String) - Constructor for class com.technototes.library.hardware2.DigitalBuilder
    +
    +
    Don't use this in the future
    +
    +
    DigitalSensor - Class in com.technototes.library.hardware.sensor
    +
    +
    Class for digital sensors
    +
    +
    DigitalSensor(DigitalChannel) - Constructor for class com.technototes.library.hardware.sensor.DigitalSensor
    +
    +
    Make a digital sensor
    +
    +
    DigitalSensor(String) - Constructor for class com.technototes.library.hardware.sensor.DigitalSensor
    +
    +
    Make a digital sensor
    +
    +
    direction(DcMotorSimple.Direction) - Method in class com.technototes.library.hardware2.CRServoBuilder
    +
     
    +
    direction(DcMotorSimple.Direction) - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    direction(Servo.Direction) - Method in class com.technototes.library.hardware2.ServoBuilder
    +
     
    +
    disable() - Method in class com.technototes.library.control.CommandGamepad
    +
     
    +
    disable() - Method in interface com.technototes.library.general.Enablable
    +
    +
    Disable the object
    +
    +
    disable() - Method in class com.technototes.library.hardware2.ColorRangeBuilder
    +
     
    +
    disable() - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    distance(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    DistanceBuilder - Class in com.technototes.library.hardware2
    +
    +
    TODO: Remove this.
    +
    +
    DistanceBuilder(DistanceSensor) - Constructor for class com.technototes.library.hardware2.DistanceBuilder
    +
     
    +
    DistanceBuilder(String) - Constructor for class com.technototes.library.hardware2.DistanceBuilder
    +
     
    +
    doubleSupplier - Variable in class com.technototes.library.control.AxisBase
    +
     
    +
    down - Variable in class com.technototes.library.control.GamepadDpad
    +
    +
    The objects for the dpad buttons
    +
    +
    dpad - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The dpad object
    +
    +
    dpadDown - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    dpadLeft - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    dpadRight - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    dpadUp - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    drive(double, double) - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    +
     
    +
    drive(double, double, double) - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    +
     
    +
    drive(double, double, double, double) - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    +
     
    +
    DrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.subsystem.drivebase
    +
    +
    Class for DriveBase subsystems
    +
    +
    DrivebaseSubsystem(Motor<T>...) - Constructor for class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    +
    +
    Create a drivebase subsystem
    +
    +
    DrivebaseSubsystem(DoubleSupplier, Motor<T>...) - Constructor for class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    +
    +
    Create a drivebase subsystem
    +
    +
    driverGamepad - Variable in class com.technototes.library.structure.CommandOpMode
    +
    +
    Command gamepad objects
    +
    +
    DUCK - Static variable in class com.technototes.library.util.Characters
    +
     
    +
    DummyDevice<T> - Class in com.technototes.library.hardware
    +
    +
    This isn't worth actually doing.
    +
    +
    DummyDevice(T) - Constructor for class com.technototes.library.hardware.DummyDevice
    +
     
    +
    duringInit() - Element in annotation interface com.technototes.library.logger.LogConfig.Run
    +
    +
    Run the log during the init Period
    +
    +
    duringRun() - Element in annotation interface com.technototes.library.logger.LogConfig.Run
    +
    +
    Run the log during the teleop Period
    +
    +
    +

    E

    +
    +
    Enablable<T extends Enablable<T>> - Interface in com.technototes.library.general
    +
    +
    Interface for anything that can be enabled/disabled
    +
    +
    enable() - Method in class com.technototes.library.control.CommandGamepad
    +
     
    +
    enable() - Method in interface com.technototes.library.general.Enablable
    +
    +
    Enable the object
    +
    +
    enable() - Method in class com.technototes.library.hardware2.ColorRangeBuilder
    +
     
    +
    enable() - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    EncodedMotor<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.hardware.motor
    +
    +
    Class for encoded motors
    +
    +
    EncodedMotor(String) - Constructor for class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Make encoded motor, with the default encoder configured
    +
    +
    EncodedMotor(String, Encoder) - Constructor for class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Make encoded motor
    +
    +
    EncodedMotor(T) - Constructor for class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Make encoded motor, with the default encoder configured
    +
    +
    EncodedMotor(T, Encoder) - Constructor for class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Make encoded motor
    +
    +
    EncodedMotorGroup<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.hardware.motor
    +
    +
    Class for encoded motor groups
    +
    +
    EncodedMotorGroup(EncodedMotor<T>, Motor<T>...) - Constructor for class com.technototes.library.hardware.motor.EncodedMotorGroup
    +
    +
    Create an encoded motor groupM
    +
    +
    EncodedMotorSubsystem - Class in com.technototes.library.subsystem.motor
    +
    +
    Class for encoded motor subsystems
    +
    +
    EncodedMotorSubsystem(EncodedMotor<?>) - Constructor for class com.technototes.library.subsystem.motor.EncodedMotorSubsystem
    +
    +
    Create encoded motor subsystem
    +
    +
    Encoder - Interface in com.technototes.library.hardware.sensor.encoder
    +
    +
    Interfaces for encoders to use
    +
    +
    end() - Method in class com.technototes.library.structure.CommandOpMode
    +
    +
    Runs once when op mode is ended
    +
    +
    end(boolean) - Method in interface com.technototes.library.command.Command
    +
    +
    End the command
    +
    +
    end(boolean) - Method in class com.technototes.library.command.CommandGroup
    +
    +
    This stops the command group from executing
    +
    +
    END - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    +
     
    +
    Entry<T> - Class in com.technototes.library.logger.entry
    +
    +
    The root class for logging entries
    +
    +
    Entry(String, Supplier<T>, int) - Constructor for class com.technototes.library.logger.entry.Entry
    +
    +
    Create an entry with name, value, index
    +
    +
    execute() - Method in interface com.technototes.library.command.Command
    +
    +
    Execute the command
    +
    +
    execute() - Method in class com.technototes.library.command.CommandBase
    +
    +
    Deprecated.
    +
    Execute the command
    +
    +
    execute() - Method in class com.technototes.library.command.CommandGroup
    +
     
    +
    execute() - Method in class com.technototes.library.command.ConditionalCommand
    +
     
    +
    execute() - Method in class com.technototes.library.command.WaitCommand
    +
     
    +
    EXECUTING - Enum constant in enum class com.technototes.library.command.Command.CommandState
    +
    +
    The command is running normally
    +
    +
    expandedPWM() - Method in class com.technototes.library.hardware2.ServoBuilder
    +
     
    +
    expandedRange() - Method in class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    ExternalEncoder - Class in com.technototes.library.hardware.sensor.encoder
    +
    +
    A wrapper around an AnalogInput that enables "zeroing" for usefulness
    +
    +
    ExternalEncoder(AnalogInput) - Constructor for class com.technototes.library.hardware.sensor.encoder.ExternalEncoder
    +
    +
    Create an ExternalEncoder from an arbitrary AnalogInput
    +
    +
    ExternalEncoder(String) - Constructor for class com.technototes.library.hardware.sensor.encoder.ExternalEncoder
    +
    +
    Create an ExternalEncoder from an arbitrary AnalogInput device
    +
    +
    +

    F

    +
    +
    falseValue() - Element in annotation interface com.technototes.library.logger.Log.Boolean
    +
    +
    Store the string when the annotated method returns false
    +
    +
    FINISHED - Enum constant in enum class com.technototes.library.command.Command.CommandState
    +
    +
    The command has completed successfully
    +
    +
    flMotor - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    +
    +
    Drive motors
    +
    +
    format() - Element in annotation interface com.technototes.library.logger.Log
    +
    +
    The format for the logged String
    +
    +
    format(Object) - Method in enum class com.technototes.library.util.Color
    +
    +
    Format the supplied object with the HTML to become this color
    +
    +
    format(String, Object...) - Method in enum class com.technototes.library.util.Color
    +
    +
    Format the supplied object with the HTML and a format String to become this color
    +
    +
    forward() - Method in class com.technototes.library.hardware2.CRServoBuilder
    +
     
    +
    forward() - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    forward() - Method in class com.technototes.library.hardware2.ServoBuilder
    +
     
    +
    FORWARD - Enum constant in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction
    +
     
    +
    frMotor - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    +
    +
    Drive motors
    +
    +
    +

    G

    +
    +
    gain(float) - Method in class com.technototes.library.hardware2.ColorRangeBuilder
    +
     
    +
    GAMEPAD - Static variable in class com.technototes.library.util.Characters
    +
     
    +
    gamepad1 - Variable in class com.technototes.library.structure.CommandOpMode
    +
     
    +
    gamepad2 - Variable in class com.technototes.library.structure.CommandOpMode
    +
     
    +
    GamepadBase<T extends ButtonBase,U extends AxisBase> - Class in com.technototes.library.control
    +
    +
    A class to extend gamepads from, it does the internal processing for you.
    +
    +
    GamepadBase(Gamepad, Class<T>, Class<U>) - Constructor for class com.technototes.library.control.GamepadBase
    +
    +
    Creates a gamepad with these parameters
    +
    +
    GamepadBase.Axis - Enum Class in com.technototes.library.control
    +
    +
    Axis enum for all axis on gamepad
    +
    +
    GamepadBase.Button - Enum Class in com.technototes.library.control
    +
    +
    Button enum for all buttons on gamepad
    +
    +
    GamepadDpad<T extends ButtonBase> - Class in com.technototes.library.control
    +
    +
    A class for dpads
    +
    +
    GamepadDpad(T, T, T, T) - Constructor for class com.technototes.library.control.GamepadDpad
    +
    +
    Create dpad with 4 buttons
    +
    +
    GamepadStick<T extends AxisBase,U extends ButtonBase> - Class in com.technototes.library.control
    +
    +
    A class for gamepad sticks
    +
    +
    GamepadStick(T, T, U) - Constructor for class com.technototes.library.control.GamepadStick
    +
    +
    Make a gamepad stick
    +
    +
    get() - Method in interface com.technototes.library.command.Command
    +
    +
    Gets the current state of the command (Supplier<CommandState>)
    +
    +
    get() - Method in interface com.technototes.library.control.Binding
    +
     
    +
    get() - Method in class com.technototes.library.hardware.DummyDevice
    +
     
    +
    get() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
     
    +
    get() - Method in class com.technototes.library.hardware.motor.Motor
    +
    +
    Gets the *speed* of the motor when it's used as a DoubleSupplier
    +
    +
    get() - Method in class com.technototes.library.logger.entry.Entry
    +
     
    +
    get(Binding.Type) - Method in interface com.technototes.library.control.Binding
    +
    +
    Get this as boolean for the type
    +
    +
    get(Class<? extends OpMode>) - Static method in enum class com.technototes.library.util.Alliance
    +
    +
    Get the alliance set for the OpMode passed in, if it's set in the annotation
    +
    +
    getAllDeviceList() - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    +
    +
    Deprecated.
    +
    getAllDevices() - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    +
    +
    Deprecated.
    +
    Get all devices in group
    +
    +
    getAllDevices() - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup
    +
     
    +
    getAllDevices() - Method in class com.technototes.library.hardware.motor.MotorGroup
    +
     
    +
    getAllDevices() - Method in class com.technototes.library.hardware.servo.ServoGroup
    +
    +
    Deprecated.
    +
    getAngle() - Method in interface com.technototes.library.control.Stick
    +
    +
    Returns the angle of the stick
    +
    +
    getAngularOrientation() - Method in class com.technototes.library.hardware.sensor.IMU
    +
     
    +
    getAngularOrientation(AngleUnit) - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Gets the Angular orientation of the IMU
    +
    +
    getAngularVelocity() - Method in class com.technototes.library.hardware.sensor.IMU
    +
     
    +
    getAngularVelocity(AngleUnit) - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Gets the angular velocity (in default units)
    +
    +
    getAsBoolean() - Method in interface com.technototes.library.control.Binding
    +
     
    +
    getAsBoolean() - Method in class com.technototes.library.control.ButtonBase
    +
    +
    Same as isPressed()
    +
    +
    getAsButton() - Method in class com.technototes.library.control.CommandAxis
    +
     
    +
    getAsButton(double) - Method in class com.technototes.library.control.CommandAxis
    +
     
    +
    getAsDouble() - Method in class com.technototes.library.control.AxisBase
    +
    +
    Returns the double from the axis
    +
    +
    getAsDouble() - Method in interface com.technototes.library.hardware.Sensored
    +
    +
    Deprecated.
    +
    getAverage() - Method in class com.technototes.library.util.Differential
    +
    +
    Gets the current average of the two differential inputs, + equating to one of the outputs
    +
    +
    getAxis(GamepadBase.Axis) - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Returns an axis
    +
    +
    getAxisAsBoolean(GamepadBase.Axis) - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Returns an axis as boolean
    +
    +
    getAxisAsDouble(GamepadBase.Axis) - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Returns an axis as double
    +
    +
    getButton(GamepadBase.Button) - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Returns a button
    +
    +
    getButtonAsBoolean(GamepadBase.Button) - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Returns a button as boolean (same as isPressed)
    +
    +
    getColor() - Method in enum class com.technototes.library.util.Alliance
    +
    +
    Get the alliance color (Red, Blue, or Black)
    +
    +
    getConnectionInfo() - Method in class com.technototes.library.hardware.DummyDevice
    +
     
    +
    getCorrectedVelocity() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    getCurrent(Subsystem) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    This gets the command currently using the subsystem provided
    +
    +
    getCurrentPosition() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    getCurrentPosition() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    getCurrentSong() - Method in class com.technototes.library.hardware.Speaker
    +
    +
    Deprecated.
    +
    getDefault(Subsystem) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Get the default command that is running on the subsystem provided
    +
    +
    getDefaultCommand() - Method in interface com.technototes.library.subsystem.Subsystem
    +
     
    +
    getDefaultType() - Method in interface com.technototes.library.control.Binding
    +
     
    +
    getDefaultType() - Method in class com.technototes.library.control.CommandBinding
    +
     
    +
    getDeviation() - Method in class com.technototes.library.util.Differential
    +
    +
    Gets the current deviation between the two differential inputs and the average, + equating to one of the outputs
    +
    +
    getDevice() - Method in class com.technototes.library.hardware.HardwareDevice
    +
    +
    Deprecated.
    +
    Get encapsulated device
    +
    +
    getDevice() - Method in class com.technototes.library.subsystem.DeviceSubsystem
    +
    +
    Get the devices for this subsystem
    +
    +
    getDeviceName() - Method in class com.technototes.library.hardware.DummyDevice
    +
     
    +
    getDifferentialPriority() - Method in class com.technototes.library.util.Differential
    +
    +
    Gets the priority for the difference output.
    +
    +
    getDirection() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    getDistance() - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor
    +
     
    +
    getDistance(DistanceUnit) - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor
    +
     
    +
    getDistance(DistanceUnit) - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor
    +
     
    +
    getDistance(DistanceUnit) - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor
    +
    +
    Deprecated.
    +
    Get the value with a specified distance Unit
    +
    +
    getDistanceFromCenter() - Method in interface com.technototes.library.control.Stick
    +
    +
    Returns the stick's distance from the center
    +
    +
    getDpad() - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Returns the Dpad object
    +
    +
    getEncoder() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Get the encoder object
    +
    +
    getFollowerist() - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    +
    +
    Deprecated.
    +
    getFollowers() - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    +
    +
    Deprecated.
    +
    Get the followers for the lead device
    +
    +
    getFollowers() - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup
    +
     
    +
    getFollowers() - Method in class com.technototes.library.hardware.motor.MotorGroup
    +
     
    +
    getFollowers() - Method in class com.technototes.library.hardware.servo.ServoGroup
    +
    +
    Deprecated.
    +
    getGamepad() - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Returns the encapsulated gamepad
    +
    +
    getGyro() - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    +
    +
    Get the Gyro angle
    +
    +
    getHexValue() - Method in enum class com.technototes.library.util.Color
    +
    +
    Get the hex value
    +
    +
    getIndex() - Method in class com.technototes.library.logger.entry.Entry
    +
    +
    Get the index for the entry
    +
    +
    getInstance() - Static method in class com.technototes.library.command.CommandScheduler
    +
    +
    Get (or create) the singleton CommandScheduler object
    +
    +
    getInstance() - Method in class com.technototes.library.control.CommandAxis
    +
     
    +
    getInstance() - Method in class com.technototes.library.control.CommandButton
    +
     
    +
    getInstance() - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Return instance of class parameter
    +
    +
    getInverted() - Method in class com.technototes.library.control.ButtonBase
    +
     
    +
    getInverted() - Method in interface com.technototes.library.general.Invertable
    +
    +
    Get current inversion
    +
    +
    getInverted() - Method in class com.technototes.library.hardware.motor.Motor
    +
    +
    Returns whether the motor is inverted.
    +
    +
    getInverted() - Method in class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    getLast() - Method in interface com.technototes.library.util.SmartConsumer
    +
     
    +
    getLeftStick() - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Returns the left stick
    +
    +
    getLight() - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor
    +
     
    +
    getLogger() - Method in class com.technototes.library.structure.CommandOpMode
    +
    +
    Get the op mode's logger
    +
    +
    getManufacturer() - Method in class com.technototes.library.hardware.DummyDevice
    +
     
    +
    getMap() - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
     
    +
    getMax(double...) - Static method in class com.technototes.library.util.MathUtils
    +
    +
    Get the max of supplied doubles
    +
    +
    getMax(int...) - Static method in class com.technototes.library.util.MathUtils
    +
    +
    Get the max of supplied ints
    +
    +
    getMaxAccel() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    getMaxAcceleration() - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    +
     
    +
    getMaxVel() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    getMaxVelocity() - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    +
     
    +
    getMultiplier() - Method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction
    +
     
    +
    getName() - Method in class com.technototes.library.logger.entry.Entry
    +
    +
    Get the name
    +
    +
    getOpModeRuntime() - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Gets the number of seconds that the opmode has been executing
    +
    +
    getOpModeRuntime() - Method in class com.technototes.library.structure.CommandOpMode
    +
    +
    Get the opmode runtime
    +
    +
    getOpModeState() - Method in class com.technototes.library.structure.CommandOpMode
    +
    +
    Get op mode state
    +
    +
    getPosition() - Method in interface com.technototes.library.hardware.sensor.encoder.Encoder
    +
     
    +
    getPosition() - Method in class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    Get servo position
    +
    +
    getPosition() - Method in class com.technototes.library.subsystem.servo.ServoSubsystem
    +
    +
    Get subsystem servo position
    +
    +
    getPriority() - Method in class com.technototes.library.logger.entry.Entry
    +
    +
    Get Priority for the entry
    +
    +
    getProportion() - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    +
     
    +
    getRawVelocity() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    getRequirements() - Method in interface com.technototes.library.command.Command
    +
    +
    Return the subsystem requirements for this command
    +
    +
    getRightStick() - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Returns the right stick
    +
    +
    getRuntime() - Method in interface com.technototes.library.command.Command
    +
    +
    Return the amount of time since the command was first initialized
    +
    +
    getScale(double...) - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    +
    +
    This will give you a *positive* value to scale the value to such that + the largest value of the list will be |1| (negative or positive).
    +
    +
    getSeconds() - Method in class com.technototes.library.command.WaitCommand
    +
     
    +
    getSensorValue() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Get the encoder position value
    +
    +
    getSensorValue() - Method in class com.technototes.library.hardware.sensor.AnalogSensor
    +
     
    +
    getSensorValue() - Method in class com.technototes.library.hardware.sensor.encoder.ExternalEncoder
    +
    +
    Get the sensor value (relative to the assigned zero)
    +
    +
    getSensorValue() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    getSensorValue() - Method in interface com.technototes.library.hardware.Sensored
    +
    +
    Deprecated.
    +
    Get the sensor value
    +
    +
    getSensorValue() - Method in class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    getServo() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    getSpeed() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Gets the power set for the motor
    +
    +
    getSpeed() - Method in class com.technototes.library.hardware.motor.Motor
    +
    +
    Gets the power value for the motor
    +
    +
    getSpeed() - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    +
    +
    Override this one, I guess? Not sure how useful it is.
    +
    +
    getSpeed() - Method in class com.technototes.library.subsystem.motor.MotorSubsystem
    +
    +
    Get the speed of the motors in the subsystem
    +
    +
    getState() - Method in interface com.technototes.library.command.Command
    +
    +
    Return the command state: Probably don't use this
    +
    +
    getSuppliers() - Method in interface com.technototes.library.control.Binding
    +
     
    +
    getSuppliers() - Method in class com.technototes.library.control.CommandBinding
    +
     
    +
    getTargetPosition() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    getTargetTolerance() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    getTriggerThreshold() - Method in class com.technototes.library.control.AxisBase
    +
    +
    Gets the trigger threshold
    +
    +
    getUnit() - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor
    +
     
    +
    getUnit() - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor
    +
     
    +
    getUnit() - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor
    +
    +
    Deprecated.
    +
    Get the current distance unit
    +
    +
    getValue() - Method in class com.technototes.library.hardware.sensor.DigitalSensor
    +
    +
    Get the sensor value as a boolean
    +
    +
    getValue() - Method in class com.technototes.library.util.Integral
    +
    +
    Get the current accumulation
    +
    +
    getVelocity() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Get the power for the motor (Velocity, I guess?)
    +
    +
    getVersion() - Method in class com.technototes.library.hardware.DummyDevice
    +
     
    +
    getVersion() - Static method in class com.technototes.library.RobotLibrary
    +
    +
    Get library version
    +
    +
    getVolume() - Method in class com.technototes.library.hardware.Speaker
    +
    +
    Deprecated.
    +
    getXAxis() - Method in class com.technototes.library.control.GamepadDpad
    +
    +
    Return x axis double (treating dpad as stick)
    +
    +
    getXAxis() - Method in class com.technototes.library.control.GamepadStick
    +
     
    +
    getXAxis() - Method in interface com.technototes.library.control.Stick
    +
    +
    Return x axis double
    +
    +
    getXSupplier() - Method in interface com.technototes.library.control.Stick
    +
    +
    Return x axis supplier
    +
    +
    getYAxis() - Method in class com.technototes.library.control.GamepadDpad
    +
    +
    Return y axis double (treating dpad as stick)
    +
    +
    getYAxis() - Method in class com.technototes.library.control.GamepadStick
    +
     
    +
    getYAxis() - Method in interface com.technototes.library.control.Stick
    +
    +
    Return y axis double
    +
    +
    getYSupplier() - Method in interface com.technototes.library.control.Stick
    +
    +
    Return y axis supplier
    +
    +
    green() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    +
    +
    Get the RGB green of the sensor
    +
    +
    GREEN - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    gyroHeading() - Method in interface com.technototes.library.hardware.sensor.IGyro
    +
    +
    The heading (in default units)
    +
    +
    gyroHeading() - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Get gyro heading
    +
    +
    gyroHeading(AngleUnit) - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Get the gyro heading in the provided units
    +
    +
    gyroHeadingInDegrees() - Method in interface com.technototes.library.hardware.sensor.IGyro
    +
    +
    The heading (in degrees)
    +
    +
    gyroHeadingInDegrees() - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Gets the gyro heading in degrees
    +
    +
    gyroHeadingInRadians() - Method in interface com.technototes.library.hardware.sensor.IGyro
    +
    +
    The heading (in radians)
    +
    +
    gyroHeadingInRadians() - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Gets the gyro heading in radians
    +
    +
    gyroSupplier - Variable in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    +
    +
    Override this to get the gyroscope heading.
    +
    +
    +

    H

    +
    +
    HardwareBuilder<T> - Class in com.technototes.library.hardware2
    +
    +
    TODO: Remove this.
    +
    +
    HardwareBuilder(int) - Constructor for class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    HardwareBuilder(String) - Constructor for class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    HardwareBuilder(T) - Constructor for class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    HardwareDevice<T extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in com.technototes.library.hardware
    +
    +
    Deprecated.
    +
    +
    HardwareDevice(String) - Constructor for class com.technototes.library.hardware.HardwareDevice
    +
    +
    Deprecated.
    +
    Make a hardware device with the string to get from hardwaremap
    +
    +
    HardwareDevice(T) - Constructor for class com.technototes.library.hardware.HardwareDevice
    +
    +
    Deprecated.
    +
    Make a hardware device
    +
    +
    HardwareDeviceGroup<T extends HardwareDevice> - Interface in com.technototes.library.hardware
    +
    +
    Deprecated.
    +
    +
    hardwareMap - Variable in class com.technototes.library.structure.CommandOpMode
    +
     
    +
    hardwareMap - Static variable in class com.technototes.library.hardware.HardwareDevice
    +
    +
    Deprecated.
    +
    Hardware map object for stuff
    +
    +
    hsv() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    +
    +
    Get HSV as an int
    +
    +
    hsvArray() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    +
     
    +
    hue() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    +
    +
    Get HSV hue
    +
    +
    +

    I

    +
    +
    IColorSensor - Interface in com.technototes.library.hardware.sensor
    +
     
    +
    IDistanceSensor - Interface in com.technototes.library.hardware.sensor
    +
     
    +
    idle(DcMotor.ZeroPowerBehavior) - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    ignoreCancel() - Method in class com.technototes.library.command.CommandGroup
    +
    +
    Specify that this CommandGroup should NOT count cancellation as 'completed'
    +
    +
    IGyro - Interface in com.technototes.library.hardware.sensor
    +
    +
    An interface for a single-angle gyroscope
    +
    +
    ILightSensor - Interface in com.technototes.library.hardware.sensor
    +
     
    +
    imu(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    IMU - Class in com.technototes.library.hardware.sensor
    +
    +
    Class for the IMU (Inertial Movement Units) that implements the IGyro interface
    +
    +
    IMU(IMU, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection) - Constructor for class com.technototes.library.hardware.sensor.IMU
    +
    +
    Make an imu
    +
    +
    IMU(IMU, IMU.Parameters) - Constructor for class com.technototes.library.hardware.sensor.IMU
    +
    +
    Make an imu
    +
    +
    IMU(String, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection) - Constructor for class com.technototes.library.hardware.sensor.IMU
    +
    +
    Make an imu
    +
    +
    IMU(String, IMU.Parameters) - Constructor for class com.technototes.library.hardware.sensor.IMU
    +
    +
    Make an imu
    +
    +
    IMU.AxesSigns - Enum Class in com.technototes.library.hardware.sensor
    +
    +
    The direction of the axes signs when remapping the axes
    +
    +
    IMUBuilder - Class in com.technototes.library.hardware2
    +
    +
    TODO: Remove this.
    +
    +
    IMUBuilder(BNO055IMUImpl) - Constructor for class com.technototes.library.hardware2.IMUBuilder
    +
    +
    Deprecated
    +
    +
    IMUBuilder(String) - Constructor for class com.technototes.library.hardware2.IMUBuilder
    +
    +
    deprecated
    +
    +
    IMUBuilder.AxesSigns - Enum Class in com.technototes.library.hardware2
    +
    +
    This is duplicated in the IMU class
    +
    +
    incrementPosition(double) - Method in class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    index() - Element in annotation interface com.technototes.library.logger.Log.Boolean
    +
    +
    Store index for this annotation (position in telemetry)
    +
    +
    index() - Element in annotation interface com.technototes.library.logger.Log
    +
    +
    Store index for this annotation (position in telemetry)
    +
    +
    index() - Element in annotation interface com.technototes.library.logger.Log.Number
    +
    +
    Store index for this annotation (position in telemetry)
    +
    +
    INIT - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    +
     
    +
    initEntries - Variable in class com.technototes.library.logger.Logger
    +
     
    +
    initialize() - Method in interface com.technototes.library.command.Command
    +
    +
    Init the command
    +
    +
    initialize() - Method in class com.technototes.library.command.CommandGroup
    +
    +
    Mark all commands in the group as not yet run
    +
    +
    initialize(IMU.Parameters) - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Initialize the IMU
    +
    +
    INITIALIZING - Enum constant in enum class com.technototes.library.command.Command.CommandState
    +
    +
    The command is initializing after having been triggered
    +
    +
    initLoop() - Method in class com.technototes.library.structure.CommandOpMode
    +
    +
    Runs constantly when op mode is initialized, yet not started
    +
    +
    initMap(HardwareMap) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    initUpdate() - Method in class com.technototes.library.logger.Logger
    +
    +
    Update the logged init items in temeletry
    +
    +
    input() - Method in class com.technototes.library.hardware2.DigitalBuilder
    +
    +
    Don't use this in the future
    +
    +
    inRange(double) - Method in class com.technototes.library.util.Range
    +
    +
    Check if the value is in the range
    +
    +
    Integral - Class in com.technototes.library.util
    +
    +
    A simple Observation-based integral calculator over time
    +
    +
    Integral() - Constructor for class com.technototes.library.util.Integral
    +
    +
    Initialize it with a value of 0
    +
    +
    Integral(double) - Constructor for class com.technototes.library.util.Integral
    +
    +
    Initialize it with the value c
    +
    +
    INTERRUPTED - Enum constant in enum class com.technototes.library.command.Command.CommandState
    +
    +
    The command is pending cancellation (but has not yet processed the cancellation)
    +
    +
    invert() - Method in interface com.technototes.library.general.Invertable
    +
    +
    Toggle inversion
    +
    +
    invert() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Invert the motor (toggle inversion)
    +
    +
    invert() - Method in class com.technototes.library.hardware.motor.Motor
    +
    +
    Invert the motor (toggle inversion)
    +
    +
    invert() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    Invertable<T extends Invertable<T>> - Interface in com.technototes.library.general
    +
    +
    Interface for anything that can be inverted
    +
    +
    isAtPosition(double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Is the motor at the specified position
    +
    +
    isAtTarget() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    isCancelled() - Method in interface com.technototes.library.command.Command
    +
    +
    Exactly what it says
    +
    +
    isDisabled() - Method in interface com.technototes.library.general.Enablable
    +
     
    +
    isEnabled() - Method in class com.technototes.library.control.ButtonBase
    +
     
    +
    isEnabled() - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Is the gamepad (and all bound commands from it!) enabled?
    +
    +
    isEnabled() - Method in class com.technototes.library.control.GamepadDpad
    +
     
    +
    isEnabled() - Method in class com.technototes.library.control.GamepadStick
    +
     
    +
    isEnabled() - Method in interface com.technototes.library.general.Enablable
    +
     
    +
    isFinished() - Method in interface com.technototes.library.command.Command
    +
    +
    Return if the command is finished
    +
    +
    isFinished() - Method in class com.technototes.library.command.CommandBase
    +
    +
    Deprecated.
    +
    Is this command finished
    +
    +
    isFinished() - Method in class com.technototes.library.command.CommandGroup
    +
    +
    MUST IMPLEMENT IN SUBCLASSES:
    +
    +
    isFinished() - Method in class com.technototes.library.command.ConditionalCommand
    +
     
    +
    isFinished() - Method in class com.technototes.library.command.ParallelCommandGroup
    +
     
    +
    isFinished() - Method in class com.technototes.library.command.ParallelDeadlineGroup
    +
     
    +
    isFinished() - Method in class com.technototes.library.command.ParallelRaceGroup
    +
    +
    Is this finished?
    +
    +
    isFinished() - Method in class com.technototes.library.command.SequentialCommandGroup
    +
    +
    Returns if all the commands are finished
    +
    +
    isFinished() - Method in class com.technototes.library.command.WaitCommand
    +
     
    +
    isInverseToggled() - Method in class com.technototes.library.control.ButtonBase
    +
    +
    Returns if the button is untoggled
    +
    +
    isJustInverseToggled() - Method in class com.technototes.library.control.ButtonBase
    +
    +
    Returns if the button is just untoggled
    +
    +
    isJustPressed() - Method in class com.technototes.library.control.ButtonBase
    +
    +
    Returns if the button is just pressed
    +
    +
    isJustReleased() - Method in class com.technototes.library.control.ButtonBase
    +
    +
    Returns if the button is just released
    +
    +
    isJustToggled() - Method in class com.technototes.library.control.ButtonBase
    +
    +
    Returns if the button is just toggled
    +
    +
    isPreRelease() - Static method in class com.technototes.library.RobotLibrary
    +
    +
    Get if the library is a pre release
    +
    +
    isPressed() - Method in class com.technototes.library.control.ButtonBase
    +
    +
    Returns if the button is pressed
    +
    +
    isPrime(int) - Static method in class com.technototes.library.util.MathUtils
    +
    +
    Calculate if the supplied number is prime
    +
    +
    isReleased() - Method in class com.technototes.library.control.ButtonBase
    +
    +
    Returns if the button is released
    +
    +
    isRumbling() - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Is the gamepad rumbling
    +
    +
    isRunning() - Method in interface com.technototes.library.command.Command
    +
    +
    Is the command in some state of running/started/finished/cancelled
    +
    +
    isState(CommandOpMode.OpModeState...) - Method in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    +
    +
    Check if other states are this state
    +
    +
    isToggled() - Method in class com.technototes.library.control.ButtonBase
    +
    +
    Returns if the button is toggled
    +
    +
    IterativeCommand - Class in com.technototes.library.command
    +
     
    +
    IterativeCommand(Function<Integer, Command>, int) - Constructor for class com.technototes.library.command.IterativeCommand
    +
    +
    iterative command for an int
    +
    +
    IterativeCommand(Function<Integer, Command>, int, BooleanSupplier) - Constructor for class com.technototes.library.command.IterativeCommand
    +
     
    +
    IterativeCommand(Function<Integer, Command>, BooleanSupplier) - Constructor for class com.technototes.library.command.IterativeCommand
    +
     
    +
    IterativeCommand(Function<T, Command>, T, T, Function<T, T>) - Constructor for class com.technototes.library.command.IterativeCommand
    +
    +
    iterative command for anything
    +
    +
    IterativeCommand(Function<T, Command>, T, T, Function<T, T>, BooleanSupplier) - Constructor for class com.technototes.library.command.IterativeCommand
    +
     
    +
    +

    J

    +
    +
    joystickDrive(double, double, double) - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    +
     
    +
    joystickDriveWithGyro(double, double, double, double) - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    +
     
    +
    justFinished() - Method in interface com.technototes.library.command.Command
    +
    +
    Is this command finished?
    +
    +
    justFinishedNoCancel() - Method in interface com.technototes.library.command.Command
    +
    +
    Is this command completed?
    +
    +
    justStarted() - Method in interface com.technototes.library.command.Command
    +
    +
    Has the command just be started?
    +
    +
    +

    L

    +
    +
    lastCommand - Variable in class com.technototes.library.command.SequentialCommandGroup
    +
     
    +
    led(boolean) - Method in class com.technototes.library.hardware2.ColorRangeBuilder
    +
     
    +
    left - Variable in class com.technototes.library.control.GamepadDpad
    +
    +
    The objects for the dpad buttons
    +
    +
    LEFT_BUMPER - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    Left bumper button
    +
    +
    LEFT_STICK_BUTTON - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    Button when clicking the left stick
    +
    +
    LEFT_STICK_X - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    +
    +
    Left stick's horizontal axis
    +
    +
    LEFT_STICK_Y - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    +
    +
    Left stick's vertical axis
    +
    +
    LEFT_TRIGGER - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    +
    +
    Left Trigger's axis
    +
    +
    leftBumper - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    leftSide - Variable in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    +
    +
    Drive motors
    +
    +
    leftStick - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The stick objects
    +
    +
    leftStickButton - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    leftStickX - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The axis objects
    +
    +
    leftStickY - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The axis objects
    +
    +
    leftTrigger - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The axis objects
    +
    +
    LIGHT_GRAY - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    LIME - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    Log - Annotation Interface in com.technototes.library.logger
    +
    +
    The root annotation for annotation logging, also doubles as a basic string log
    +
    +
    Log.Boolean - Annotation Interface in com.technototes.library.logger
    +
     
    +
    Log.Logs - Annotation Interface in com.technototes.library.logger
    +
     
    +
    Log.Number - Annotation Interface in com.technototes.library.logger
    +
    +
    Log a number
    +
    +
    LogConfig - Annotation Interface in com.technototes.library.logger
    +
    +
    Annotations for configuring Logs
    +
    +
    LogConfig.AllowList - Annotation Interface in com.technototes.library.logger
    +
    +
    Annotation for allowing Opmodes to log this item
    +
    +
    LogConfig.DenyList - Annotation Interface in com.technototes.library.logger
    +
    +
    Annotation for denying Opmodes to log this item
    +
    +
    LogConfig.Disabled - Annotation Interface in com.technototes.library.logger
    +
    +
    Annotation to completely disable the entry
    +
    +
    LogConfig.Run - Annotation Interface in com.technototes.library.logger
    +
    +
    Annotation for determining when logged item will be sent to Telemetry
    +
    +
    Loggable - Interface in com.technototes.library.logger
    +
    +
    All classes with annotations for logging must extend this all the way up the hierarchy up to the op mode
    +
    +
    Logger - Class in com.technototes.library.logger
    +
    +
    The class to manage logging
    +
    +
    Logger(OpMode) - Constructor for class com.technototes.library.logger.Logger
    +
    +
    Instantiate the logger
    +
    +
    +

    M

    +
    +
    MAGENTA - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    map - Static variable in interface com.technototes.library.util.SmartConsumer
    +
    +
    The map of values that have been consumed.
    +
    +
    map(double, double, double, double, double) - Static method in class com.technototes.library.util.MathUtils
    +
    +
    Scale a value originally between in_min and in_max to be the same ratio when mapped to + out_min and out_max.
    +
    +
    MapUtils - Class in com.technototes.library.util
    +
     
    +
    MapUtils() - Constructor for class com.technototes.library.util.MapUtils
    +
     
    +
    MathUtils - Class in com.technototes.library.util
    +
    +
    Class with various math functions
    +
    +
    MathUtils() - Constructor for class com.technototes.library.util.MathUtils
    +
     
    +
    max - Variable in class com.technototes.library.util.Range
    +
    +
    The maximum value of the range
    +
    +
    maxAcceleration - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    +
     
    +
    maxSpeed - Variable in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem
    +
    +
    Max speed
    +
    +
    maxVelocity - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    +
     
    +
    middle() - Method in class com.technototes.library.util.Range
    +
    +
    Get the 'middle' of the range
    +
    +
    min - Variable in class com.technototes.library.util.Range
    +
    +
    The minimum value of the range
    +
    +
    mode(DcMotor.RunMode) - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    mode(DigitalChannel.Mode) - Method in class com.technototes.library.hardware2.DigitalBuilder
    +
    +
    Don't use this in the future
    +
    +
    motor(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    motor(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    Motor<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.hardware.motor
    +
    +
    Class for motors
    +
    +
    Motor(String) - Constructor for class com.technototes.library.hardware.motor.Motor
    +
    +
    Create a motor
    +
    +
    Motor(T) - Constructor for class com.technototes.library.hardware.motor.Motor
    +
    +
    Create a motor
    +
    +
    MotorBuilder - Class in com.technototes.library.hardware2
    +
    +
    TODO: Remove this.
    +
    +
    MotorBuilder(int) - Constructor for class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    MotorBuilder(DcMotorEx) - Constructor for class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    MotorBuilder(String) - Constructor for class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    MotorEncoder - Class in com.technototes.library.hardware.sensor.encoder
    +
    +
    Wraps a motor instance to provide corrected velocity counts and allow reversing independently of the corresponding + slot's motor direction
    +
    +
    MotorEncoder(DcMotorEx) - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    MotorEncoder(DcMotorEx, ElapsedTime) - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    MotorEncoder(EncodedMotor<DcMotorEx>) - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    MotorEncoder(String) - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    MotorEncoder.Direction - Enum Class in com.technototes.library.hardware.sensor.encoder
    +
     
    +
    MotorGroup<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.hardware.motor
    +
    +
    Class for a group of motors
    +
    +
    MotorGroup(Motor<T>...) - Constructor for class com.technototes.library.hardware.motor.MotorGroup
    +
    +
    Make a motor group
    +
    +
    MotorSubsystem<T extends Motor<?>> - Class in com.technototes.library.subsystem.motor
    +
    +
    Class for motor subsystems
    +
    +
    MotorSubsystem(T) - Constructor for class com.technototes.library.subsystem.motor.MotorSubsystem
    +
    +
    Create motor subsystem
    +
    +
    MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED - Static variable in class com.technototes.library.structure.CommandOpMode
    +
     
    +
    msStuckDetectStop - Variable in class com.technototes.library.structure.CommandOpMode
    +
    +
    Deprecated.
    +
    +
    +

    N

    +
    +
    name - Variable in class com.technototes.library.logger.entry.Entry
    +
    +
    The name of the Entry
    +
    +
    name() - Element in annotation interface com.technototes.library.logger.Log.Boolean
    +
    +
    Store the name for this annotation to be be beside
    +
    +
    name() - Element in annotation interface com.technototes.library.logger.Log
    +
    +
    Store the name for this annotation to be be beside
    +
    +
    name() - Element in annotation interface com.technototes.library.logger.Log.Number
    +
    +
    Store the name for this annotation to be be beside
    +
    +
    NEUTRAL - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority
    +
     
    +
    NNN - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    +
    +
    Negative, Negative, Negative
    +
    +
    NNN - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    +
    +
    deprecated
    +
    +
    NNP - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    +
    +
    Negative, Negative, Positive
    +
    +
    NNP - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    +
    +
    deprecated
    +
    +
    NO_COLOR - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    NONE - Enum constant in enum class com.technototes.library.util.Alliance
    +
    +
    NO ALLIANCE SELECTED
    +
    +
    NONE_ACTIVE - Enum constant in enum class com.technototes.library.control.Binding.Type
    +
     
    +
    NPN - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    +
    +
    Negative, Positive, Negative
    +
    +
    NPN - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    +
    +
    deprecated
    +
    +
    NPP - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    +
    +
    Negative, Positive, Positive
    +
    +
    NPP - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    +
    +
    deprecated
    +
    +
    numberColor - Variable in class com.technototes.library.logger.entry.NumberEntry
    +
     
    +
    NumberEntry - Class in com.technototes.library.logger.entry
    +
     
    +
    NumberEntry(String, Supplier<Number>, int) - Constructor for class com.technototes.library.logger.entry.NumberEntry
    +
     
    +
    +

    O

    +
    +
    of(Pair<T, U>...) - Static method in class com.technototes.library.util.MapUtils
    +
     
    +
    of(T, T) - Static method in class com.technototes.library.util.Alliance.Selector
    +
    +
    Selector factory method
    +
    +
    offset - Variable in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    onlyIf(BooleanSupplier) - Method in interface com.technototes.library.command.Command
    +
    +
    Runs this command only if the choiceCondition is met (i.e.
    +
    +
    onRange(double, double) - Method in class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    Set servo range
    +
    +
    onUnit(DistanceUnit) - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor
    +
     
    +
    onUnit(DistanceUnit) - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor
    +
     
    +
    onUnit(DistanceUnit) - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor
    +
    +
    Deprecated.
    +
    Set the distance unit
    +
    +
    ORANGE - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    output() - Method in class com.technototes.library.hardware2.DigitalBuilder
    +
    +
    Don't use this in the future
    +
    +
    +

    P

    +
    +
    ParallelCommandGroup - Class in com.technototes.library.command
    +
    +
    Command group to run commands in parallel until all of them finish
    +
    +
    ParallelCommandGroup(Command...) - Constructor for class com.technototes.library.command.ParallelCommandGroup
    +
    +
    Make parallel command group
    +
    +
    ParallelDeadlineGroup - Class in com.technototes.library.command
    +
    +
    Command group to run commands in parallel until one particular command completes
    +
    +
    ParallelDeadlineGroup(Command, Command...) - Constructor for class com.technototes.library.command.ParallelDeadlineGroup
    +
    +
    Make parallel deadline group
    +
    +
    ParallelRaceGroup - Class in com.technototes.library.command
    +
    +
    Command group to run commands in parallel until *one* is finished
    +
    +
    ParallelRaceGroup(Command...) - Constructor for class com.technototes.library.command.ParallelRaceGroup
    +
    +
    Make parallel race group
    +
    +
    parameter(Consumer<BNO055IMU.Parameters>) - Method in class com.technototes.library.hardware2.IMUBuilder
    +
    +
    Deprecated
    +
    +
    periodic() - Method in class com.technototes.library.control.ButtonBase
    +
     
    +
    periodic() - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Run the periodic functions for the controller (if the controller is enabled)
    +
    +
    periodic() - Method in class com.technototes.library.control.GamepadDpad
    +
     
    +
    periodic() - Method in class com.technototes.library.control.GamepadStick
    +
     
    +
    periodic() - Method in interface com.technototes.library.general.Periodic
    +
    +
    The periodic function
    +
    +
    periodic() - Method in class com.technototes.library.subsystem.DeviceSubsystem
    +
     
    +
    periodic() - Method in interface com.technototes.library.subsystem.Subsystem
    +
     
    +
    Periodic - Interface in com.technototes.library.general
    +
    +
    An interface for classes to have the periodic function
    +
    +
    PINK - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    PNN - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    +
    +
    Positive, Negative, Negative
    +
    +
    PNN - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    +
    +
    deprecated
    +
    +
    PNP - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    +
    +
    Positive, Negative, Positive
    +
    +
    PNP - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    +
    +
    deprecated
    +
    +
    position(double) - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    positionThreshold - Variable in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Deadzone for going to positions with encoder
    +
    +
    PPN - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    +
    +
    Positive, Positive, Negative
    +
    +
    PPN - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    +
    +
    deprecated
    +
    +
    PPP - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    +
    +
    Positive, Positive, Positive
    +
    +
    PPP - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    +
    +
    deprecated
    +
    +
    priority - Variable in class com.technototes.library.logger.entry.Entry
    +
    +
    The priority (in the telemetry list) of the entry
    +
    +
    priority() - Element in annotation interface com.technototes.library.logger.Log.Boolean
    +
    +
    Store priority for this log entry (to pick the most wanted entry over others with same index)
    +
    +
    priority() - Element in annotation interface com.technototes.library.logger.Log.Number
    +
    +
    Store priority for this log entry (to pick the most wanted entry over others with same index)
    +
    +
    priority() - Element in annotation interface com.technototes.library.logger.Log
    +
    +
    Store priority for this log entry (to pick the most wanted entry over others with same index)
    +
    +
    product - Variable in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    propagate(double) - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    +
    +
    Deprecated.
    +
    Propagate actions across the followers
    +
    +
    propogate(double) - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    +
    +
    Deprecated.
    +
    +
    propogate(double) - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup
    +
     
    +
    propogate(double) - Method in class com.technototes.library.hardware.motor.MotorGroup
    +
     
    +
    propogate(double) - Method in class com.technototes.library.hardware.servo.ServoGroup
    +
    +
    Deprecated.
    +
    proportion - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    +
     
    +
    ps_circle - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the PS4 game controller
    +
    +
    PS_CIRCLE - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    PS4 Circle (O) button
    +
    +
    ps_cross - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the PS4 game controller
    +
    +
    PS_CROSS - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    PS4 Cross (X) button
    +
    +
    ps_options - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the PS4 game controller
    +
    +
    PS_OPTIONS - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    PS4 Options button
    +
    +
    ps_share - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the PS4 game controller
    +
    +
    PS_SHARE - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    PS4 Share button
    +
    +
    ps_square - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the PS4 game controller
    +
    +
    PS_SQUARE - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    PS4 Square button
    +
    +
    ps_triangle - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the PS4 game controller
    +
    +
    PS_TRIANGLE - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    PS4 Triangle button
    +
    +
    PURPLE - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    pwmRange(double, double) - Method in class com.technototes.library.hardware2.ServoBuilder
    +
     
    +
    pythag(double...) - Static method in class com.technototes.library.util.MathUtils
    +
    +
    Calculate pythagorean theorem of any number of sides
    +
    +
    +

    R

    +
    +
    raceWith(Command...) - Method in interface com.technototes.library.command.Command
    +
    +
    Runs all the commands in parallel (including this command) until one of them finishes
    +
    +
    radians() - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Set angle format to radians
    +
    +
    radians() - Method in class com.technototes.library.hardware2.IMUBuilder
    +
    +
    Deprecated
    +
    +
    range(double, double) - Method in class com.technototes.library.hardware2.ServoBuilder
    +
     
    +
    Range - Class in com.technototes.library.util
    +
    +
    Helper class for tracking a range
    +
    +
    Range(double, double) - Constructor for class com.technototes.library.util.Range
    +
    +
    Create a range with the given minimum and maximum
    +
    +
    raw() - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    red() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    +
    +
    Get the RGB red of the sensor
    +
    +
    RED - Enum constant in enum class com.technototes.library.util.Alliance
    +
    +
    RED alliance selector
    +
    +
    RED - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    RED_SQUARE - Static variable in class com.technototes.library.util.Characters
    +
     
    +
    register() - Method in interface com.technototes.library.subsystem.Subsystem
    +
     
    +
    register(Periodic) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Register a periodic function to be run once each schedule loop
    +
    +
    remap(AxesOrder, IMUBuilder.AxesSigns) - Method in class com.technototes.library.hardware2.IMUBuilder
    +
    +
    Deprecated
    +
    +
    remapAxesAndSigns(AxesOrder, IMU.AxesSigns) - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Remaps the axes for the IMU in the order and sign provided.
    +
    +
    remapLegacyAxes(AxesOrder, IMU.AxesSigns) - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Remaps the axes for the BNO055 IMU in the order and sign provided + The SDK 8.1.1 added a new IMU class, which (delightfully) rotated + the X and Y axes around the Z axis by 90 degrees clock-wise (viewed from above) + If you have code that was using that layout, this is what you probably need to call.
    +
    +
    repeat(String, int) - Static method in class com.technototes.library.logger.Logger
    +
    +
    Repeat a String
    +
    +
    requestOpModeStop() - Method in class com.technototes.library.structure.CommandOpMode
    +
     
    +
    requirementMap - Static variable in interface com.technototes.library.command.Command
    +
    +
    The Command to Required Subsystems lookup
    +
    +
    reset() - Static method in interface com.technototes.library.util.SmartConsumer
    +
     
    +
    RESET - Enum constant in enum class com.technototes.library.command.Command.CommandState
    +
    +
    The command has just be scheduled
    +
    +
    resetDeviceConfigurationForOpMode() - Method in class com.technototes.library.hardware.DummyDevice
    +
     
    +
    resetScheduler() - Static method in class com.technototes.library.command.CommandScheduler
    +
    +
    Alex had a comment "be careful with this" and he's not wrong.
    +
    +
    Rev2MDistanceSensor - Class in com.technototes.library.hardware.sensor
    +
    +
    Deprecated.
    +
    +
    Rev2MDistanceSensor(DistanceSensor) - Constructor for class com.technototes.library.hardware.sensor.Rev2MDistanceSensor
    +
    +
    Deprecated.
    +
    Create a range sensor
    +
    +
    Rev2MDistanceSensor(String) - Constructor for class com.technototes.library.hardware.sensor.Rev2MDistanceSensor
    +
    +
    Deprecated.
    +
    Create a range sensor
    +
    +
    reverse() - Method in class com.technototes.library.hardware2.CRServoBuilder
    +
     
    +
    reverse() - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    reverse() - Method in class com.technototes.library.hardware2.ServoBuilder
    +
     
    +
    REVERSE - Enum constant in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction
    +
     
    +
    rgb() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    +
     
    +
    right - Variable in class com.technototes.library.control.GamepadDpad
    +
    +
    The objects for the dpad buttons
    +
    +
    RIGHT_BUMPER - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    Right bumper button
    +
    +
    RIGHT_STICK_BUTTON - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    Button which clicking the right stick
    +
    +
    RIGHT_STICK_X - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    +
    +
    Right stick's horizontal axis
    +
    +
    RIGHT_STICK_Y - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    +
    +
    Right stick's vertical axis
    +
    +
    RIGHT_TRIGGER - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    +
    +
    Right Trigger's axis
    +
    +
    rightBumper - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    rightSide - Variable in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    +
    +
    Drive motors
    +
    +
    rightStick - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The stick objects
    +
    +
    rightStickButton - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    rightStickX - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The axis objects
    +
    +
    rightStickY - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The axis objects
    +
    +
    rightTrigger - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The axis objects
    +
    +
    rlMotor - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    +
    +
    Drive motors
    +
    +
    RobotLibrary - Class in com.technototes.library
    +
    +
    Root class for the Robot Library (I will put important stuff here)
    +
    +
    RobotLibrary() - Constructor for class com.technototes.library.RobotLibrary
    +
     
    +
    rrMotor - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    +
    +
    Drive motors
    +
    +
    rumble() - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Rumble for about 1/8th of a second
    +
    +
    rumble(double) - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Rumble the gamepad for 'seconds'
    +
    +
    rumbleBlip() - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Run a single "RumbleBlip"
    +
    +
    rumbleBlips(int) - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Run a bunch of "RumbleBlips"
    +
    +
    run() - Method in interface com.technototes.library.command.Command
    +
    +
    Run the commmand
    +
    +
    run() - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    This is invoked from inside the CommandOpMode method, during the opCode.
    +
    +
    RUN - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    +
     
    +
    runEntries - Variable in class com.technototes.library.logger.Logger
    +
     
    +
    runLoop() - Method in class com.technototes.library.structure.CommandOpMode
    +
    +
    Runs constantly when op mode is started
    +
    +
    runOpMode() - Method in class com.technototes.library.structure.CommandOpMode
    +
     
    +
    runUpdate() - Method in class com.technototes.library.logger.Logger
    +
    +
    Update the logged run items in temeletry
    +
    +
    +

    S

    +
    +
    saturation() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    +
    +
    Get HSV saturation
    +
    +
    scale(double) - Method in class com.technototes.library.util.Range
    +
    +
    Scale the range by a given value
    +
    +
    scalePWM(double, double) - Method in class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    schedule(Command) - Method in class com.technototes.library.command.CommandGroup
    +
    +
    This should schedule the command as part of this command group, I think.
    +
    +
    schedule(Command) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule a command to run
    +
    +
    schedule(Command) - Method in class com.technototes.library.command.ParallelCommandGroup
    +
     
    +
    schedule(Command) - Method in class com.technototes.library.command.ParallelDeadlineGroup
    +
    +
    Add another command to the group to be run while waiting for the 'deadline' command to finish
    +
    +
    schedule(Command) - Method in class com.technototes.library.command.ParallelRaceGroup
    +
    +
    Add one more command to the list of commands that will be run at the same time
    +
    +
    schedule(Command) - Method in class com.technototes.library.command.SequentialCommandGroup
    +
    +
    This allows you to append another command to the Sequential Command Group
    +
    +
    schedule(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule the command to run
    +
    +
    schedule(Command, BooleanSupplier) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Register a command to be scheduled.
    +
    +
    schedule(BooleanSupplier, Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule the command to run over & over
    +
    +
    schedule(Consumer<Boolean>) - Method in class com.technototes.library.control.CommandButton
    +
     
    +
    schedule(Function<Boolean, Command>) - Method in class com.technototes.library.control.CommandButton
    +
     
    +
    schedule(Function<Double, Command>) - Method in class com.technototes.library.control.CommandAxis
    +
     
    +
    scheduleAfterOther(Command, Command) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule the 'other' command (the second one) when the 'dependency' command has + finished (but *not* been cancelled!).
    +
    +
    scheduleAfterOther(Command, Command, BooleanSupplier) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule the 'other' command (the second one) when the 'dependency' command has + finished (but *not* been cancelled!) *and* 'additionalCondition' is true.
    +
    +
    scheduleDefault(Command, Subsystem) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule the default command for a given subsystem.
    +
    +
    scheduleDpad(BiConsumer<Double, Double>) - Method in class com.technototes.library.control.CommandGamepad
    +
     
    +
    scheduleDpad(BiFunction<Double, Double, Command>) - Method in class com.technototes.library.control.CommandGamepad
    +
     
    +
    scheduleForState(Command, CommandOpMode.OpModeState...) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule a command to be run when the OpMode is one of the provided list of states.
    +
    +
    scheduleForState(Command, BooleanSupplier, CommandOpMode.OpModeState...) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule a command to be run when the OpMode is one of the provided list of states and the + 'supplier' boolean function is also true.
    +
    +
    scheduleInit(Command) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule a command to be run recurringly during the 'Init' phase of an opmode.
    +
    +
    scheduleInit(Command, BooleanSupplier) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule a command to be run recurringly during the 'Init' phase of an opmode.
    +
    +
    scheduleJoystick(Command) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedules a command to be run during Run and End states, all the time.
    +
    +
    scheduleJoystick(Command, BooleanSupplier) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedules a command to be run during Run and End states, all the time.
    +
    +
    scheduleLeftStick(BiConsumer<Double, Double>) - Method in class com.technototes.library.control.CommandGamepad
    +
     
    +
    scheduleLeftStick(BiFunction<Double, Double, Command>) - Method in class com.technototes.library.control.CommandGamepad
    +
     
    +
    scheduleOnce(Command) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule a command to run
    +
    +
    scheduleOnceForState(Command, CommandOpMode.OpModeState) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule a command to run during a particular OpModeState
    +
    +
    schedulePressed(Function<DoubleSupplier, Command>) - Method in class com.technototes.library.control.CommandAxis
    +
     
    +
    scheduleRightStick(BiConsumer<Double, Double>) - Method in class com.technototes.library.control.CommandGamepad
    +
     
    +
    scheduleRightStick(BiFunction<Double, Double, Command>) - Method in class com.technototes.library.control.CommandGamepad
    +
     
    +
    scheduleStick(Stick, BiConsumer<Double, Double>) - Method in class com.technototes.library.control.CommandGamepad
    +
     
    +
    scheduleStick(Stick, BiFunction<Double, Double, Command>) - Method in class com.technototes.library.control.CommandGamepad
    +
     
    +
    scheduleWithOther(Command, Command) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule the 'other' command (the second one) when the 'dependency' command has + just started.
    +
    +
    scheduleWithOther(Command, Command, BooleanSupplier) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Schedule the 'other' command (the second one) when the 'dependency' command has + just started *and* 'additionalCondition' is also true.
    +
    +
    select(Alliance) - Method in class com.technototes.library.util.Alliance.Selector
    +
    +
    Select the red or blue item based on the Alliance
    +
    +
    selectOf(Alliance, T, T) - Static method in class com.technototes.library.util.Alliance.Selector
    +
    +
    Based on Alliance, choose red or blue
    +
    +
    selectOf(T, T) - Method in enum class com.technototes.library.util.Alliance
    +
    +
    Select either 'a' or 'b' depending on alliance
    +
    +
    Selector(T, T) - Constructor for class com.technototes.library.util.Alliance.Selector
    +
    +
    Create a Selelector for red/blue
    +
    +
    Sensor<T extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in com.technototes.library.hardware.sensor
    +
    +
    Deprecated.
    +
    +
    Sensor(String) - Constructor for class com.technototes.library.hardware.sensor.Sensor
    +
    +
    Deprecated.
    +
    Create sensor
    +
    +
    Sensor(T) - Constructor for class com.technototes.library.hardware.sensor.Sensor
    +
    +
    Deprecated.
    +
    Create a sensor
    +
    +
    Sensored - Interface in com.technototes.library.hardware
    +
    +
    Deprecated.
    +
    +
    SequentialCommandGroup - Class in com.technototes.library.command
    +
    +
    A grouping command which runs a list of commands in sequence
    +
    +
    SequentialCommandGroup(Command...) - Constructor for class com.technototes.library.command.SequentialCommandGroup
    +
    +
    Make sequential command group.
    +
    +
    servo(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    servo(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    +
    +
    Deprecated
    +
    +
    Servo - Class in com.technototes.library.hardware.servo
    +
    +
    Deprecated.
    +
    +
    Servo(Servo) - Constructor for class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    Create servo object
    +
    +
    Servo(String) - Constructor for class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    Create servo object
    +
    +
    ServoBuilder - Class in com.technototes.library.hardware2
    +
    +
    TODO: Remove this.
    +
    +
    ServoBuilder(int) - Constructor for class com.technototes.library.hardware2.ServoBuilder
    +
     
    +
    ServoBuilder(Servo) - Constructor for class com.technototes.library.hardware2.ServoBuilder
    +
     
    +
    ServoBuilder(String) - Constructor for class com.technototes.library.hardware2.ServoBuilder
    +
     
    +
    ServoGroup - Class in com.technototes.library.hardware.servo
    +
    +
    Deprecated.
    +
    +
    ServoGroup(Servo...) - Constructor for class com.technototes.library.hardware.servo.ServoGroup
    +
    +
    Deprecated.
    +
    Create a servo group
    +
    +
    ServoProfiler - Class in com.technototes.library.hardware.servo
    +
     
    +
    ServoProfiler(Servo) - Constructor for class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    ServoProfiler.Constraints - Class in com.technototes.library.hardware.servo
    +
     
    +
    ServoSubsystem - Class in com.technototes.library.subsystem.servo
    +
    +
    Class for servo subsystems
    +
    +
    ServoSubsystem(Servo) - Constructor for class com.technototes.library.subsystem.servo.ServoSubsystem
    +
    +
    Create servo subsystem
    +
    +
    ServoSubsystem(Servo...) - Constructor for class com.technototes.library.subsystem.servo.ServoSubsystem
    +
     
    +
    set(double) - Method in class com.technototes.library.util.Integral
    +
    +
    Set the value to C
    +
    +
    setAverageOutput(double) - Method in class com.technototes.library.util.Differential
    +
    +
    Set the average of the differential.
    +
    +
    setConstraints(double, double, double) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    setConstraints(ServoProfiler.Constraints) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    setDefaultCommand(Command) - Method in interface com.technototes.library.subsystem.Subsystem
    +
     
    +
    setDeviationOutput(double) - Method in class com.technototes.library.util.Differential
    +
    +
    Set the deviation of the differential.
    +
    +
    setDirection(MotorEncoder.Direction) - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
    +
    Allows you to set the direction of the counts and velocity without modifying the motor's direction state
    +
    +
    setEnabled(boolean) - Method in class com.technototes.library.control.ButtonBase
    +
     
    +
    setEnabled(boolean) - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Enable/disable the gamepad (and all potentially bound commands!)
    +
    +
    setEnabled(boolean) - Method in class com.technototes.library.control.GamepadDpad
    +
     
    +
    setEnabled(boolean) - Method in class com.technototes.library.control.GamepadStick
    +
     
    +
    setEnabled(boolean) - Method in interface com.technototes.library.general.Enablable
    +
    +
    Set whether or not the device is enabled
    +
    +
    setEncoder(Encoder) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Explicitly set the encoder for the motor
    +
    +
    setHeading(double) - Method in interface com.technototes.library.hardware.sensor.IGyro
    +
    +
    Sets the current heading (in default units)
    +
    +
    setHeading(double) - Method in class com.technototes.library.hardware.sensor.IMU
    +
    +
    Sets the current heading to be 'new heading'
    +
    +
    setIndex(int) - Method in class com.technototes.library.logger.entry.Entry
    +
    +
    Set index
    +
    +
    setInverted(boolean) - Method in class com.technototes.library.control.ButtonBase
    +
     
    +
    setInverted(boolean) - Method in class com.technototes.library.control.CommandAxis
    +
     
    +
    setInverted(boolean) - Method in class com.technototes.library.control.CommandButton
    +
     
    +
    setInverted(boolean) - Method in interface com.technototes.library.general.Invertable
    +
    +
    Set the inversion (true -> Is inverted, false -> Not inverted)
    +
    +
    setInverted(boolean) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Set the Inverted state for the motor.
    +
    +
    setInverted(boolean) - Method in class com.technototes.library.hardware.motor.Motor
    +
    +
    Set the Inverted state for the motor.
    +
    +
    setInverted(boolean) - Method in class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    setLimits(double, double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
     
    +
    setLimits(double, double) - Method in class com.technototes.library.hardware.motor.Motor
    +
    +
    Sets the min & max values for the motor power (still clipped to -1/1)
    +
    +
    setLimits(double, double) - Method in class com.technototes.library.util.Differential
    +
    +
    Set the limits for the differential
    +
    +
    setMaxSpeed(double) - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem
    +
    +
    Set the max speed for the subsystem
    +
    +
    setOpMode(CommandOpMode) - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Set the scheduler's opmode
    +
    +
    setOutputs(double, double) - Method in class com.technototes.library.util.Differential
    +
    +
    Set both outputs for the differential
    +
    +
    setPIDFCoeffecients(double, double, double, double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Configure the PIDF constants for the motor
    +
    +
    setPIDFCoeffecients(PIDFCoefficients) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Configure the PIDF constants for the motor
    +
    +
    setPosition(double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Set the position of the motor
    +
    +
    setPosition(double) - Method in class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    Set servo position
    +
    +
    setPosition(double) - Method in class com.technototes.library.hardware.servo.ServoGroup
    +
    +
    Deprecated.
    +
    setPosition(double) - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem
    +
    +
    Set position for subsystem with existing max speed
    +
    +
    setPosition(double) - Method in class com.technototes.library.subsystem.servo.ServoSubsystem
    +
    +
    Set servo subsystem position
    +
    +
    setPosition(double, double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Set the power for the motor to try to get to the position specified.
    +
    +
    setPosition(double, double) - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup
    +
     
    +
    setPosition(double, double) - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem
    +
    +
    Set position for subsystem
    +
    +
    setPriority(int) - Method in class com.technototes.library.logger.entry.Entry
    +
    +
    Set's the priority for this log line (handy for telemetry overflow)
    +
    +
    setPriority(Differential.DifferentialPriority) - Method in class com.technototes.library.util.Differential
    +
    +
    Sets the priority for the differential.
    +
    +
    setRunMode(DcMotor.RunMode) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Set the runmode for the motor
    +
    +
    setServoRange(double) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    setSpeed(double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Sets the (clipped) speed for the motor
    +
    +
    setSpeed(double) - Method in class com.technototes.library.hardware.motor.Motor
    +
    +
    Set speed of motor
    +
    +
    setSpeed(double) - Method in class com.technototes.library.hardware.motor.MotorGroup
    +
     
    +
    setSpeed(double) - Method in class com.technototes.library.subsystem.motor.MotorSubsystem
    +
    +
    Set the speed of the primary motors in subsystem
    +
    +
    setState(Command.CommandState) - Method in interface com.technototes.library.command.Command
    +
    +
    Set the command state: DEFINITELY DO NOT USE THIS!
    +
    +
    setTargetPosition(double) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    setTargetTolerance(double) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    setTriggerThreshold(double) - Method in class com.technototes.library.control.AxisBase
    +
    +
    Set threshold
    +
    +
    setTriggerThreshold(double) - Method in class com.technototes.library.control.CommandAxis
    +
     
    +
    setVelocity(double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Set velocity of motor in tps
    +
    +
    setVelocity(double) - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup
    +
     
    +
    setVolume(float) - Method in class com.technototes.library.hardware.Speaker
    +
    +
    Deprecated.
    +
    SimpleMecanumDrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.subsystem.drivebase
    +
    +
    Class for mecanum/xdrive drivebases
    +
    +
    SimpleMecanumDrivebaseSubsystem(Motor<T>, Motor<T>, Motor<T>, Motor<T>) - Constructor for class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    +
    +
    Create mecanum drivebase
    +
    +
    SimpleMecanumDrivebaseSubsystem(DoubleSupplier, Motor<T>, Motor<T>, Motor<T>, Motor<T>) - Constructor for class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    +
    +
    Create mecanum drivebase
    +
    +
    sleep(double) - Method in interface com.technototes.library.command.Command
    +
    +
    Delay the command for some time
    +
    +
    sleep(DoubleSupplier) - Method in interface com.technototes.library.command.Command
    +
    +
    Delay the command for some time
    +
    +
    SmartConsumer<T> - Interface in com.technototes.library.util
    +
    +
    This is a functional interface, when 'accept' is invoked, will only invoke the 'consume' method + when a different value is provided.
    +
    +
    SOME_ACTIVE - Enum constant in enum class com.technototes.library.control.Binding.Type
    +
     
    +
    Speaker - Class in com.technototes.library.hardware
    +
    +
    Deprecated.
    +
    +
    Speaker(float, String...) - Constructor for class com.technototes.library.hardware.Speaker
    +
    +
    Deprecated.
    +
    Speaker(String...) - Constructor for class com.technototes.library.hardware.Speaker
    +
    +
    Deprecated.
    +
    start(String) - Method in class com.technototes.library.hardware.Speaker
    +
    +
    Deprecated.
    +
    startAt(double) - Method in class com.technototes.library.hardware.servo.Servo
    +
    +
    Deprecated.
    +
    Set position for the servo and return this
    +
    +
    startAt(double) - Method in class com.technototes.library.hardware.servo.ServoGroup
    +
    +
    Deprecated.
    +
    STARTED - Enum constant in enum class com.technototes.library.command.Command.CommandState
    +
    +
    The command has been triggered
    +
    +
    stateMap - Static variable in interface com.technototes.library.command.Command
    +
    +
    The Command to Current State of the Command lookup
    +
    +
    Stick - Interface in com.technototes.library.control
    +
    +
    Interface for objects that behave as sticks
    +
    +
    stickButton - Variable in class com.technototes.library.control.GamepadStick
    +
    +
    The objects for the stick button
    +
    +
    stop() - Method in class com.technototes.library.hardware.Speaker
    +
    +
    Deprecated.
    +
    stop() - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    +
     
    +
    stop() - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    +
     
    +
    stop() - Method in class com.technototes.library.subsystem.motor.MotorSubsystem
    +
     
    +
    stopRumble() - Method in class com.technototes.library.control.GamepadBase
    +
    +
    Stop rumbling on the gamepad
    +
    +
    StringEntry - Class in com.technototes.library.logger.entry
    +
     
    +
    StringEntry(String, Supplier<String>, int, String) - Constructor for class com.technototes.library.logger.entry.StringEntry
    +
     
    +
    Subsystem - Interface in com.technototes.library.subsystem
    +
     
    +
    supplier - Variable in class com.technototes.library.logger.entry.Entry
    +
    +
    The function called to get the value to display
    +
    +
    +

    T

    +
    +
    TankDrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.subsystem.drivebase
    +
    +
    Class for drivebase subsystems
    +
    +
    TankDrivebaseSubsystem(Motor<T>, Motor<T>) - Constructor for class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    +
    +
    Create tank drivebase
    +
    +
    tare() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    +
    +
    Zero the encoder
    +
    +
    tare() - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    telemetry - Variable in class com.technototes.library.structure.CommandOpMode
    +
     
    +
    terminate() - Method in class com.technototes.library.structure.CommandOpMode
    +
     
    +
    terminateOpMode() - Method in class com.technototes.library.command.CommandScheduler
    +
    +
    Forcefully halt the opmode
    +
    +
    timeMap - Static variable in interface com.technototes.library.command.Command
    +
    +
    The Command to Total Time Spent Running lookup
    +
    +
    toggle(Command, Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    For scheduling a pair of "opposite" commands for toggling when something + is or is not being toggled
    +
    +
    toggleEnabled() - Method in interface com.technototes.library.general.Enablable
    +
    +
    Toggle whether this object is enabled or not
    +
    +
    tolerance(int) - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    toString() - Method in class com.technototes.library.logger.entry.BooleanEntry
    +
     
    +
    toString() - Method in class com.technototes.library.logger.entry.Entry
    +
    +
    The String for the logged item
    +
    +
    toString() - Method in class com.technototes.library.logger.entry.NumberEntry
    +
     
    +
    toString() - Method in class com.technototes.library.logger.entry.StringEntry
    +
     
    +
    translateTargetPosition(double) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    trueValue() - Element in annotation interface com.technototes.library.logger.Log.Boolean
    +
    +
    Store the string when the annotated method returns true
    +
    +
    +

    U

    +
    +
    universalLoop() - Method in class com.technototes.library.structure.CommandOpMode
    +
    +
    Runs constantly during all periods
    +
    +
    up - Variable in class com.technototes.library.control.GamepadDpad
    +
    +
    The objects for the dpad buttons
    +
    +
    update() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    +
     
    +
    update(double) - Method in class com.technototes.library.util.Integral
    +
    +
    Update the accumulated value for the number of seconds since last update
    +
    +
    uponInit() - Method in class com.technototes.library.structure.CommandOpMode
    +
    +
    Runs once when op mode is initialized
    +
    +
    uponStart() - Method in class com.technototes.library.structure.CommandOpMode
    +
    +
    Runs once when op mode is started
    +
    +
    +

    V

    +
    +
    value() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    +
    +
    Get HSV value (not entire HSV, just 'V')
    +
    +
    value() - Element in annotation interface com.technototes.library.logger.Log.Logs
    +
     
    +
    value() - Element in annotation interface com.technototes.library.logger.LogConfig.AllowList
    +
    +
    The allowed opmodes
    +
    +
    value() - Element in annotation interface com.technototes.library.logger.LogConfig.DenyList
    +
    +
    The denied opmodes
    +
    +
    valueOf(String) - Static method in enum class com.technototes.library.command.Command.CommandState
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    valueOf(String) - Static method in enum class com.technototes.library.control.Binding.Type
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    valueOf(String) - Static method in enum class com.technototes.library.control.GamepadBase.Axis
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    valueOf(String) - Static method in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    valueOf(String) - Static method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    valueOf(String) - Static method in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    valueOf(String) - Static method in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    valueOf(String) - Static method in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    valueOf(String) - Static method in enum class com.technototes.library.util.Alliance
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    valueOf(String) - Static method in enum class com.technototes.library.util.Color
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    valueOf(String) - Static method in enum class com.technototes.library.util.Differential.DifferentialPriority
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    values() - Static method in enum class com.technototes.library.command.Command.CommandState
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Static method in enum class com.technototes.library.control.Binding.Type
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Static method in enum class com.technototes.library.control.GamepadBase.Axis
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Static method in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Static method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Static method in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Static method in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Static method in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Static method in enum class com.technototes.library.util.Alliance
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Static method in enum class com.technototes.library.util.Color
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Static method in enum class com.technototes.library.util.Differential.DifferentialPriority
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    velocity(PIDFCoefficients) - Method in class com.technototes.library.hardware2.MotorBuilder
    +
     
    +
    +

    W

    +
    +
    WaitCommand - Class in com.technototes.library.command
    +
    +
    A command to do nothing but wait for a span of time.
    +
    +
    WaitCommand(double) - Constructor for class com.technototes.library.command.WaitCommand
    +
    +
    Create a wait command for a fixed number of seconds
    +
    +
    WaitCommand(DoubleSupplier) - Constructor for class com.technototes.library.command.WaitCommand
    +
    +
    Create a wait command for a number of seconds that can be calculated when the commannd is + triggered
    +
    +
    waitUntil(BooleanSupplier) - Method in interface com.technototes.library.command.Command
    +
    +
    After this command, wait until the condition function is true
    +
    +
    whenInverseToggled(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule the command to be run when the input has only stopped being toggled
    +
    +
    whenPressed(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule a command to be run once the input is pressed.
    +
    +
    whenPressedReleased(Command, Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    For scheduling a pair commands for when the input is pressed and released.
    +
    +
    whenReleased(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule a command to be run once the input is released.
    +
    +
    whenToggled(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule a command to be run when the input was just toggled + (From pressed to released, or released to pressed)
    +
    +
    whileInverseToggled(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule the command to run over & over while the input is *not* changing + It will be canceled once the input is toggled.
    +
    +
    whilePressed(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule a command to be run over & over while the input is pressed, + but once it's released, the command will be cancelled.
    +
    +
    whilePressedContinuous(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule a command to be run over & over while the input is pressed
    +
    +
    whilePressedOnce(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule a command to be run while the input is pressed, but only once, + and if the command takes so long that the input is released, the command + will be cancelled.
    +
    +
    whilePressedReleased(Command, Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    For scheduling a pair commands for while the input is pressed and released.
    +
    +
    whileReleased(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule a command to be run over & over while the input is released, + but once it's pressed, the command will be cancelled.
    +
    +
    whileReleasedOnce(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schdule the command to be run when the input is released, but only once!
    +
    +
    whileToggled(Command) - Method in interface com.technototes.library.control.CommandInput
    +
    +
    Schedule the command to be run while the input is changing.
    +
    +
    WHITE - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    withTimeout(double) - Method in interface com.technototes.library.command.Command
    +
    +
    Runs this command until it either finishes, or the timeout has elapsed
    +
    +
    +

    X

    +
    +
    x - Variable in class com.technototes.library.logger.entry.Entry
    +
    +
    The index (in the list) of the entry
    +
    +
    xAxis - Variable in class com.technototes.library.control.GamepadStick
    +
    +
    The objects for the stick axis
    +
    +
    xbox_a - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the XBox game controller
    +
    +
    XBOX_A - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    XBox A button
    +
    +
    xbox_b - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the XBox game controller
    +
    +
    XBOX_B - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    XBox B button
    +
    +
    xbox_back - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the XBox game controller
    +
    +
    XBOX_BACK - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    XBox Back button
    +
    +
    xbox_start - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the XBox game controller
    +
    +
    XBOX_START - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    XBox Start button
    +
    +
    xbox_x - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the XBox game controller
    +
    +
    XBOX_X - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    XBox X button
    +
    +
    xbox_y - Variable in class com.technototes.library.control.GamepadBase
    +
    +
    The button objects for the XBox game controller
    +
    +
    XBOX_Y - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    +
    +
    XBox Y button
    +
    +
    +

    Y

    +
    +
    yAxis - Variable in class com.technototes.library.control.GamepadStick
    +
    +
    The objects for the stick axis
    +
    +
    YELLOW - Enum constant in enum class com.technototes.library.util.Color
    +
     
    +
    +

    Z

    +
    +
    zero() - Method in interface com.technototes.library.hardware.sensor.IGyro
    +
    +
    Zeroes the current heading (in default units)
    +
    +
    zero() - Method in class com.technototes.library.util.Integral
    +
    +
    Set the value to zero
    +
    +
    zeroEncoder() - Method in interface com.technototes.library.hardware.sensor.encoder.Encoder
    +
    +
    zero the encoder
    +
    +
    zeroEncoder() - Method in class com.technototes.library.hardware.sensor.encoder.ExternalEncoder
    +
    +
    Set the current device value as "zero"
    +
    +
    zeroEncoder() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    +
     
    +
    +A B C D E F G H I J L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Constant Field Values
    +
    +
    + diff --git a/docs/TechnoLib/index.html b/docs/TechnoLib/index.html index 18b7b9fb..ebc040b2 100644 --- a/docs/TechnoLib/index.html +++ b/docs/TechnoLib/index.html @@ -1,212 +1,100 @@ - + - - - Overview (RobotLibrary API) - - - - - - - - - - - - - - -
    - - -
    - + + +Overview (RobotLibrary API) + + + + + + + + + + + + + + + + diff --git a/docs/TechnoLib/jquery-ui.overrides.css b/docs/TechnoLib/jquery-ui.overrides.css index bc437535..facf852c 100644 --- a/docs/TechnoLib/jquery-ui.overrides.css +++ b/docs/TechnoLib/jquery-ui.overrides.css @@ -29,7 +29,7 @@ a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover { - /* Overrides the color of selection used in jQuery UI */ - background: #f8981d; - border: 1px solid #f8981d; + /* Overrides the color of selection used in jQuery UI */ + background: #F8981D; + border: 1px solid #F8981D; } diff --git a/docs/TechnoLib/member-search-index.js b/docs/TechnoLib/member-search-index.js index 73aca146..ec3f354c 100644 --- a/docs/TechnoLib/member-search-index.js +++ b/docs/TechnoLib/member-search-index.js @@ -1,2352 +1 @@ -memberSearchIndex = [ - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'a' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'A' }, - { p: 'com.technototes.library.util', c: 'SmartConsumer', l: 'accept(T)' }, - { - p: 'com.technototes.library.command', - c: 'CommandGroup', - l: 'addCommands(Command...)', - u: 'addCommands(com.technototes.library.command.Command...)', - }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'additionalInitConditions()' }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'addRequirements(Subsystem...)', - u: 'addRequirements(com.technototes.library.subsystem.Subsystem...)', - }, - { - p: 'com.technototes.library.hardware', - c: 'Speaker', - l: 'addSongs(String...)', - u: 'addSongs(java.lang.String...)', - }, - { p: 'com.technototes.library.control', c: 'Binding.Type', l: 'ALL_ACTIVE' }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'alongWith(Command...)', - u: 'alongWith(com.technototes.library.command.Command...)', - }, - { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'alpha()' }, - { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'analog(int)' }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'analog(String)', - u: 'analog(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'AnalogBuilder', - l: 'AnalogBuilder(AnalogSensor)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogSensor)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'AnalogBuilder', - l: 'AnalogBuilder(int)', - u: '%3Cinit%3E(int)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'AnalogBuilder', - l: 'AnalogBuilder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'AnalogSensor', - l: 'AnalogSensor(AnalogInput)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogInput)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'AnalogSensor', - l: 'AnalogSensor(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'andThen(Command...)', - u: 'andThen(com.technototes.library.command.Command...)', - }, - { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'anyCancelled' }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'apply(UnaryOperator)', - u: 'apply(java.util.function.UnaryOperator)', - }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'TankDrivebaseSubsystem', - l: 'arcadeDrive(double, double)', - u: 'arcadeDrive(double,double)', - }, - { p: 'com.technototes.library.hardware.sensor', c: 'ColorDistanceSensor', l: 'argb()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'ColorSensor', l: 'argb()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'argb()' }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'asConditional(BooleanSupplier)', - u: 'asConditional(java.util.function.BooleanSupplier)', - }, - { p: 'com.technototes.library.hardware2', c: 'ServoBuilder', l: 'at(double)' }, - { p: 'com.technototes.library.util', c: 'Differential.DifferentialPriority', l: 'AVERAGE' }, - { - p: 'com.technototes.library.control', - c: 'AxisBase', - l: 'AxisBase(DoubleSupplier)', - u: '%3Cinit%3E(java.util.function.DoubleSupplier)', - }, - { - p: 'com.technototes.library.control', - c: 'AxisBase', - l: 'AxisBase(DoubleSupplier, double)', - u: '%3Cinit%3E(java.util.function.DoubleSupplier,double)', - }, - { - p: 'com.technototes.library.control', - c: 'GamepadBase', - l: 'axisInstance(DoubleSupplier)', - u: 'axisInstance(java.util.function.DoubleSupplier)', - }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'b' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'B' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'back' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'BACK' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'BLACK' }, - { p: 'com.technototes.library.util', c: 'Alliance', l: 'BLUE' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'BLUE' }, - { p: 'com.technototes.library.util', c: 'Characters', l: 'BLUE_CIRCLE' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'blue()' }, - { - p: 'com.technototes.library.logger.entry', - c: 'BooleanEntry', - l: 'BooleanEntry(String, Supplier, int, String, String, Color, String, String, Color, Color)', - u: '%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,java.lang.String,java.lang.String,com.technototes.library.util.Color,java.lang.String,java.lang.String,com.technototes.library.util.Color,com.technototes.library.util.Color)', - }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'booleanSupplier' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'brake()' }, - { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'brake()' }, - { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'brake()' }, - { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'build()' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder', l: 'build()' }, - { - p: 'com.technototes.library.control', - c: 'ButtonBase', - l: 'ButtonBase(BooleanSupplier)', - u: '%3Cinit%3E(java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.control', - c: 'GamepadBase', - l: 'buttonInstance(BooleanSupplier)', - u: 'buttonInstance(java.util.function.BooleanSupplier)', - }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'bVal' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'bVal' }, - { - p: 'com.technototes.library.util', - c: 'Differential.DifferentialPriority', - l: 'calculateA(double, double, double, double)', - u: 'calculateA(double,double,double,double)', - }, - { - p: 'com.technototes.library.util', - c: 'Differential.DifferentialPriority', - l: 'calculateS(double, double, double, double)', - u: 'calculateS(double,double,double,double)', - }, - { p: 'com.technototes.library.command', c: 'Command', l: 'cancel()' }, - { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'CANCELLED' }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'cancelUpon(BooleanSupplier)', - u: 'cancelUpon(java.util.function.BooleanSupplier)', - }, - { p: 'com.technototes.library.logger', c: 'Logger', l: 'captionDivider' }, - { p: 'com.technototes.library.util', c: 'Characters', l: 'Characters()', u: '%3Cinit%3E()' }, - { - p: 'com.technototes.library.command', - c: 'ChoiceCommand', - l: 'ChoiceCommand(BooleanSupplier, Command)', - u: '%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'ChoiceCommand', - l: 'ChoiceCommand(Pair...)', - u: '%3Cinit%3E(android.util.Pair...)', - }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'circle' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'CIRCLE' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'clear()' }, - { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'close()' }, - { - p: 'com.technototes.library.util', - c: 'MathUtils', - l: 'closestTo(double, double...)', - u: 'closestTo(double,double...)', - }, - { - p: 'com.technototes.library.util', - c: 'MathUtils', - l: 'closestTo(double, int...)', - u: 'closestTo(double,int...)', - }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'coast()' }, - { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'coast()' }, - { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'coast()' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'codriverGamepad' }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'color' }, - { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'color()' }, - { p: 'com.technototes.library.logger', c: 'Log', l: 'color()' }, - { p: 'com.technototes.library.logger', c: 'Log.Number', l: 'color()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberBar', l: 'color()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberSlider', l: 'color()' }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'color(String)', - u: 'color(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'ColorBuilder', - l: 'ColorBuilder(ColorSensor)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorSensor)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'ColorBuilder', - l: 'ColorBuilder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'ColorDistanceSensor', - l: 'ColorDistanceSensor(ColorRangeSensor)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorRangeSensor)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'ColorDistanceSensor', - l: 'ColorDistanceSensor(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'colorRange(String)', - u: 'colorRange(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'ColorRangeBuilder', - l: 'ColorRangeBuilder(ColorRangeSensor)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorRangeSensor)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'ColorRangeBuilder', - l: 'ColorRangeBuilder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'ColorSensor', - l: 'ColorSensor(ColorSensor)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorSensor)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'ColorSensor', - l: 'ColorSensor(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandAxis', - l: 'CommandAxis(DoubleSupplier)', - u: '%3Cinit%3E(java.util.function.DoubleSupplier)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandAxis', - l: 'CommandAxis(DoubleSupplier, double)', - u: '%3Cinit%3E(java.util.function.DoubleSupplier,double)', - }, - { p: 'com.technototes.library.command', c: 'CommandBase', l: 'CommandBase()', u: '%3Cinit%3E()' }, - { - p: 'com.technototes.library.control', - c: 'CommandBinding', - l: 'CommandBinding(Binding.Type, CommandInput...)', - u: '%3Cinit%3E(com.technototes.library.control.Binding.Type,com.technototes.library.control.CommandInput...)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandBinding', - l: 'CommandBinding(CommandInput...)', - u: '%3Cinit%3E(com.technototes.library.control.CommandInput...)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandButton', - l: 'CommandButton(BooleanSupplier)', - u: '%3Cinit%3E(java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandGamepad', - l: 'CommandGamepad(Gamepad)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.Gamepad)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandGroup', - l: 'CommandGroup(boolean, Command...)', - u: '%3Cinit%3E(boolean,com.technototes.library.command.Command...)', - }, - { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'commandMap' }, - { - p: 'com.technototes.library.structure', - c: 'CommandOpMode', - l: 'CommandOpMode()', - u: '%3Cinit%3E()', - }, - { p: 'com.technototes.library.logger', c: 'Log.NumberBar', l: 'completeBarColor()' }, - { - p: 'com.technototes.library.command', - c: 'ConditionalCommand', - l: 'ConditionalCommand(BooleanSupplier)', - u: '%3Cinit%3E(java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.command', - c: 'ConditionalCommand', - l: 'ConditionalCommand(BooleanSupplier, Command)', - u: '%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'ConditionalCommand', - l: 'ConditionalCommand(BooleanSupplier, Command, Command)', - u: '%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command,com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.util', - c: 'MathUtils', - l: 'constrain(double, double, double)', - u: 'constrain(double,double,double)', - }, - { - p: 'com.technototes.library.util', - c: 'MathUtils', - l: 'constrain(int, int, int)', - u: 'constrain(int,int,int)', - }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoProfiler.Constraints', - l: 'Constraints(double, double, double)', - u: '%3Cinit%3E(double,double,double)', - }, - { p: 'com.technototes.library.util', c: 'SmartConsumer', l: 'consume(T)' }, - { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'countCancel' }, - { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'countCancel()' }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'create(Command, Subsystem...)', - u: 'create(com.technototes.library.command.Command,com.technototes.library.subsystem.Subsystem...)', - }, - { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'create(int)' }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'create(String)', - u: 'create(java.lang.String)', - }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'cross' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'CROSS' }, - { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'crServo(int)' }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'crServo(String)', - u: 'crServo(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'CRServoBuilder', - l: 'CRServoBuilder(CRServo)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.CRServo)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'CRServoBuilder', - l: 'CRServoBuilder(int)', - u: '%3Cinit%3E(int)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'CRServoBuilder', - l: 'CRServoBuilder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { p: 'com.technototes.library.util', c: 'Color', l: 'CYAN' }, - { p: 'com.technototes.library.util', c: 'Characters', l: 'CYCLE' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'DARK_GRAY' }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'deadline(Command...)', - u: 'deadline(com.technototes.library.command.Command...)', - }, - { p: 'com.technototes.library.control', c: 'AxisBase', l: 'DEFAULT_TRIGGER_THRESHOLD' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'degrees()' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder', l: 'degrees()' }, - { p: 'com.technototes.library.hardware', c: 'HardwareDevice', l: 'device' }, - { p: 'com.technototes.library.subsystem', c: 'DeviceSubsystem', l: 'device' }, - { - p: 'com.technototes.library.subsystem', - c: 'DeviceSubsystem', - l: 'DeviceSubsystem(T)', - u: '%3Cinit%3E(T)', - }, - { p: 'com.technototes.library.util', c: 'Differential.DifferentialPriority', l: 'DIFFERENCE' }, - { - p: 'com.technototes.library.util', - c: 'Differential', - l: 'Differential(DoubleConsumer, DoubleConsumer)', - u: '%3Cinit%3E(java.util.function.DoubleConsumer,java.util.function.DoubleConsumer)', - }, - { - p: 'com.technototes.library.util', - c: 'Differential', - l: 'Differential(DoubleConsumer, DoubleConsumer, Differential.DifferentialPriority)', - u: '%3Cinit%3E(java.util.function.DoubleConsumer,java.util.function.DoubleConsumer,com.technototes.library.util.Differential.DifferentialPriority)', - }, - { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'digital(int)' }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'digital(String)', - u: 'digital(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'DigitalBuilder', - l: 'DigitalBuilder(DigitalChannel)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DigitalChannel)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'DigitalBuilder', - l: 'DigitalBuilder(int)', - u: '%3Cinit%3E(int)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'DigitalBuilder', - l: 'DigitalBuilder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'DigitalSensor', - l: 'DigitalSensor(DigitalChannel)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DigitalChannel)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'DigitalSensor', - l: 'DigitalSensor(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'CRServoBuilder', - l: 'direction(DcMotorSimple.Direction)', - u: 'direction(com.qualcomm.robotcore.hardware.DcMotorSimple.Direction)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'MotorBuilder', - l: 'direction(DcMotorSimple.Direction)', - u: 'direction(com.qualcomm.robotcore.hardware.DcMotorSimple.Direction)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'ServoBuilder', - l: 'direction(Servo.Direction)', - u: 'direction(com.qualcomm.robotcore.hardware.Servo.Direction)', - }, - { p: 'com.technototes.library.control', c: 'CommandGamepad', l: 'disable()' }, - { p: 'com.technototes.library.general', c: 'Enablable', l: 'disable()' }, - { p: 'com.technototes.library.hardware2', c: 'ColorRangeBuilder', l: 'disable()' }, - { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'disable()' }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'distance(String)', - u: 'distance(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'DistanceBuilder', - l: 'DistanceBuilder(DistanceSensor)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DistanceSensor)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'DistanceBuilder', - l: 'DistanceBuilder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { p: 'com.technototes.library.control', c: 'AxisBase', l: 'doubleSupplier' }, - { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'down' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'dpad' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'dpadDown' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'dpadLeft' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'dpadRight' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'dpadUp' }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'TankDrivebaseSubsystem', - l: 'drive(double, double)', - u: 'drive(double,double)', - }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'SimpleMecanumDrivebaseSubsystem', - l: 'drive(double, double, double)', - u: 'drive(double,double,double)', - }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'SimpleMecanumDrivebaseSubsystem', - l: 'drive(double, double, double, double)', - u: 'drive(double,double,double,double)', - }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'DrivebaseSubsystem', - l: 'DrivebaseSubsystem(DoubleSupplier, Motor...)', - u: '%3Cinit%3E(java.util.function.DoubleSupplier,com.technototes.library.hardware.motor.Motor...)', - }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'DrivebaseSubsystem', - l: 'DrivebaseSubsystem(Motor...)', - u: '%3Cinit%3E(com.technototes.library.hardware.motor.Motor...)', - }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'driverGamepad' }, - { p: 'com.technototes.library.util', c: 'Characters', l: 'DUCK' }, - { - p: 'com.technototes.library.hardware', - c: 'DummyDevice', - l: 'DummyDevice(T)', - u: '%3Cinit%3E(T)', - }, - { p: 'com.technototes.library.logger', c: 'LogConfig.Run', l: 'duringInit()' }, - { p: 'com.technototes.library.logger', c: 'LogConfig.Run', l: 'duringRun()' }, - { p: 'com.technototes.library.control', c: 'CommandGamepad', l: 'enable()' }, - { p: 'com.technototes.library.general', c: 'Enablable', l: 'enable()' }, - { p: 'com.technototes.library.hardware2', c: 'ColorRangeBuilder', l: 'enable()' }, - { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'enable()' }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotor', - l: 'EncodedMotor(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotor', - l: 'EncodedMotor(String, Encoder)', - u: '%3Cinit%3E(java.lang.String,com.technototes.library.hardware.sensor.encoder.Encoder)', - }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotor', - l: 'EncodedMotor(T)', - u: '%3Cinit%3E(T)', - }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotor', - l: 'EncodedMotor(T, Encoder)', - u: '%3Cinit%3E(T,com.technototes.library.hardware.sensor.encoder.Encoder)', - }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotorGroup', - l: 'EncodedMotorGroup(EncodedMotor, Motor...)', - u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.Motor...)', - }, - { - p: 'com.technototes.library.subsystem.motor', - c: 'EncodedMotorSubsystem', - l: 'EncodedMotorSubsystem(EncodedMotor)', - u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor)', - }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode.OpModeState', l: 'END' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'end()' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'end(boolean)' }, - { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'end(boolean)' }, - { - p: 'com.technototes.library.logger.entry', - c: 'Entry', - l: 'Entry(String, Supplier, int, Color)', - u: '%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,com.technototes.library.util.Color)', - }, - { p: 'com.technototes.library.logger', c: 'Log', l: 'entryColor()' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'execute()' }, - { p: 'com.technototes.library.command', c: 'CommandBase', l: 'execute()' }, - { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'execute()' }, - { p: 'com.technototes.library.command', c: 'ConditionalCommand', l: 'execute()' }, - { p: 'com.technototes.library.command', c: 'WaitCommand', l: 'execute()' }, - { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'EXECUTING' }, - { p: 'com.technototes.library.hardware2', c: 'ServoBuilder', l: 'expandedPWM()' }, - { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'expandedRange()' }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'ExternalEncoder', - l: 'ExternalEncoder(AnalogInput)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogInput)', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'ExternalEncoder', - l: 'ExternalEncoder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'falseColor()' }, - { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'falseFormat()' }, - { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'falseValue()' }, - { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'FINISHED' }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'SimpleMecanumDrivebaseSubsystem', - l: 'flMotor', - }, - { p: 'com.technototes.library.logger', c: 'Log', l: 'format()' }, - { - p: 'com.technototes.library.util', - c: 'Color', - l: 'format(Object)', - u: 'format(java.lang.Object)', - }, - { - p: 'com.technototes.library.util', - c: 'Color', - l: 'format(String, Object...)', - u: 'format(java.lang.String,java.lang.Object...)', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder.Direction', - l: 'FORWARD', - }, - { p: 'com.technototes.library.hardware2', c: 'CRServoBuilder', l: 'forward()' }, - { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'forward()' }, - { p: 'com.technototes.library.hardware2', c: 'ServoBuilder', l: 'forward()' }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'SimpleMecanumDrivebaseSubsystem', - l: 'frMotor', - }, - { p: 'com.technototes.library.hardware2', c: 'ColorRangeBuilder', l: 'gain(float)' }, - { p: 'com.technototes.library.util', c: 'Characters', l: 'GAMEPAD' }, - { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'gamepad1' }, - { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'gamepad2' }, - { - p: 'com.technototes.library.control', - c: 'GamepadBase', - l: 'GamepadBase(Gamepad, Class, Class)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.Gamepad,java.lang.Class,java.lang.Class)', - }, - { - p: 'com.technototes.library.control', - c: 'GamepadDpad', - l: 'GamepadDpad(T, T, T, T)', - u: '%3Cinit%3E(T,T,T,T)', - }, - { - p: 'com.technototes.library.control', - c: 'GamepadStick', - l: 'GamepadStick(T, T, U)', - u: '%3Cinit%3E(T,T,U)', - }, - { p: 'com.technototes.library.command', c: 'Command', l: 'get()' }, - { p: 'com.technototes.library.control', c: 'Binding', l: 'get()' }, - { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'get()' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'get()' }, - { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'get()' }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'get()' }, - { - p: 'com.technototes.library.control', - c: 'Binding', - l: 'get(Binding.Type)', - u: 'get(com.technototes.library.control.Binding.Type)', - }, - { - p: 'com.technototes.library.util', - c: 'Alliance', - l: 'get(Class)', - u: 'get(java.lang.Class)', - }, - { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'getAllDeviceList()' }, - { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'getAllDevices()' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotorGroup', l: 'getAllDevices()' }, - { p: 'com.technototes.library.hardware.motor', c: 'MotorGroup', l: 'getAllDevices()' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoGroup', l: 'getAllDevices()' }, - { p: 'com.technototes.library.control', c: 'Stick', l: 'getAngle()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'getAngularOrientation()' }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IMU', - l: 'getAngularOrientation(AngleUnit)', - u: 'getAngularOrientation(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)', - }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'getAngularVelocity()' }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IMU', - l: 'getAngularVelocity(AngleUnit)', - u: 'getAngularVelocity(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)', - }, - { p: 'com.technototes.library.control', c: 'Binding', l: 'getAsBoolean()' }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'getAsBoolean()' }, - { p: 'com.technototes.library.control', c: 'CommandAxis', l: 'getAsButton()' }, - { p: 'com.technototes.library.control', c: 'CommandAxis', l: 'getAsButton(double)' }, - { p: 'com.technototes.library.control', c: 'AxisBase', l: 'getAsDouble()' }, - { p: 'com.technototes.library.hardware', c: 'Sensored', l: 'getAsDouble()' }, - { p: 'com.technototes.library.util', c: 'Differential', l: 'getAverage()' }, - { - p: 'com.technototes.library.control', - c: 'GamepadBase', - l: 'getAxis(GamepadBase.Axis)', - u: 'getAxis(com.technototes.library.control.GamepadBase.Axis)', - }, - { - p: 'com.technototes.library.control', - c: 'GamepadBase', - l: 'getAxisAsBoolean(GamepadBase.Axis)', - u: 'getAxisAsBoolean(com.technototes.library.control.GamepadBase.Axis)', - }, - { - p: 'com.technototes.library.control', - c: 'GamepadBase', - l: 'getAxisAsDouble(GamepadBase.Axis)', - u: 'getAxisAsDouble(com.technototes.library.control.GamepadBase.Axis)', - }, - { - p: 'com.technototes.library.control', - c: 'GamepadBase', - l: 'getButton(GamepadBase.Button)', - u: 'getButton(com.technototes.library.control.GamepadBase.Button)', - }, - { - p: 'com.technototes.library.control', - c: 'GamepadBase', - l: 'getButtonAsBoolean(GamepadBase.Button)', - u: 'getButtonAsBoolean(com.technototes.library.control.GamepadBase.Button)', - }, - { p: 'com.technototes.library.util', c: 'Alliance', l: 'getColor()' }, - { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'getConnectionInfo()' }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder', - l: 'getCorrectedVelocity()', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'getCurrent(Subsystem)', - u: 'getCurrent(com.technototes.library.subsystem.Subsystem)', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder', - l: 'getCurrentPosition()', - }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getCurrentPosition()' }, - { p: 'com.technototes.library.hardware', c: 'Speaker', l: 'getCurrentSong()' }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'getDefault(Subsystem)', - u: 'getDefault(com.technototes.library.subsystem.Subsystem)', - }, - { p: 'com.technototes.library.subsystem', c: 'Subsystem', l: 'getDefaultCommand()' }, - { p: 'com.technototes.library.control', c: 'Binding', l: 'getDefaultType()' }, - { p: 'com.technototes.library.control', c: 'CommandBinding', l: 'getDefaultType()' }, - { p: 'com.technototes.library.util', c: 'Differential', l: 'getDeviation()' }, - { p: 'com.technototes.library.hardware', c: 'HardwareDevice', l: 'getDevice()' }, - { p: 'com.technototes.library.subsystem', c: 'DeviceSubsystem', l: 'getDevice()' }, - { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'getDeviceName()' }, - { p: 'com.technototes.library.util', c: 'Differential', l: 'getDifferentialPriority()' }, - { p: 'com.technototes.library.hardware.sensor.encoder', c: 'MotorEncoder', l: 'getDirection()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IDistanceSensor', l: 'getDistance()' }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'ColorDistanceSensor', - l: 'getDistance(DistanceUnit)', - u: 'getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IDistanceSensor', - l: 'getDistance(DistanceUnit)', - u: 'getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'Rev2MDistanceSensor', - l: 'getDistance(DistanceUnit)', - u: 'getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', - }, - { p: 'com.technototes.library.control', c: 'Stick', l: 'getDistanceFromCenter()' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberSliderEntry', l: 'getDouble()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'getDpad()' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'getEncoder()' }, - { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'getFollowerist()' }, - { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'getFollowers()' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotorGroup', l: 'getFollowers()' }, - { p: 'com.technototes.library.hardware.motor', c: 'MotorGroup', l: 'getFollowers()' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoGroup', l: 'getFollowers()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'getGamepad()' }, - { p: 'com.technototes.library.subsystem.drivebase', c: 'DrivebaseSubsystem', l: 'getGyro()' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'getHexValue()' }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'getIndex()' }, - { p: 'com.technototes.library.command', c: 'CommandScheduler', l: 'getInstance()' }, - { p: 'com.technototes.library.control', c: 'CommandAxis', l: 'getInstance()' }, - { p: 'com.technototes.library.control', c: 'CommandButton', l: 'getInstance()' }, - { p: 'com.technototes.library.control', c: 'CommandInput', l: 'getInstance()' }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'getInverted()' }, - { p: 'com.technototes.library.general', c: 'Invertable', l: 'getInverted()' }, - { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'getInverted()' }, - { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'getInverted()' }, - { p: 'com.technototes.library.util', c: 'SmartConsumer', l: 'getLast()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'getLeftStick()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'ColorDistanceSensor', l: 'getLight()' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'getLogger()' }, - { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'getManufacturer()' }, - { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'getMap()' }, - { p: 'com.technototes.library.util', c: 'MathUtils', l: 'getMax(double...)' }, - { p: 'com.technototes.library.util', c: 'MathUtils', l: 'getMax(int...)' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getMaxAccel()' }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoProfiler.Constraints', - l: 'getMaxAcceleration()', - }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getMaxVel()' }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoProfiler.Constraints', - l: 'getMaxVelocity()', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder.Direction', - l: 'getMultiplier()', - }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'getName()' }, - { p: 'com.technototes.library.command', c: 'CommandScheduler', l: 'getOpModeRuntime()' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'getOpModeRuntime()' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'getOpModeState()' }, - { p: 'com.technototes.library.hardware.sensor.encoder', c: 'Encoder', l: 'getPosition()' }, - { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'getPosition()' }, - { p: 'com.technototes.library.subsystem.servo', c: 'ServoSubsystem', l: 'getPosition()' }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'getPriority()' }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoProfiler.Constraints', - l: 'getProportion()', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder', - l: 'getRawVelocity()', - }, - { p: 'com.technototes.library.command', c: 'Command', l: 'getRequirements()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'getRightStick()' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'getRuntime()' }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'DrivebaseSubsystem', - l: 'getScale(double...)', - }, - { p: 'com.technototes.library.command', c: 'WaitCommand', l: 'getSeconds()' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'getSensorValue()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'AnalogSensor', l: 'getSensorValue()' }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'ExternalEncoder', - l: 'getSensorValue()', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder', - l: 'getSensorValue()', - }, - { p: 'com.technototes.library.hardware', c: 'Sensored', l: 'getSensorValue()' }, - { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'getSensorValue()' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getServo()' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'getSpeed()' }, - { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'getSpeed()' }, - { p: 'com.technototes.library.subsystem.drivebase', c: 'DrivebaseSubsystem', l: 'getSpeed()' }, - { p: 'com.technototes.library.subsystem.motor', c: 'MotorSubsystem', l: 'getSpeed()' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'getState()' }, - { p: 'com.technototes.library.control', c: 'Binding', l: 'getSuppliers()' }, - { p: 'com.technototes.library.control', c: 'CommandBinding', l: 'getSuppliers()' }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'getTag()' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getTargetPosition()' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getTargetTolerance()' }, - { p: 'com.technototes.library.control', c: 'AxisBase', l: 'getTriggerThreshold()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'ColorDistanceSensor', l: 'getUnit()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IDistanceSensor', l: 'getUnit()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'Rev2MDistanceSensor', l: 'getUnit()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'DigitalSensor', l: 'getValue()' }, - { p: 'com.technototes.library.util', c: 'Integral', l: 'getValue()' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'getVelocity()' }, - { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'getVersion()' }, - { p: 'com.technototes.library', c: 'RobotLibrary', l: 'getVersion()' }, - { p: 'com.technototes.library.hardware', c: 'Speaker', l: 'getVolume()' }, - { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'getXAxis()' }, - { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'getXAxis()' }, - { p: 'com.technototes.library.control', c: 'Stick', l: 'getXAxis()' }, - { p: 'com.technototes.library.control', c: 'Stick', l: 'getXSupplier()' }, - { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'getYAxis()' }, - { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'getYAxis()' }, - { p: 'com.technototes.library.control', c: 'Stick', l: 'getYAxis()' }, - { p: 'com.technototes.library.control', c: 'Stick', l: 'getYSupplier()' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'GREEN' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'green()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IGyro', l: 'gyroHeading()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'gyroHeading()' }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IMU', - l: 'gyroHeading(AngleUnit)', - u: 'gyroHeading(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)', - }, - { p: 'com.technototes.library.hardware.sensor', c: 'IGyro', l: 'gyroHeadingInDegrees()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'gyroHeadingInDegrees()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IGyro', l: 'gyroHeadingInRadians()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'gyroHeadingInRadians()' }, - { p: 'com.technototes.library.subsystem.drivebase', c: 'DrivebaseSubsystem', l: 'gyroSupplier' }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'HardwareBuilder(int)', - u: '%3Cinit%3E(int)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'HardwareBuilder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'HardwareBuilder(T)', - u: '%3Cinit%3E(T)', - }, - { - p: 'com.technototes.library.hardware', - c: 'HardwareDevice', - l: 'HardwareDevice(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware', - c: 'HardwareDevice', - l: 'HardwareDevice(T)', - u: '%3Cinit%3E(T)', - }, - { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'hardwareMap' }, - { p: 'com.technototes.library.hardware', c: 'HardwareDevice', l: 'hardwareMap' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'hsv()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'hsvArray()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'hue()' }, - { - p: 'com.technototes.library.hardware2', - c: 'MotorBuilder', - l: 'idle(DcMotor.ZeroPowerBehavior)', - u: 'idle(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)', - }, - { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'ignoreCancel()' }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IMU', - l: 'IMU(IMU, IMU.Parameters)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.IMU,com.qualcomm.robotcore.hardware.IMU.Parameters)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IMU', - l: 'IMU(IMU, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.IMU,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.LogoFacingDirection,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.UsbFacingDirection)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'imu(String)', - u: 'imu(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IMU', - l: 'IMU(String, IMU.Parameters)', - u: '%3Cinit%3E(java.lang.String,com.qualcomm.robotcore.hardware.IMU.Parameters)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IMU', - l: 'IMU(String, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection)', - u: '%3Cinit%3E(java.lang.String,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.LogoFacingDirection,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.UsbFacingDirection)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'IMUBuilder', - l: 'IMUBuilder(BNO055IMUImpl)', - u: '%3Cinit%3E(com.qualcomm.hardware.bosch.BNO055IMUImpl)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'IMUBuilder', - l: 'IMUBuilder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { p: 'com.technototes.library.logger', c: 'Log.NumberBar', l: 'incompleteBarColor()' }, - { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'incrementPosition(double)' }, - { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'index()' }, - { p: 'com.technototes.library.logger', c: 'Log', l: 'index()' }, - { p: 'com.technototes.library.logger', c: 'Log.Number', l: 'index()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberBar', l: 'index()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberSlider', l: 'index()' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode.OpModeState', l: 'INIT' }, - { p: 'com.technototes.library.logger', c: 'Logger', l: 'initEntries' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'initialize()' }, - { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'initialize()' }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IMU', - l: 'initialize(IMU.Parameters)', - u: 'initialize(com.qualcomm.robotcore.hardware.IMU.Parameters)', - }, - { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'INITIALIZING' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'initLoop()' }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'initMap(HardwareMap)', - u: 'initMap(com.qualcomm.robotcore.hardware.HardwareMap)', - }, - { p: 'com.technototes.library.logger', c: 'Logger', l: 'initUpdate()' }, - { p: 'com.technototes.library.hardware2', c: 'DigitalBuilder', l: 'input()' }, - { p: 'com.technototes.library.util', c: 'Range', l: 'inRange(double)' }, - { p: 'com.technototes.library.util', c: 'Integral', l: 'Integral()', u: '%3Cinit%3E()' }, - { - p: 'com.technototes.library.util', - c: 'Integral', - l: 'Integral(double)', - u: '%3Cinit%3E(double)', - }, - { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'INTERRUPTED' }, - { p: 'com.technototes.library.general', c: 'Invertable', l: 'invert()' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'invert()' }, - { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'invert()' }, - { p: 'com.technototes.library.hardware.sensor.encoder', c: 'MotorEncoder', l: 'invert()' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'isAtPosition(double)' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'isAtTarget()' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'isCancelled()' }, - { p: 'com.technototes.library.general', c: 'Enablable', l: 'isDisabled()' }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isEnabled()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'isEnabled()' }, - { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'isEnabled()' }, - { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'isEnabled()' }, - { p: 'com.technototes.library.general', c: 'Enablable', l: 'isEnabled()' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'isFinished()' }, - { p: 'com.technototes.library.command', c: 'CommandBase', l: 'isFinished()' }, - { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'isFinished()' }, - { p: 'com.technototes.library.command', c: 'ConditionalCommand', l: 'isFinished()' }, - { p: 'com.technototes.library.command', c: 'ParallelCommandGroup', l: 'isFinished()' }, - { p: 'com.technototes.library.command', c: 'ParallelDeadlineGroup', l: 'isFinished()' }, - { p: 'com.technototes.library.command', c: 'ParallelRaceGroup', l: 'isFinished()' }, - { p: 'com.technototes.library.command', c: 'SequentialCommandGroup', l: 'isFinished()' }, - { p: 'com.technototes.library.command', c: 'WaitCommand', l: 'isFinished()' }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isInverseToggled()' }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isJustInverseToggled()' }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isJustPressed()' }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isJustReleased()' }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isJustToggled()' }, - { p: 'com.technototes.library', c: 'RobotLibrary', l: 'isPreRelease()' }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isPressed()' }, - { p: 'com.technototes.library.util', c: 'MathUtils', l: 'isPrime(int)' }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isReleased()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'isRumbling()' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'isRunning()' }, - { - p: 'com.technototes.library.structure', - c: 'CommandOpMode.OpModeState', - l: 'isState(CommandOpMode.OpModeState...)', - u: 'isState(com.technototes.library.structure.CommandOpMode.OpModeState...)', - }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isToggled()' }, - { - p: 'com.technototes.library.command', - c: 'IterativeCommand', - l: 'IterativeCommand(Function, BooleanSupplier)', - u: '%3Cinit%3E(java.util.function.Function,java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.command', - c: 'IterativeCommand', - l: 'IterativeCommand(Function, int)', - u: '%3Cinit%3E(java.util.function.Function,int)', - }, - { - p: 'com.technototes.library.command', - c: 'IterativeCommand', - l: 'IterativeCommand(Function, int, BooleanSupplier)', - u: '%3Cinit%3E(java.util.function.Function,int,java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.command', - c: 'IterativeCommand', - l: 'IterativeCommand(Function, T, T, Function)', - u: '%3Cinit%3E(java.util.function.Function,T,T,java.util.function.Function)', - }, - { - p: 'com.technototes.library.command', - c: 'IterativeCommand', - l: 'IterativeCommand(Function, T, T, Function, BooleanSupplier)', - u: '%3Cinit%3E(java.util.function.Function,T,T,java.util.function.Function,java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'SimpleMecanumDrivebaseSubsystem', - l: 'joystickDrive(double, double, double)', - u: 'joystickDrive(double,double,double)', - }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'SimpleMecanumDrivebaseSubsystem', - l: 'joystickDriveWithGyro(double, double, double, double)', - u: 'joystickDriveWithGyro(double,double,double,double)', - }, - { p: 'com.technototes.library.command', c: 'Command', l: 'justFinished()' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'justFinishedNoCancel()' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'justStarted()' }, - { p: 'com.technototes.library.command', c: 'SequentialCommandGroup', l: 'lastCommand' }, - { p: 'com.technototes.library.hardware2', c: 'ColorRangeBuilder', l: 'led(boolean)' }, - { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'left' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'LEFT_BUMPER' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'LEFT_STICK_BUTTON' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'LEFT_STICK_X' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'LEFT_STICK_Y' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'LEFT_TRIGGER' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftBumper' }, - { p: 'com.technototes.library.subsystem.drivebase', c: 'TankDrivebaseSubsystem', l: 'leftSide' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftStick' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftStickButton' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftStickX' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftStickY' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftTrigger' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'LIGHT_GRAY' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'LIME' }, - { - p: 'com.technototes.library.logger', - c: 'Logger', - l: 'Logger(OpMode)', - u: '%3Cinit%3E(com.qualcomm.robotcore.eventloop.opmode.OpMode)', - }, - { p: 'com.technototes.library.util', c: 'Color', l: 'MAGENTA' }, - { p: 'com.technototes.library.util', c: 'SmartConsumer', l: 'map' }, - { - p: 'com.technototes.library.util', - c: 'MathUtils', - l: 'map(double, double, double, double, double)', - u: 'map(double,double,double,double,double)', - }, - { p: 'com.technototes.library.util', c: 'MapUtils', l: 'MapUtils()', u: '%3Cinit%3E()' }, - { p: 'com.technototes.library.util', c: 'MathUtils', l: 'MathUtils()', u: '%3Cinit%3E()' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberSliderEntry', l: 'max' }, - { p: 'com.technototes.library.util', c: 'Range', l: 'max' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberSliderEntry', l: 'max()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberBar', l: 'max()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberSlider', l: 'max()' }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoProfiler.Constraints', - l: 'maxAcceleration', - }, - { p: 'com.technototes.library.subsystem.motor', c: 'EncodedMotorSubsystem', l: 'maxSpeed' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler.Constraints', l: 'maxVelocity' }, - { p: 'com.technototes.library.util', c: 'Range', l: 'middle()' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberSliderEntry', l: 'min' }, - { p: 'com.technototes.library.util', c: 'Range', l: 'min' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberSliderEntry', l: 'min()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberBar', l: 'min()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberSlider', l: 'min()' }, - { - p: 'com.technototes.library.hardware2', - c: 'MotorBuilder', - l: 'mode(DcMotor.RunMode)', - u: 'mode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'DigitalBuilder', - l: 'mode(DigitalChannel.Mode)', - u: 'mode(com.qualcomm.robotcore.hardware.DigitalChannel.Mode)', - }, - { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'motor(int)' }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'motor(String)', - u: 'motor(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.motor', - c: 'Motor', - l: 'Motor(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'Motor(T)', u: '%3Cinit%3E(T)' }, - { - p: 'com.technototes.library.hardware2', - c: 'MotorBuilder', - l: 'MotorBuilder(DcMotorEx)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'MotorBuilder', - l: 'MotorBuilder(int)', - u: '%3Cinit%3E(int)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'MotorBuilder', - l: 'MotorBuilder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder', - l: 'MotorEncoder(DcMotorEx)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx)', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder', - l: 'MotorEncoder(DcMotorEx, ElapsedTime)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx,com.qualcomm.robotcore.util.ElapsedTime)', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder', - l: 'MotorEncoder(EncodedMotor)', - u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor)', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder', - l: 'MotorEncoder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.motor', - c: 'MotorGroup', - l: 'MotorGroup(Motor...)', - u: '%3Cinit%3E(com.technototes.library.hardware.motor.Motor...)', - }, - { - p: 'com.technototes.library.subsystem.motor', - c: 'MotorSubsystem', - l: 'MotorSubsystem(T)', - u: '%3Cinit%3E(T)', - }, - { - p: 'com.qualcomm.robotcore.eventloop.opmode', - c: 'CommandOpMode', - l: 'MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED', - }, - { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'msStuckDetectStop' }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'name' }, - { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'name()' }, - { p: 'com.technototes.library.logger', c: 'Log', l: 'name()' }, - { p: 'com.technototes.library.logger', c: 'Log.Number', l: 'name()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberBar', l: 'name()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberSlider', l: 'name()' }, - { p: 'com.technototes.library.util', c: 'Differential.DifferentialPriority', l: 'NEUTRAL' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'NNN' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'NNN' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'NNP' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'NNP' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'NO_COLOR' }, - { p: 'com.technototes.library.util', c: 'Alliance', l: 'NONE' }, - { p: 'com.technototes.library.control', c: 'Binding.Type', l: 'NONE_ACTIVE' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'NPN' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'NPN' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'NPP' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'NPP' }, - { - p: 'com.technototes.library.logger.entry', - c: 'NumberBarEntry', - l: 'NumberBarEntry(String, Supplier, int, Number, Number, Number, Color, Color, Color, Color)', - u: '%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,java.lang.Number,java.lang.Number,java.lang.Number,com.technototes.library.util.Color,com.technototes.library.util.Color,com.technototes.library.util.Color,com.technototes.library.util.Color)', - }, - { p: 'com.technototes.library.logger.entry', c: 'NumberEntry', l: 'numberColor' }, - { p: 'com.technototes.library.logger', c: 'Log.Number', l: 'numberColor()' }, - { - p: 'com.technototes.library.logger.entry', - c: 'NumberEntry', - l: 'NumberEntry(String, Supplier, int, Color)', - u: '%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,com.technototes.library.util.Color)', - }, - { - p: 'com.technototes.library.logger.entry', - c: 'NumberEntry', - l: 'NumberEntry(String, Supplier, int, Color, Color)', - u: '%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,com.technototes.library.util.Color,com.technototes.library.util.Color)', - }, - { - p: 'com.technototes.library.logger.entry', - c: 'NumberSliderEntry', - l: 'NumberSliderEntry(String, Supplier, int, Number, Number, Number, Color, Color, Color, Color)', - u: '%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,java.lang.Number,java.lang.Number,java.lang.Number,com.technototes.library.util.Color,com.technototes.library.util.Color,com.technototes.library.util.Color,com.technototes.library.util.Color)', - }, - { - p: 'com.technototes.library.util', - c: 'MapUtils', - l: 'of(Pair...)', - u: 'of(android.util.Pair...)', - }, - { p: 'com.technototes.library.util', c: 'Alliance.Selector', l: 'of(T, T)', u: 'of(T,T)' }, - { p: 'com.technototes.library.hardware.sensor.encoder', c: 'MotorEncoder', l: 'offset' }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'onlyIf(BooleanSupplier)', - u: 'onlyIf(java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.hardware.servo', - c: 'Servo', - l: 'onRange(double, double)', - u: 'onRange(double,double)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'ColorDistanceSensor', - l: 'onUnit(DistanceUnit)', - u: 'onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IDistanceSensor', - l: 'onUnit(DistanceUnit)', - u: 'onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'Rev2MDistanceSensor', - l: 'onUnit(DistanceUnit)', - u: 'onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', - }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'options' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'OPTIONS' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'ORANGE' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberBar', l: 'outline()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberSlider', l: 'outline()' }, - { p: 'com.technototes.library.hardware2', c: 'DigitalBuilder', l: 'output()' }, - { - p: 'com.technototes.library.command', - c: 'ParallelCommandGroup', - l: 'ParallelCommandGroup(Command...)', - u: '%3Cinit%3E(com.technototes.library.command.Command...)', - }, - { - p: 'com.technototes.library.command', - c: 'ParallelDeadlineGroup', - l: 'ParallelDeadlineGroup(Command, Command...)', - u: '%3Cinit%3E(com.technototes.library.command.Command,com.technototes.library.command.Command...)', - }, - { - p: 'com.technototes.library.command', - c: 'ParallelRaceGroup', - l: 'ParallelRaceGroup(Command...)', - u: '%3Cinit%3E(com.technototes.library.command.Command...)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'IMUBuilder', - l: 'parameter(Consumer)', - u: 'parameter(java.util.function.Consumer)', - }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'periodic()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'periodic()' }, - { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'periodic()' }, - { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'periodic()' }, - { p: 'com.technototes.library.general', c: 'Periodic', l: 'periodic()' }, - { p: 'com.technototes.library.subsystem', c: 'DeviceSubsystem', l: 'periodic()' }, - { p: 'com.technototes.library.subsystem', c: 'Subsystem', l: 'periodic()' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'PINK' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'PNN' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'PNN' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'PNP' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'PNP' }, - { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'position(double)' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'positionThreshold' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'PPN' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'PPN' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'PPP' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'PPP' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberSliderEntry', l: 'primary' }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'priority' }, - { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'priority()' }, - { p: 'com.technototes.library.logger', c: 'Log.Number', l: 'priority()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberBar', l: 'priority()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberSlider', l: 'priority()' }, - { p: 'com.technototes.library.logger', c: 'Log', l: 'priority()' }, - { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'product' }, - { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'propagate(double)' }, - { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'propogate(double)' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotorGroup', l: 'propogate(double)' }, - { p: 'com.technototes.library.hardware.motor', c: 'MotorGroup', l: 'propogate(double)' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoGroup', l: 'propogate(double)' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler.Constraints', l: 'proportion' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'PURPLE' }, - { - p: 'com.technototes.library.hardware2', - c: 'ServoBuilder', - l: 'pwmRange(double, double)', - u: 'pwmRange(double,double)', - }, - { p: 'com.technototes.library.util', c: 'MathUtils', l: 'pythag(double...)' }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'raceWith(Command...)', - u: 'raceWith(com.technototes.library.command.Command...)', - }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'radians()' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder', l: 'radians()' }, - { - p: 'com.technototes.library.hardware2', - c: 'ServoBuilder', - l: 'range(double, double)', - u: 'range(double,double)', - }, - { - p: 'com.technototes.library.util', - c: 'Range', - l: 'Range(double, double)', - u: '%3Cinit%3E(double,double)', - }, - { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'raw()' }, - { p: 'com.technototes.library.util', c: 'Alliance', l: 'RED' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'RED' }, - { p: 'com.technototes.library.util', c: 'Characters', l: 'RED_SQUARE' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'red()' }, - { p: 'com.technototes.library.subsystem', c: 'Subsystem', l: 'register()' }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'register(Periodic)', - u: 'register(com.technototes.library.general.Periodic)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'IMUBuilder', - l: 'remap(AxesOrder, IMUBuilder.AxesSigns)', - u: 'remap(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware2.IMUBuilder.AxesSigns)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IMU', - l: 'remapAxesAndSigns(AxesOrder, IMU.AxesSigns)', - u: 'remapAxesAndSigns(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware.sensor.IMU.AxesSigns)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IMU', - l: 'remapLegacyAxes(AxesOrder, IMU.AxesSigns)', - u: 'remapLegacyAxes(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware.sensor.IMU.AxesSigns)', - }, - { - p: 'com.technototes.library.logger', - c: 'Logger', - l: 'repeat(String, int)', - u: 'repeat(java.lang.String,int)', - }, - { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'requestOpModeStop()' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'requirementMap' }, - { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'RESET' }, - { p: 'com.technototes.library.util', c: 'SmartConsumer', l: 'reset()' }, - { - p: 'com.technototes.library.hardware', - c: 'DummyDevice', - l: 'resetDeviceConfigurationForOpMode()', - }, - { p: 'com.technototes.library.command', c: 'CommandScheduler', l: 'resetScheduler()' }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'Rev2MDistanceSensor', - l: 'Rev2MDistanceSensor(DistanceSensor)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DistanceSensor)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'Rev2MDistanceSensor', - l: 'Rev2MDistanceSensor(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder.Direction', - l: 'REVERSE', - }, - { p: 'com.technototes.library.hardware2', c: 'CRServoBuilder', l: 'reverse()' }, - { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'reverse()' }, - { p: 'com.technototes.library.hardware2', c: 'ServoBuilder', l: 'reverse()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'rgb()' }, - { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'right' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'RIGHT_BUMPER' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'RIGHT_STICK_BUTTON' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'RIGHT_STICK_X' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'RIGHT_STICK_Y' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'RIGHT_TRIGGER' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightBumper' }, - { p: 'com.technototes.library.subsystem.drivebase', c: 'TankDrivebaseSubsystem', l: 'rightSide' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightStick' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightStickButton' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightStickX' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightStickY' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightTrigger' }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'SimpleMecanumDrivebaseSubsystem', - l: 'rlMotor', - }, - { p: 'com.technototes.library', c: 'RobotLibrary', l: 'RobotLibrary()', u: '%3Cinit%3E()' }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'SimpleMecanumDrivebaseSubsystem', - l: 'rrMotor', - }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rumble()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rumble(double)' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rumbleBlip()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rumbleBlips(int)' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode.OpModeState', l: 'RUN' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'run()' }, - { p: 'com.technototes.library.command', c: 'CommandScheduler', l: 'run()' }, - { p: 'com.technototes.library.logger', c: 'Logger', l: 'runEntries' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'runLoop()' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'runOpMode()' }, - { p: 'com.technototes.library.logger', c: 'Logger', l: 'runUpdate()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'saturation()' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberSliderEntry', l: 'scale' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberSliderEntry', l: 'scale()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberBar', l: 'scale()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberSlider', l: 'scale()' }, - { p: 'com.technototes.library.util', c: 'Range', l: 'scale(double)' }, - { - p: 'com.technototes.library.hardware.servo', - c: 'Servo', - l: 'scalePWM(double, double)', - u: 'scalePWM(double,double)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'schedule(BooleanSupplier, Command)', - u: 'schedule(java.util.function.BooleanSupplier,com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandGroup', - l: 'schedule(Command)', - u: 'schedule(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'schedule(Command)', - u: 'schedule(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'ParallelCommandGroup', - l: 'schedule(Command)', - u: 'schedule(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'ParallelDeadlineGroup', - l: 'schedule(Command)', - u: 'schedule(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'ParallelRaceGroup', - l: 'schedule(Command)', - u: 'schedule(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'SequentialCommandGroup', - l: 'schedule(Command)', - u: 'schedule(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'schedule(Command)', - u: 'schedule(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'schedule(Command, BooleanSupplier)', - u: 'schedule(com.technototes.library.command.Command,java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandButton', - l: 'schedule(Consumer)', - u: 'schedule(java.util.function.Consumer)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandButton', - l: 'schedule(Function)', - u: 'schedule(java.util.function.Function)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandAxis', - l: 'schedule(Function)', - u: 'schedule(java.util.function.Function)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleAfterOther(Command, Command)', - u: 'scheduleAfterOther(com.technototes.library.command.Command,com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleAfterOther(Command, Command, BooleanSupplier)', - u: 'scheduleAfterOther(com.technototes.library.command.Command,com.technototes.library.command.Command,java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleDefault(Command, Subsystem)', - u: 'scheduleDefault(com.technototes.library.command.Command,com.technototes.library.subsystem.Subsystem)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandGamepad', - l: 'scheduleDpad(BiConsumer)', - u: 'scheduleDpad(java.util.function.BiConsumer)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandGamepad', - l: 'scheduleDpad(BiFunction)', - u: 'scheduleDpad(java.util.function.BiFunction)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleForState(Command, BooleanSupplier, CommandOpMode.OpModeState...)', - u: 'scheduleForState(com.technototes.library.command.Command,java.util.function.BooleanSupplier,com.technototes.library.structure.CommandOpMode.OpModeState...)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleForState(Command, CommandOpMode.OpModeState...)', - u: 'scheduleForState(com.technototes.library.command.Command,com.technototes.library.structure.CommandOpMode.OpModeState...)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleInit(Command)', - u: 'scheduleInit(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleInit(Command, BooleanSupplier)', - u: 'scheduleInit(com.technototes.library.command.Command,java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleJoystick(Command)', - u: 'scheduleJoystick(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleJoystick(Command, BooleanSupplier)', - u: 'scheduleJoystick(com.technototes.library.command.Command,java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandGamepad', - l: 'scheduleLeftStick(BiConsumer)', - u: 'scheduleLeftStick(java.util.function.BiConsumer)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandGamepad', - l: 'scheduleLeftStick(BiFunction)', - u: 'scheduleLeftStick(java.util.function.BiFunction)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleOnce(Command)', - u: 'scheduleOnce(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleOnceForState(Command, CommandOpMode.OpModeState)', - u: 'scheduleOnceForState(com.technototes.library.command.Command,com.technototes.library.structure.CommandOpMode.OpModeState)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandAxis', - l: 'schedulePressed(Function)', - u: 'schedulePressed(java.util.function.Function)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandGamepad', - l: 'scheduleRightStick(BiConsumer)', - u: 'scheduleRightStick(java.util.function.BiConsumer)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandGamepad', - l: 'scheduleRightStick(BiFunction)', - u: 'scheduleRightStick(java.util.function.BiFunction)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandGamepad', - l: 'scheduleStick(Stick, BiConsumer)', - u: 'scheduleStick(com.technototes.library.control.Stick,java.util.function.BiConsumer)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandGamepad', - l: 'scheduleStick(Stick, BiFunction)', - u: 'scheduleStick(com.technototes.library.control.Stick,java.util.function.BiFunction)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleWithOther(Command, Command)', - u: 'scheduleWithOther(com.technototes.library.command.Command,com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'scheduleWithOther(Command, Command, BooleanSupplier)', - u: 'scheduleWithOther(com.technototes.library.command.Command,com.technototes.library.command.Command,java.util.function.BooleanSupplier)', - }, - { p: 'com.technototes.library.logger.entry', c: 'NumberSliderEntry', l: 'secondary' }, - { - p: 'com.technototes.library.util', - c: 'Alliance.Selector', - l: 'select(Alliance)', - u: 'select(com.technototes.library.util.Alliance)', - }, - { - p: 'com.technototes.library.util', - c: 'Alliance.Selector', - l: 'selectOf(Alliance, T, T)', - u: 'selectOf(com.technototes.library.util.Alliance,T,T)', - }, - { p: 'com.technototes.library.util', c: 'Alliance', l: 'selectOf(T, T)', u: 'selectOf(T,T)' }, - { - p: 'com.technototes.library.util', - c: 'Alliance.Selector', - l: 'Selector(T, T)', - u: '%3Cinit%3E(T,T)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'Sensor', - l: 'Sensor(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { p: 'com.technototes.library.hardware.sensor', c: 'Sensor', l: 'Sensor(T)', u: '%3Cinit%3E(T)' }, - { - p: 'com.technototes.library.command', - c: 'SequentialCommandGroup', - l: 'SequentialCommandGroup(Command...)', - u: '%3Cinit%3E(com.technototes.library.command.Command...)', - }, - { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'servo(int)' }, - { - p: 'com.technototes.library.hardware.servo', - c: 'Servo', - l: 'Servo(Servo)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.Servo)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'HardwareBuilder', - l: 'servo(String)', - u: 'servo(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.servo', - c: 'Servo', - l: 'Servo(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'ServoBuilder', - l: 'ServoBuilder(int)', - u: '%3Cinit%3E(int)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'ServoBuilder', - l: 'ServoBuilder(Servo)', - u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.Servo)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'ServoBuilder', - l: 'ServoBuilder(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoGroup', - l: 'ServoGroup(Servo...)', - u: '%3Cinit%3E(com.technototes.library.hardware.servo.Servo...)', - }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoProfiler', - l: 'ServoProfiler(Servo)', - u: '%3Cinit%3E(com.technototes.library.hardware.servo.Servo)', - }, - { - p: 'com.technototes.library.subsystem.servo', - c: 'ServoSubsystem', - l: 'ServoSubsystem(Servo)', - u: '%3Cinit%3E(com.technototes.library.hardware.servo.Servo)', - }, - { - p: 'com.technototes.library.subsystem.servo', - c: 'ServoSubsystem', - l: 'ServoSubsystem(Servo...)', - u: '%3Cinit%3E(com.technototes.library.hardware.servo.Servo...)', - }, - { p: 'com.technototes.library.util', c: 'Integral', l: 'set(double)' }, - { p: 'com.technototes.library.util', c: 'Differential', l: 'setAverageOutput(double)' }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoProfiler', - l: 'setConstraints(double, double, double)', - u: 'setConstraints(double,double,double)', - }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoProfiler', - l: 'setConstraints(ServoProfiler.Constraints)', - u: 'setConstraints(com.technototes.library.hardware.servo.ServoProfiler.Constraints)', - }, - { - p: 'com.technototes.library.subsystem', - c: 'Subsystem', - l: 'setDefaultCommand(Command)', - u: 'setDefaultCommand(com.technototes.library.command.Command)', - }, - { p: 'com.technototes.library.util', c: 'Differential', l: 'setDeviationOutput(double)' }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder', - l: 'setDirection(MotorEncoder.Direction)', - u: 'setDirection(com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction)', - }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'setEnabled(boolean)' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'setEnabled(boolean)' }, - { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'setEnabled(boolean)' }, - { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'setEnabled(boolean)' }, - { p: 'com.technototes.library.general', c: 'Enablable', l: 'setEnabled(boolean)' }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotor', - l: 'setEncoder(Encoder)', - u: 'setEncoder(com.technototes.library.hardware.sensor.encoder.Encoder)', - }, - { p: 'com.technototes.library.hardware.sensor', c: 'IGyro', l: 'setHeading(double)' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'setHeading(double)' }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'setIndex(int)' }, - { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'setInverted(boolean)' }, - { p: 'com.technototes.library.control', c: 'CommandAxis', l: 'setInverted(boolean)' }, - { p: 'com.technototes.library.control', c: 'CommandButton', l: 'setInverted(boolean)' }, - { p: 'com.technototes.library.general', c: 'Invertable', l: 'setInverted(boolean)' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'setInverted(boolean)' }, - { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'setInverted(boolean)' }, - { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'setInverted(boolean)' }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotor', - l: 'setLimits(double, double)', - u: 'setLimits(double,double)', - }, - { - p: 'com.technototes.library.hardware.motor', - c: 'Motor', - l: 'setLimits(double, double)', - u: 'setLimits(double,double)', - }, - { - p: 'com.technototes.library.util', - c: 'Differential', - l: 'setLimits(double, double)', - u: 'setLimits(double,double)', - }, - { - p: 'com.technototes.library.subsystem.motor', - c: 'EncodedMotorSubsystem', - l: 'setMaxSpeed(double)', - }, - { - p: 'com.technototes.library.command', - c: 'CommandScheduler', - l: 'setOpMode(CommandOpMode)', - u: 'setOpMode(com.technototes.library.structure.CommandOpMode)', - }, - { - p: 'com.technototes.library.util', - c: 'Differential', - l: 'setOutputs(double, double)', - u: 'setOutputs(double,double)', - }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotor', - l: 'setPIDFCoeffecients(double, double, double, double)', - u: 'setPIDFCoeffecients(double,double,double,double)', - }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotor', - l: 'setPIDFCoeffecients(PIDFCoefficients)', - u: 'setPIDFCoeffecients(com.qualcomm.robotcore.hardware.PIDFCoefficients)', - }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'setPosition(double)' }, - { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'setPosition(double)' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoGroup', l: 'setPosition(double)' }, - { - p: 'com.technototes.library.subsystem.motor', - c: 'EncodedMotorSubsystem', - l: 'setPosition(double)', - }, - { p: 'com.technototes.library.subsystem.servo', c: 'ServoSubsystem', l: 'setPosition(double)' }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotor', - l: 'setPosition(double, double)', - u: 'setPosition(double,double)', - }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotorGroup', - l: 'setPosition(double, double)', - u: 'setPosition(double,double)', - }, - { - p: 'com.technototes.library.subsystem.motor', - c: 'EncodedMotorSubsystem', - l: 'setPosition(double, double)', - u: 'setPosition(double,double)', - }, - { - p: 'com.technototes.library.util', - c: 'Differential', - l: 'setPriority(Differential.DifferentialPriority)', - u: 'setPriority(com.technototes.library.util.Differential.DifferentialPriority)', - }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'setPriority(int)' }, - { - p: 'com.technototes.library.hardware.motor', - c: 'EncodedMotor', - l: 'setRunMode(DcMotor.RunMode)', - u: 'setRunMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)', - }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'setServoRange(double)' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'setSpeed(double)' }, - { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'setSpeed(double)' }, - { p: 'com.technototes.library.hardware.motor', c: 'MotorGroup', l: 'setSpeed(double)' }, - { p: 'com.technototes.library.subsystem.motor', c: 'MotorSubsystem', l: 'setSpeed(double)' }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'setState(Command.CommandState)', - u: 'setState(com.technototes.library.command.Command.CommandState)', - }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoProfiler', - l: 'setTargetPosition(double)', - }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoProfiler', - l: 'setTargetTolerance(double)', - }, - { p: 'com.technototes.library.control', c: 'AxisBase', l: 'setTriggerThreshold(double)' }, - { p: 'com.technototes.library.control', c: 'CommandAxis', l: 'setTriggerThreshold(double)' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'setVelocity(double)' }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotorGroup', l: 'setVelocity(double)' }, - { p: 'com.technototes.library.hardware', c: 'Speaker', l: 'setVolume(float)' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'share' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'SHARE' }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'SimpleMecanumDrivebaseSubsystem', - l: 'SimpleMecanumDrivebaseSubsystem(DoubleSupplier, Motor, Motor, Motor, Motor)', - u: '%3Cinit%3E(java.util.function.DoubleSupplier,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)', - }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'SimpleMecanumDrivebaseSubsystem', - l: 'SimpleMecanumDrivebaseSubsystem(Motor, Motor, Motor, Motor)', - u: '%3Cinit%3E(com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)', - }, - { p: 'com.technototes.library.command', c: 'Command', l: 'sleep(double)' }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'sleep(DoubleSupplier)', - u: 'sleep(java.util.function.DoubleSupplier)', - }, - { p: 'com.technototes.library.logger', c: 'Log.NumberSlider', l: 'slider()' }, - { p: 'com.technototes.library.logger', c: 'Log.NumberSlider', l: 'sliderBackground()' }, - { p: 'com.technototes.library.control', c: 'Binding.Type', l: 'SOME_ACTIVE' }, - { - p: 'com.technototes.library.hardware', - c: 'Speaker', - l: 'Speaker(float, String...)', - u: '%3Cinit%3E(float,java.lang.String...)', - }, - { - p: 'com.technototes.library.hardware', - c: 'Speaker', - l: 'Speaker(String...)', - u: '%3Cinit%3E(java.lang.String...)', - }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'square' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'SQUARE' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'start' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'START' }, - { - p: 'com.technototes.library.hardware', - c: 'Speaker', - l: 'start(String)', - u: 'start(java.lang.String)', - }, - { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'startAt(double)' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoGroup', l: 'startAt(double)' }, - { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'STARTED' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'stateMap' }, - { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'stickButton' }, - { p: 'com.technototes.library.hardware', c: 'Speaker', l: 'stop()' }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'SimpleMecanumDrivebaseSubsystem', - l: 'stop()', - }, - { p: 'com.technototes.library.subsystem.drivebase', c: 'TankDrivebaseSubsystem', l: 'stop()' }, - { p: 'com.technototes.library.subsystem.motor', c: 'MotorSubsystem', l: 'stop()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'stopRumble()' }, - { - p: 'com.technototes.library.logger.entry', - c: 'StringEntry', - l: 'StringEntry(String, Supplier, int, Color, String, Color)', - u: '%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,com.technototes.library.util.Color,java.lang.String,com.technototes.library.util.Color)', - }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'supplier' }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'tag' }, - { - p: 'com.technototes.library.subsystem.drivebase', - c: 'TankDrivebaseSubsystem', - l: 'TankDrivebaseSubsystem(Motor, Motor)', - u: '%3Cinit%3E(com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)', - }, - { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'tare()' }, - { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'tare()' }, - { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'telemetry' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'terminate()' }, - { p: 'com.technototes.library.command', c: 'CommandScheduler', l: 'terminateOpMode()' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberSliderEntry', l: 'tertiary' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'timeMap' }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'toggle(Command, Command)', - u: 'toggle(com.technototes.library.command.Command,com.technototes.library.command.Command)', - }, - { p: 'com.technototes.library.general', c: 'Enablable', l: 'toggleEnabled()' }, - { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'tolerance(int)' }, - { p: 'com.technototes.library.logger.entry', c: 'BooleanEntry', l: 'toString()' }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'toString()' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberBarEntry', l: 'toString()' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberEntry', l: 'toString()' }, - { p: 'com.technototes.library.logger.entry', c: 'NumberSliderEntry', l: 'toString()' }, - { p: 'com.technototes.library.logger.entry', c: 'StringEntry', l: 'toString()' }, - { - p: 'com.technototes.library.hardware.servo', - c: 'ServoProfiler', - l: 'translateTargetPosition(double)', - }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'triangle' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'TRIANGLE' }, - { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'trueColor()' }, - { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'trueFormat()' }, - { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'trueValue()' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'universalLoop()' }, - { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'up' }, - { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'update()' }, - { p: 'com.technototes.library.util', c: 'Integral', l: 'update(double)' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'uponInit()' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'uponStart()' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'value()' }, - { p: 'com.technototes.library.logger', c: 'Log.Logs', l: 'value()' }, - { p: 'com.technototes.library.logger', c: 'LogConfig.Blacklist', l: 'value()' }, - { p: 'com.technototes.library.logger', c: 'LogConfig.Whitelist', l: 'value()' }, - { - p: 'com.technototes.library.command', - c: 'Command.CommandState', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.library.control', - c: 'Binding.Type', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.library.control', - c: 'GamepadBase.Axis', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.library.control', - c: 'GamepadBase.Button', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder.Direction', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware.sensor', - c: 'IMU.AxesSigns', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.library.hardware2', - c: 'IMUBuilder.AxesSigns', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.library.structure', - c: 'CommandOpMode.OpModeState', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.library.util', - c: 'Alliance', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.library.util', - c: 'Color', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { - p: 'com.technototes.library.util', - c: 'Differential.DifferentialPriority', - l: 'valueOf(String)', - u: 'valueOf(java.lang.String)', - }, - { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'values()' }, - { p: 'com.technototes.library.control', c: 'Binding.Type', l: 'values()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'values()' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'values()' }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'MotorEncoder.Direction', - l: 'values()', - }, - { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'values()' }, - { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'values()' }, - { p: 'com.technototes.library.structure', c: 'CommandOpMode.OpModeState', l: 'values()' }, - { p: 'com.technototes.library.util', c: 'Alliance', l: 'values()' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'values()' }, - { p: 'com.technototes.library.util', c: 'Differential.DifferentialPriority', l: 'values()' }, - { - p: 'com.technototes.library.hardware2', - c: 'MotorBuilder', - l: 'velocity(PIDFCoefficients)', - u: 'velocity(com.qualcomm.robotcore.hardware.PIDFCoefficients)', - }, - { - p: 'com.technototes.library.command', - c: 'WaitCommand', - l: 'WaitCommand(double)', - u: '%3Cinit%3E(double)', - }, - { - p: 'com.technototes.library.command', - c: 'WaitCommand', - l: 'WaitCommand(DoubleSupplier)', - u: '%3Cinit%3E(java.util.function.DoubleSupplier)', - }, - { - p: 'com.technototes.library.command', - c: 'Command', - l: 'waitUntil(BooleanSupplier)', - u: 'waitUntil(java.util.function.BooleanSupplier)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whenInverseToggled(Command)', - u: 'whenInverseToggled(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whenPressed(Command)', - u: 'whenPressed(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whenPressedReleased(Command, Command)', - u: 'whenPressedReleased(com.technototes.library.command.Command,com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whenReleased(Command)', - u: 'whenReleased(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whenToggled(Command)', - u: 'whenToggled(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whileInverseToggled(Command)', - u: 'whileInverseToggled(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whilePressed(Command)', - u: 'whilePressed(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whilePressedContinuous(Command)', - u: 'whilePressedContinuous(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whilePressedOnce(Command)', - u: 'whilePressedOnce(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whilePressedReleased(Command, Command)', - u: 'whilePressedReleased(com.technototes.library.command.Command,com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whileReleased(Command)', - u: 'whileReleased(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whileReleasedOnce(Command)', - u: 'whileReleasedOnce(com.technototes.library.command.Command)', - }, - { - p: 'com.technototes.library.control', - c: 'CommandInput', - l: 'whileToggled(Command)', - u: 'whileToggled(com.technototes.library.command.Command)', - }, - { p: 'com.technototes.library.util', c: 'Color', l: 'WHITE' }, - { p: 'com.technototes.library.command', c: 'Command', l: 'withTimeout(double)' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'x' }, - { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'x' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'X' }, - { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'xAxis' }, - { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'y' }, - { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'Y' }, - { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'yAxis' }, - { p: 'com.technototes.library.util', c: 'Color', l: 'YELLOW' }, - { p: 'com.technototes.library.hardware.sensor', c: 'IGyro', l: 'zero()' }, - { p: 'com.technototes.library.util', c: 'Integral', l: 'zero()' }, - { p: 'com.technototes.library.hardware.sensor.encoder', c: 'Encoder', l: 'zeroEncoder()' }, - { - p: 'com.technototes.library.hardware.sensor.encoder', - c: 'ExternalEncoder', - l: 'zeroEncoder()', - }, - { p: 'com.technototes.library.hardware.sensor.encoder', c: 'MotorEncoder', l: 'zeroEncoder()' }, -]; -updateSearchResults(); +memberSearchIndex = [{"p":"com.technototes.library.util","c":"SmartConsumer","l":"accept(T)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"addCommands(Command...)","u":"addCommands(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"additionalInitConditions()"},{"p":"com.technototes.library.command","c":"Command","l":"addRequirements(Subsystem...)","u":"addRequirements(com.technototes.library.subsystem.Subsystem...)"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"addSongs(String...)","u":"addSongs(java.lang.String...)"},{"p":"com.technototes.library.control","c":"Binding.Type","l":"ALL_ACTIVE"},{"p":"com.technototes.library.command","c":"Command","l":"alongWith(Command...)","u":"alongWith(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"alpha()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"analog(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"analog(String)","u":"analog(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"AnalogBuilder","l":"AnalogBuilder(AnalogSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogSensor)"},{"p":"com.technototes.library.hardware2","c":"AnalogBuilder","l":"AnalogBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"AnalogBuilder","l":"AnalogBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"AnalogSensor","l":"AnalogSensor(AnalogInput)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogInput)"},{"p":"com.technototes.library.hardware.sensor","c":"AnalogSensor","l":"AnalogSensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.command","c":"Command","l":"andThen(Command...)","u":"andThen(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"anyCancelled"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"apply(UnaryOperator)","u":"apply(java.util.function.UnaryOperator)"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"arcadeDrive(double, double)","u":"arcadeDrive(double,double)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"argb()"},{"p":"com.technototes.library.hardware.sensor","c":"ColorSensor","l":"argb()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"argb()"},{"p":"com.technototes.library.command","c":"Command","l":"asConditional(BooleanSupplier)","u":"asConditional(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"at(double)"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"AVERAGE"},{"p":"com.technototes.library.control","c":"AxisBase","l":"AxisBase(DoubleSupplier)","u":"%3Cinit%3E(java.util.function.DoubleSupplier)"},{"p":"com.technototes.library.control","c":"AxisBase","l":"AxisBase(DoubleSupplier, double)","u":"%3Cinit%3E(java.util.function.DoubleSupplier,double)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"axisInstance(DoubleSupplier)","u":"axisInstance(java.util.function.DoubleSupplier)"},{"p":"com.technototes.library.util","c":"Color","l":"BLACK"},{"p":"com.technototes.library.util","c":"Alliance","l":"BLUE"},{"p":"com.technototes.library.util","c":"Color","l":"BLUE"},{"p":"com.technototes.library.util","c":"Characters","l":"BLUE_CIRCLE"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"blue()"},{"p":"com.technototes.library.logger.entry","c":"BooleanEntry","l":"BooleanEntry(String, Supplier, int, String, String)","u":"%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,java.lang.String,java.lang.String)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"booleanSupplier"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"brake()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"brake()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"brake()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"build()"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"build()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"ButtonBase(BooleanSupplier)","u":"%3Cinit%3E(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"buttonInstance(BooleanSupplier)","u":"buttonInstance(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"bVal"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"bVal"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"calculateA(double, double, double, double)","u":"calculateA(double,double,double,double)"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"calculateS(double, double, double, double)","u":"calculateS(double,double,double,double)"},{"p":"com.technototes.library.command","c":"Command","l":"cancel()"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"CANCELLED"},{"p":"com.technototes.library.command","c":"Command","l":"cancelUpon(BooleanSupplier)","u":"cancelUpon(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.logger","c":"Logger","l":"captionDivider"},{"p":"com.technototes.library.util","c":"Characters","l":"Characters()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.command","c":"ChoiceCommand","l":"ChoiceCommand(BooleanSupplier, Command)","u":"%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"ChoiceCommand","l":"ChoiceCommand(Pair...)","u":"%3Cinit%3E(android.util.Pair...)"},{"p":"com.technototes.library.command","c":"Command","l":"clear()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"close()"},{"p":"com.technototes.library.util","c":"MathUtils","l":"closestTo(double, double...)","u":"closestTo(double,double...)"},{"p":"com.technototes.library.util","c":"MathUtils","l":"closestTo(double, int...)","u":"closestTo(double,int...)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"coast()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"coast()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"coast()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"codriverGamepad"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"color(String)","u":"color(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"ColorBuilder","l":"ColorBuilder(ColorSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorSensor)"},{"p":"com.technototes.library.hardware2","c":"ColorBuilder","l":"ColorBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"ColorDistanceSensor(ColorRangeSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorRangeSensor)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"ColorDistanceSensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"colorRange(String)","u":"colorRange(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"ColorRangeBuilder(ColorRangeSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorRangeSensor)"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"ColorRangeBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorSensor","l":"ColorSensor(ColorSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorSensor)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorSensor","l":"ColorSensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"CommandAxis(DoubleSupplier)","u":"%3Cinit%3E(java.util.function.DoubleSupplier)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"CommandAxis(DoubleSupplier, double)","u":"%3Cinit%3E(java.util.function.DoubleSupplier,double)"},{"p":"com.technototes.library.command","c":"CommandBase","l":"CommandBase()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.control","c":"CommandBinding","l":"CommandBinding(Binding.Type, CommandInput...)","u":"%3Cinit%3E(com.technototes.library.control.Binding.Type,com.technototes.library.control.CommandInput...)"},{"p":"com.technototes.library.control","c":"CommandBinding","l":"CommandBinding(CommandInput...)","u":"%3Cinit%3E(com.technototes.library.control.CommandInput...)"},{"p":"com.technototes.library.control","c":"CommandButton","l":"CommandButton(BooleanSupplier)","u":"%3Cinit%3E(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"CommandGamepad(Gamepad)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.Gamepad)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"CommandGroup(boolean, Command...)","u":"%3Cinit%3E(boolean,com.technototes.library.command.Command...)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"commandMap"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"CommandOpMode()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.command","c":"ConditionalCommand","l":"ConditionalCommand(BooleanSupplier)","u":"%3Cinit%3E(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.command","c":"ConditionalCommand","l":"ConditionalCommand(BooleanSupplier, Command)","u":"%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"ConditionalCommand","l":"ConditionalCommand(BooleanSupplier, Command, Command)","u":"%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.util","c":"MathUtils","l":"constrain(double, double, double)","u":"constrain(double,double,double)"},{"p":"com.technototes.library.util","c":"MathUtils","l":"constrain(int, int, int)","u":"constrain(int,int,int)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"Constraints(double, double, double)","u":"%3Cinit%3E(double,double,double)"},{"p":"com.technototes.library.util","c":"SmartConsumer","l":"consume(T)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"countCancel"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"countCancel()"},{"p":"com.technototes.library.command","c":"Command","l":"create(Command, Subsystem...)","u":"create(com.technototes.library.command.Command,com.technototes.library.subsystem.Subsystem...)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"create(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"create(String)","u":"create(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"crServo(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"crServo(String)","u":"crServo(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"CRServoBuilder(CRServo)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.CRServo)"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"CRServoBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"CRServoBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.util","c":"Color","l":"CYAN"},{"p":"com.technototes.library.util","c":"Characters","l":"CYCLE"},{"p":"com.technototes.library.util","c":"Color","l":"DARK_GRAY"},{"p":"com.technototes.library.command","c":"Command","l":"deadline(Command...)","u":"deadline(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.control","c":"AxisBase","l":"DEFAULT_TRIGGER_THRESHOLD"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"degrees()"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"degrees()"},{"p":"com.technototes.library.hardware","c":"HardwareDevice","l":"device"},{"p":"com.technototes.library.subsystem","c":"DeviceSubsystem","l":"device"},{"p":"com.technototes.library.subsystem","c":"DeviceSubsystem","l":"DeviceSubsystem(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"DIFFERENCE"},{"p":"com.technototes.library.util","c":"Differential","l":"Differential(DoubleConsumer, DoubleConsumer)","u":"%3Cinit%3E(java.util.function.DoubleConsumer,java.util.function.DoubleConsumer)"},{"p":"com.technototes.library.util","c":"Differential","l":"Differential(DoubleConsumer, DoubleConsumer, Differential.DifferentialPriority)","u":"%3Cinit%3E(java.util.function.DoubleConsumer,java.util.function.DoubleConsumer,com.technototes.library.util.Differential.DifferentialPriority)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"digital(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"digital(String)","u":"digital(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"DigitalBuilder(DigitalChannel)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DigitalChannel)"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"DigitalBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"DigitalBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"DigitalSensor","l":"DigitalSensor(DigitalChannel)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DigitalChannel)"},{"p":"com.technototes.library.hardware.sensor","c":"DigitalSensor","l":"DigitalSensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"direction(DcMotorSimple.Direction)","u":"direction(com.qualcomm.robotcore.hardware.DcMotorSimple.Direction)"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"direction(DcMotorSimple.Direction)","u":"direction(com.qualcomm.robotcore.hardware.DcMotorSimple.Direction)"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"direction(Servo.Direction)","u":"direction(com.qualcomm.robotcore.hardware.Servo.Direction)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"disable()"},{"p":"com.technototes.library.general","c":"Enablable","l":"disable()"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"disable()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"disable()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"distance(String)","u":"distance(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"DistanceBuilder","l":"DistanceBuilder(DistanceSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DistanceSensor)"},{"p":"com.technototes.library.hardware2","c":"DistanceBuilder","l":"DistanceBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.control","c":"AxisBase","l":"doubleSupplier"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"down"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"dpad"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"dpadDown"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"dpadLeft"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"dpadRight"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"dpadUp"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"drive(double, double)","u":"drive(double,double)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"drive(double, double, double)","u":"drive(double,double,double)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"drive(double, double, double, double)","u":"drive(double,double,double,double)"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"DrivebaseSubsystem(DoubleSupplier, Motor...)","u":"%3Cinit%3E(java.util.function.DoubleSupplier,com.technototes.library.hardware.motor.Motor...)"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"DrivebaseSubsystem(Motor...)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.Motor...)"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"driverGamepad"},{"p":"com.technototes.library.util","c":"Characters","l":"DUCK"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"DummyDevice(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.logger","c":"LogConfig.Run","l":"duringInit()"},{"p":"com.technototes.library.logger","c":"LogConfig.Run","l":"duringRun()"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"enable()"},{"p":"com.technototes.library.general","c":"Enablable","l":"enable()"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"enable()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"enable()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"EncodedMotor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"EncodedMotor(String, Encoder)","u":"%3Cinit%3E(java.lang.String,com.technototes.library.hardware.sensor.encoder.Encoder)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"EncodedMotor(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"EncodedMotor(T, Encoder)","u":"%3Cinit%3E(T,com.technototes.library.hardware.sensor.encoder.Encoder)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"EncodedMotorGroup(EncodedMotor, Motor...)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.Motor...)"},{"p":"com.technototes.library.subsystem.motor","c":"EncodedMotorSubsystem","l":"EncodedMotorSubsystem(EncodedMotor)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor)"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"END"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"end()"},{"p":"com.technototes.library.command","c":"Command","l":"end(boolean)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"end(boolean)"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"Entry(String, Supplier, int)","u":"%3Cinit%3E(java.lang.String,java.util.function.Supplier,int)"},{"p":"com.technototes.library.command","c":"Command","l":"execute()"},{"p":"com.technototes.library.command","c":"CommandBase","l":"execute()"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"execute()"},{"p":"com.technototes.library.command","c":"ConditionalCommand","l":"execute()"},{"p":"com.technototes.library.command","c":"WaitCommand","l":"execute()"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"EXECUTING"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"expandedPWM()"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"expandedRange()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"ExternalEncoder","l":"ExternalEncoder(AnalogInput)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogInput)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"ExternalEncoder","l":"ExternalEncoder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.logger","c":"Log.Boolean","l":"falseValue()"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"FINISHED"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"flMotor"},{"p":"com.technototes.library.logger","c":"Log","l":"format()"},{"p":"com.technototes.library.util","c":"Color","l":"format(Object)","u":"format(java.lang.Object)"},{"p":"com.technototes.library.util","c":"Color","l":"format(String, Object...)","u":"format(java.lang.String,java.lang.Object...)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder.Direction","l":"FORWARD"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"forward()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"forward()"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"forward()"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"frMotor"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"gain(float)"},{"p":"com.technototes.library.util","c":"Characters","l":"GAMEPAD"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"gamepad1"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"gamepad2"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"GamepadBase(Gamepad, Class, Class)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.Gamepad,java.lang.Class,java.lang.Class)"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"GamepadDpad(T, T, T, T)","u":"%3Cinit%3E(T,T,T,T)"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"GamepadStick(T, T, U)","u":"%3Cinit%3E(T,T,U)"},{"p":"com.technototes.library.command","c":"Command","l":"get()"},{"p":"com.technototes.library.control","c":"Binding","l":"get()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"get()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"get()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"get()"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"get()"},{"p":"com.technototes.library.control","c":"Binding","l":"get(Binding.Type)","u":"get(com.technototes.library.control.Binding.Type)"},{"p":"com.technototes.library.util","c":"Alliance","l":"get(Class)","u":"get(java.lang.Class)"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"getAllDeviceList()"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"getAllDevices()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"getAllDevices()"},{"p":"com.technototes.library.hardware.motor","c":"MotorGroup","l":"getAllDevices()"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"getAllDevices()"},{"p":"com.technototes.library.control","c":"Stick","l":"getAngle()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"getAngularOrientation()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"getAngularOrientation(AngleUnit)","u":"getAngularOrientation(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"getAngularVelocity()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"getAngularVelocity(AngleUnit)","u":"getAngularVelocity(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)"},{"p":"com.technototes.library.control","c":"Binding","l":"getAsBoolean()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"getAsBoolean()"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"getAsButton()"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"getAsButton(double)"},{"p":"com.technototes.library.control","c":"AxisBase","l":"getAsDouble()"},{"p":"com.technototes.library.hardware","c":"Sensored","l":"getAsDouble()"},{"p":"com.technototes.library.util","c":"Differential","l":"getAverage()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getAxis(GamepadBase.Axis)","u":"getAxis(com.technototes.library.control.GamepadBase.Axis)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getAxisAsBoolean(GamepadBase.Axis)","u":"getAxisAsBoolean(com.technototes.library.control.GamepadBase.Axis)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getAxisAsDouble(GamepadBase.Axis)","u":"getAxisAsDouble(com.technototes.library.control.GamepadBase.Axis)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getButton(GamepadBase.Button)","u":"getButton(com.technototes.library.control.GamepadBase.Button)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getButtonAsBoolean(GamepadBase.Button)","u":"getButtonAsBoolean(com.technototes.library.control.GamepadBase.Button)"},{"p":"com.technototes.library.util","c":"Alliance","l":"getColor()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"getConnectionInfo()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"getCorrectedVelocity()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"getCurrent(Subsystem)","u":"getCurrent(com.technototes.library.subsystem.Subsystem)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"getCurrentPosition()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getCurrentPosition()"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"getCurrentSong()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"getDefault(Subsystem)","u":"getDefault(com.technototes.library.subsystem.Subsystem)"},{"p":"com.technototes.library.subsystem","c":"Subsystem","l":"getDefaultCommand()"},{"p":"com.technototes.library.control","c":"Binding","l":"getDefaultType()"},{"p":"com.technototes.library.control","c":"CommandBinding","l":"getDefaultType()"},{"p":"com.technototes.library.util","c":"Differential","l":"getDeviation()"},{"p":"com.technototes.library.hardware","c":"HardwareDevice","l":"getDevice()"},{"p":"com.technototes.library.subsystem","c":"DeviceSubsystem","l":"getDevice()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"getDeviceName()"},{"p":"com.technototes.library.util","c":"Differential","l":"getDifferentialPriority()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"getDirection()"},{"p":"com.technototes.library.hardware.sensor","c":"IDistanceSensor","l":"getDistance()"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"getDistance(DistanceUnit)","u":"getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"IDistanceSensor","l":"getDistance(DistanceUnit)","u":"getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"Rev2MDistanceSensor","l":"getDistance(DistanceUnit)","u":"getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.control","c":"Stick","l":"getDistanceFromCenter()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getDpad()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"getEncoder()"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"getFollowerist()"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"getFollowers()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"getFollowers()"},{"p":"com.technototes.library.hardware.motor","c":"MotorGroup","l":"getFollowers()"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"getFollowers()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getGamepad()"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"getGyro()"},{"p":"com.technototes.library.util","c":"Color","l":"getHexValue()"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"getIndex()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"getInstance()"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"getInstance()"},{"p":"com.technototes.library.control","c":"CommandButton","l":"getInstance()"},{"p":"com.technototes.library.control","c":"CommandInput","l":"getInstance()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"getInverted()"},{"p":"com.technototes.library.general","c":"Invertable","l":"getInverted()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"getInverted()"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"getInverted()"},{"p":"com.technototes.library.util","c":"SmartConsumer","l":"getLast()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getLeftStick()"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"getLight()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"getLogger()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"getManufacturer()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"getMap()"},{"p":"com.technototes.library.util","c":"MathUtils","l":"getMax(double...)"},{"p":"com.technototes.library.util","c":"MathUtils","l":"getMax(int...)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getMaxAccel()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"getMaxAcceleration()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getMaxVel()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"getMaxVelocity()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder.Direction","l":"getMultiplier()"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"getName()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"getOpModeRuntime()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"getOpModeRuntime()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"getOpModeState()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"Encoder","l":"getPosition()"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"getPosition()"},{"p":"com.technototes.library.subsystem.servo","c":"ServoSubsystem","l":"getPosition()"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"getPriority()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"getProportion()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"getRawVelocity()"},{"p":"com.technototes.library.command","c":"Command","l":"getRequirements()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getRightStick()"},{"p":"com.technototes.library.command","c":"Command","l":"getRuntime()"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"getScale(double...)"},{"p":"com.technototes.library.command","c":"WaitCommand","l":"getSeconds()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"getSensorValue()"},{"p":"com.technototes.library.hardware.sensor","c":"AnalogSensor","l":"getSensorValue()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"ExternalEncoder","l":"getSensorValue()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"getSensorValue()"},{"p":"com.technototes.library.hardware","c":"Sensored","l":"getSensorValue()"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"getSensorValue()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getServo()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"getSpeed()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"getSpeed()"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"getSpeed()"},{"p":"com.technototes.library.subsystem.motor","c":"MotorSubsystem","l":"getSpeed()"},{"p":"com.technototes.library.command","c":"Command","l":"getState()"},{"p":"com.technototes.library.control","c":"Binding","l":"getSuppliers()"},{"p":"com.technototes.library.control","c":"CommandBinding","l":"getSuppliers()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getTargetPosition()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getTargetTolerance()"},{"p":"com.technototes.library.control","c":"AxisBase","l":"getTriggerThreshold()"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"getUnit()"},{"p":"com.technototes.library.hardware.sensor","c":"IDistanceSensor","l":"getUnit()"},{"p":"com.technototes.library.hardware.sensor","c":"Rev2MDistanceSensor","l":"getUnit()"},{"p":"com.technototes.library.hardware.sensor","c":"DigitalSensor","l":"getValue()"},{"p":"com.technototes.library.util","c":"Integral","l":"getValue()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"getVelocity()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"getVersion()"},{"p":"com.technototes.library","c":"RobotLibrary","l":"getVersion()"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"getVolume()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"getXAxis()"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"getXAxis()"},{"p":"com.technototes.library.control","c":"Stick","l":"getXAxis()"},{"p":"com.technototes.library.control","c":"Stick","l":"getXSupplier()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"getYAxis()"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"getYAxis()"},{"p":"com.technototes.library.control","c":"Stick","l":"getYAxis()"},{"p":"com.technototes.library.control","c":"Stick","l":"getYSupplier()"},{"p":"com.technototes.library.util","c":"Color","l":"GREEN"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"green()"},{"p":"com.technototes.library.hardware.sensor","c":"IGyro","l":"gyroHeading()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"gyroHeading()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"gyroHeading(AngleUnit)","u":"gyroHeading(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"IGyro","l":"gyroHeadingInDegrees()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"gyroHeadingInDegrees()"},{"p":"com.technototes.library.hardware.sensor","c":"IGyro","l":"gyroHeadingInRadians()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"gyroHeadingInRadians()"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"gyroSupplier"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"HardwareBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"HardwareBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"HardwareBuilder(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.hardware","c":"HardwareDevice","l":"HardwareDevice(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware","c":"HardwareDevice","l":"HardwareDevice(T)","u":"%3Cinit%3E(T)"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"hardwareMap"},{"p":"com.technototes.library.hardware","c":"HardwareDevice","l":"hardwareMap"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"hsv()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"hsvArray()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"hue()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"idle(DcMotor.ZeroPowerBehavior)","u":"idle(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"ignoreCancel()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"IMU(IMU, IMU.Parameters)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.IMU,com.qualcomm.robotcore.hardware.IMU.Parameters)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"IMU(IMU, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.IMU,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.LogoFacingDirection,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.UsbFacingDirection)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"imu(String)","u":"imu(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"IMU(String, IMU.Parameters)","u":"%3Cinit%3E(java.lang.String,com.qualcomm.robotcore.hardware.IMU.Parameters)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"IMU(String, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection)","u":"%3Cinit%3E(java.lang.String,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.LogoFacingDirection,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.UsbFacingDirection)"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"IMUBuilder(BNO055IMUImpl)","u":"%3Cinit%3E(com.qualcomm.hardware.bosch.BNO055IMUImpl)"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"IMUBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"incrementPosition(double)"},{"p":"com.technototes.library.logger","c":"Log.Boolean","l":"index()"},{"p":"com.technototes.library.logger","c":"Log","l":"index()"},{"p":"com.technototes.library.logger","c":"Log.Number","l":"index()"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"INIT"},{"p":"com.technototes.library.logger","c":"Logger","l":"initEntries"},{"p":"com.technototes.library.command","c":"Command","l":"initialize()"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"initialize()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"initialize(IMU.Parameters)","u":"initialize(com.qualcomm.robotcore.hardware.IMU.Parameters)"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"INITIALIZING"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"initLoop()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"initMap(HardwareMap)","u":"initMap(com.qualcomm.robotcore.hardware.HardwareMap)"},{"p":"com.technototes.library.logger","c":"Logger","l":"initUpdate()"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"input()"},{"p":"com.technototes.library.util","c":"Range","l":"inRange(double)"},{"p":"com.technototes.library.util","c":"Integral","l":"Integral()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.util","c":"Integral","l":"Integral(double)","u":"%3Cinit%3E(double)"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"INTERRUPTED"},{"p":"com.technototes.library.general","c":"Invertable","l":"invert()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"invert()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"invert()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"invert()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"isAtPosition(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"isAtTarget()"},{"p":"com.technototes.library.command","c":"Command","l":"isCancelled()"},{"p":"com.technototes.library.general","c":"Enablable","l":"isDisabled()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isEnabled()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"isEnabled()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"isEnabled()"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"isEnabled()"},{"p":"com.technototes.library.general","c":"Enablable","l":"isEnabled()"},{"p":"com.technototes.library.command","c":"Command","l":"isFinished()"},{"p":"com.technototes.library.command","c":"CommandBase","l":"isFinished()"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"isFinished()"},{"p":"com.technototes.library.command","c":"ConditionalCommand","l":"isFinished()"},{"p":"com.technototes.library.command","c":"ParallelCommandGroup","l":"isFinished()"},{"p":"com.technototes.library.command","c":"ParallelDeadlineGroup","l":"isFinished()"},{"p":"com.technototes.library.command","c":"ParallelRaceGroup","l":"isFinished()"},{"p":"com.technototes.library.command","c":"SequentialCommandGroup","l":"isFinished()"},{"p":"com.technototes.library.command","c":"WaitCommand","l":"isFinished()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isInverseToggled()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isJustInverseToggled()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isJustPressed()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isJustReleased()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isJustToggled()"},{"p":"com.technototes.library","c":"RobotLibrary","l":"isPreRelease()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isPressed()"},{"p":"com.technototes.library.util","c":"MathUtils","l":"isPrime(int)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isReleased()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"isRumbling()"},{"p":"com.technototes.library.command","c":"Command","l":"isRunning()"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"isState(CommandOpMode.OpModeState...)","u":"isState(com.technototes.library.structure.CommandOpMode.OpModeState...)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isToggled()"},{"p":"com.technototes.library.command","c":"IterativeCommand","l":"IterativeCommand(Function, BooleanSupplier)","u":"%3Cinit%3E(java.util.function.Function,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.command","c":"IterativeCommand","l":"IterativeCommand(Function, int)","u":"%3Cinit%3E(java.util.function.Function,int)"},{"p":"com.technototes.library.command","c":"IterativeCommand","l":"IterativeCommand(Function, int, BooleanSupplier)","u":"%3Cinit%3E(java.util.function.Function,int,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.command","c":"IterativeCommand","l":"IterativeCommand(Function, T, T, Function)","u":"%3Cinit%3E(java.util.function.Function,T,T,java.util.function.Function)"},{"p":"com.technototes.library.command","c":"IterativeCommand","l":"IterativeCommand(Function, T, T, Function, BooleanSupplier)","u":"%3Cinit%3E(java.util.function.Function,T,T,java.util.function.Function,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"joystickDrive(double, double, double)","u":"joystickDrive(double,double,double)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"joystickDriveWithGyro(double, double, double, double)","u":"joystickDriveWithGyro(double,double,double,double)"},{"p":"com.technototes.library.command","c":"Command","l":"justFinished()"},{"p":"com.technototes.library.command","c":"Command","l":"justFinishedNoCancel()"},{"p":"com.technototes.library.command","c":"Command","l":"justStarted()"},{"p":"com.technototes.library.command","c":"SequentialCommandGroup","l":"lastCommand"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"led(boolean)"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"left"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"LEFT_BUMPER"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"LEFT_STICK_BUTTON"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"LEFT_STICK_X"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"LEFT_STICK_Y"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"LEFT_TRIGGER"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftBumper"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"leftSide"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftStick"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftStickButton"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftStickX"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftStickY"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftTrigger"},{"p":"com.technototes.library.util","c":"Color","l":"LIGHT_GRAY"},{"p":"com.technototes.library.util","c":"Color","l":"LIME"},{"p":"com.technototes.library.logger","c":"Logger","l":"Logger(OpMode)","u":"%3Cinit%3E(com.qualcomm.robotcore.eventloop.opmode.OpMode)"},{"p":"com.technototes.library.util","c":"Color","l":"MAGENTA"},{"p":"com.technototes.library.util","c":"SmartConsumer","l":"map"},{"p":"com.technototes.library.util","c":"MathUtils","l":"map(double, double, double, double, double)","u":"map(double,double,double,double,double)"},{"p":"com.technototes.library.util","c":"MapUtils","l":"MapUtils()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.util","c":"MathUtils","l":"MathUtils()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.util","c":"Range","l":"max"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"maxAcceleration"},{"p":"com.technototes.library.subsystem.motor","c":"EncodedMotorSubsystem","l":"maxSpeed"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"maxVelocity"},{"p":"com.technototes.library.util","c":"Range","l":"middle()"},{"p":"com.technototes.library.util","c":"Range","l":"min"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"mode(DcMotor.RunMode)","u":"mode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"mode(DigitalChannel.Mode)","u":"mode(com.qualcomm.robotcore.hardware.DigitalChannel.Mode)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"motor(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"motor(String)","u":"motor(java.lang.String)"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"Motor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"Motor(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"MotorBuilder(DcMotorEx)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx)"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"MotorBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"MotorBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"MotorEncoder(DcMotorEx)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"MotorEncoder(DcMotorEx, ElapsedTime)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx,com.qualcomm.robotcore.util.ElapsedTime)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"MotorEncoder(EncodedMotor)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"MotorEncoder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.motor","c":"MotorGroup","l":"MotorGroup(Motor...)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.Motor...)"},{"p":"com.technototes.library.subsystem.motor","c":"MotorSubsystem","l":"MotorSubsystem(T)","u":"%3Cinit%3E(T)"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"msStuckDetectStop"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"name"},{"p":"com.technototes.library.logger","c":"Log.Boolean","l":"name()"},{"p":"com.technototes.library.logger","c":"Log","l":"name()"},{"p":"com.technototes.library.logger","c":"Log.Number","l":"name()"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"NEUTRAL"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"NNN"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"NNN"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"NNP"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"NNP"},{"p":"com.technototes.library.util","c":"Color","l":"NO_COLOR"},{"p":"com.technototes.library.util","c":"Alliance","l":"NONE"},{"p":"com.technototes.library.control","c":"Binding.Type","l":"NONE_ACTIVE"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"NPN"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"NPN"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"NPP"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"NPP"},{"p":"com.technototes.library.logger.entry","c":"NumberEntry","l":"numberColor"},{"p":"com.technototes.library.logger.entry","c":"NumberEntry","l":"NumberEntry(String, Supplier, int)","u":"%3Cinit%3E(java.lang.String,java.util.function.Supplier,int)"},{"p":"com.technototes.library.util","c":"MapUtils","l":"of(Pair...)","u":"of(android.util.Pair...)"},{"p":"com.technototes.library.util","c":"Alliance.Selector","l":"of(T, T)","u":"of(T,T)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"offset"},{"p":"com.technototes.library.command","c":"Command","l":"onlyIf(BooleanSupplier)","u":"onlyIf(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"onRange(double, double)","u":"onRange(double,double)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"onUnit(DistanceUnit)","u":"onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"IDistanceSensor","l":"onUnit(DistanceUnit)","u":"onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"Rev2MDistanceSensor","l":"onUnit(DistanceUnit)","u":"onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.util","c":"Color","l":"ORANGE"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"output()"},{"p":"com.technototes.library.command","c":"ParallelCommandGroup","l":"ParallelCommandGroup(Command...)","u":"%3Cinit%3E(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.command","c":"ParallelDeadlineGroup","l":"ParallelDeadlineGroup(Command, Command...)","u":"%3Cinit%3E(com.technototes.library.command.Command,com.technototes.library.command.Command...)"},{"p":"com.technototes.library.command","c":"ParallelRaceGroup","l":"ParallelRaceGroup(Command...)","u":"%3Cinit%3E(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"parameter(Consumer)","u":"parameter(java.util.function.Consumer)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"periodic()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"periodic()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"periodic()"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"periodic()"},{"p":"com.technototes.library.general","c":"Periodic","l":"periodic()"},{"p":"com.technototes.library.subsystem","c":"DeviceSubsystem","l":"periodic()"},{"p":"com.technototes.library.subsystem","c":"Subsystem","l":"periodic()"},{"p":"com.technototes.library.util","c":"Color","l":"PINK"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"PNN"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"PNN"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"PNP"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"PNP"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"position(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"positionThreshold"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"PPN"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"PPN"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"PPP"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"PPP"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"priority"},{"p":"com.technototes.library.logger","c":"Log.Boolean","l":"priority()"},{"p":"com.technototes.library.logger","c":"Log.Number","l":"priority()"},{"p":"com.technototes.library.logger","c":"Log","l":"priority()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"product"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"propagate(double)"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"propogate(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"propogate(double)"},{"p":"com.technototes.library.hardware.motor","c":"MotorGroup","l":"propogate(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"propogate(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"proportion"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_circle"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_CIRCLE"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_cross"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_CROSS"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_options"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_OPTIONS"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_share"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_SHARE"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_square"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_SQUARE"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_triangle"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_TRIANGLE"},{"p":"com.technototes.library.util","c":"Color","l":"PURPLE"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"pwmRange(double, double)","u":"pwmRange(double,double)"},{"p":"com.technototes.library.util","c":"MathUtils","l":"pythag(double...)"},{"p":"com.technototes.library.command","c":"Command","l":"raceWith(Command...)","u":"raceWith(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"radians()"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"radians()"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"range(double, double)","u":"range(double,double)"},{"p":"com.technototes.library.util","c":"Range","l":"Range(double, double)","u":"%3Cinit%3E(double,double)"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"raw()"},{"p":"com.technototes.library.util","c":"Alliance","l":"RED"},{"p":"com.technototes.library.util","c":"Color","l":"RED"},{"p":"com.technototes.library.util","c":"Characters","l":"RED_SQUARE"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"red()"},{"p":"com.technototes.library.subsystem","c":"Subsystem","l":"register()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"register(Periodic)","u":"register(com.technototes.library.general.Periodic)"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"remap(AxesOrder, IMUBuilder.AxesSigns)","u":"remap(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware2.IMUBuilder.AxesSigns)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"remapAxesAndSigns(AxesOrder, IMU.AxesSigns)","u":"remapAxesAndSigns(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware.sensor.IMU.AxesSigns)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"remapLegacyAxes(AxesOrder, IMU.AxesSigns)","u":"remapLegacyAxes(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware.sensor.IMU.AxesSigns)"},{"p":"com.technototes.library.logger","c":"Logger","l":"repeat(String, int)","u":"repeat(java.lang.String,int)"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"requestOpModeStop()"},{"p":"com.technototes.library.command","c":"Command","l":"requirementMap"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"RESET"},{"p":"com.technototes.library.util","c":"SmartConsumer","l":"reset()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"resetDeviceConfigurationForOpMode()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"resetScheduler()"},{"p":"com.technototes.library.hardware.sensor","c":"Rev2MDistanceSensor","l":"Rev2MDistanceSensor(DistanceSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DistanceSensor)"},{"p":"com.technototes.library.hardware.sensor","c":"Rev2MDistanceSensor","l":"Rev2MDistanceSensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder.Direction","l":"REVERSE"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"reverse()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"reverse()"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"reverse()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"rgb()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"right"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"RIGHT_BUMPER"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"RIGHT_STICK_BUTTON"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"RIGHT_STICK_X"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"RIGHT_STICK_Y"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"RIGHT_TRIGGER"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightBumper"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"rightSide"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightStick"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightStickButton"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightStickX"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightStickY"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightTrigger"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"rlMotor"},{"p":"com.technototes.library","c":"RobotLibrary","l":"RobotLibrary()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"rrMotor"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rumble()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rumble(double)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rumbleBlip()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rumbleBlips(int)"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"RUN"},{"p":"com.technototes.library.command","c":"Command","l":"run()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"run()"},{"p":"com.technototes.library.logger","c":"Logger","l":"runEntries"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"runLoop()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"runOpMode()"},{"p":"com.technototes.library.logger","c":"Logger","l":"runUpdate()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"saturation()"},{"p":"com.technototes.library.util","c":"Range","l":"scale(double)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"scalePWM(double, double)","u":"scalePWM(double,double)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"schedule(BooleanSupplier, Command)","u":"schedule(java.util.function.BooleanSupplier,com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"ParallelCommandGroup","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"ParallelDeadlineGroup","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"ParallelRaceGroup","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"SequentialCommandGroup","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"schedule(Command, BooleanSupplier)","u":"schedule(com.technototes.library.command.Command,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.control","c":"CommandButton","l":"schedule(Consumer)","u":"schedule(java.util.function.Consumer)"},{"p":"com.technototes.library.control","c":"CommandButton","l":"schedule(Function)","u":"schedule(java.util.function.Function)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"schedule(Function)","u":"schedule(java.util.function.Function)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleAfterOther(Command, Command)","u":"scheduleAfterOther(com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleAfterOther(Command, Command, BooleanSupplier)","u":"scheduleAfterOther(com.technototes.library.command.Command,com.technototes.library.command.Command,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleDefault(Command, Subsystem)","u":"scheduleDefault(com.technototes.library.command.Command,com.technototes.library.subsystem.Subsystem)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleDpad(BiConsumer)","u":"scheduleDpad(java.util.function.BiConsumer)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleDpad(BiFunction)","u":"scheduleDpad(java.util.function.BiFunction)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleForState(Command, BooleanSupplier, CommandOpMode.OpModeState...)","u":"scheduleForState(com.technototes.library.command.Command,java.util.function.BooleanSupplier,com.technototes.library.structure.CommandOpMode.OpModeState...)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleForState(Command, CommandOpMode.OpModeState...)","u":"scheduleForState(com.technototes.library.command.Command,com.technototes.library.structure.CommandOpMode.OpModeState...)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleInit(Command)","u":"scheduleInit(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleInit(Command, BooleanSupplier)","u":"scheduleInit(com.technototes.library.command.Command,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleJoystick(Command)","u":"scheduleJoystick(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleJoystick(Command, BooleanSupplier)","u":"scheduleJoystick(com.technototes.library.command.Command,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleLeftStick(BiConsumer)","u":"scheduleLeftStick(java.util.function.BiConsumer)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleLeftStick(BiFunction)","u":"scheduleLeftStick(java.util.function.BiFunction)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleOnce(Command)","u":"scheduleOnce(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleOnceForState(Command, CommandOpMode.OpModeState)","u":"scheduleOnceForState(com.technototes.library.command.Command,com.technototes.library.structure.CommandOpMode.OpModeState)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"schedulePressed(Function)","u":"schedulePressed(java.util.function.Function)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleRightStick(BiConsumer)","u":"scheduleRightStick(java.util.function.BiConsumer)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleRightStick(BiFunction)","u":"scheduleRightStick(java.util.function.BiFunction)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleStick(Stick, BiConsumer)","u":"scheduleStick(com.technototes.library.control.Stick,java.util.function.BiConsumer)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleStick(Stick, BiFunction)","u":"scheduleStick(com.technototes.library.control.Stick,java.util.function.BiFunction)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleWithOther(Command, Command)","u":"scheduleWithOther(com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleWithOther(Command, Command, BooleanSupplier)","u":"scheduleWithOther(com.technototes.library.command.Command,com.technototes.library.command.Command,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.util","c":"Alliance.Selector","l":"select(Alliance)","u":"select(com.technototes.library.util.Alliance)"},{"p":"com.technototes.library.util","c":"Alliance.Selector","l":"selectOf(Alliance, T, T)","u":"selectOf(com.technototes.library.util.Alliance,T,T)"},{"p":"com.technototes.library.util","c":"Alliance","l":"selectOf(T, T)","u":"selectOf(T,T)"},{"p":"com.technototes.library.util","c":"Alliance.Selector","l":"Selector(T, T)","u":"%3Cinit%3E(T,T)"},{"p":"com.technototes.library.hardware.sensor","c":"Sensor","l":"Sensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"Sensor","l":"Sensor(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.command","c":"SequentialCommandGroup","l":"SequentialCommandGroup(Command...)","u":"%3Cinit%3E(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"servo(int)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"Servo(Servo)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.Servo)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"servo(String)","u":"servo(java.lang.String)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"Servo(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"ServoBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"ServoBuilder(Servo)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.Servo)"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"ServoBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"ServoGroup(Servo...)","u":"%3Cinit%3E(com.technototes.library.hardware.servo.Servo...)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"ServoProfiler(Servo)","u":"%3Cinit%3E(com.technototes.library.hardware.servo.Servo)"},{"p":"com.technototes.library.subsystem.servo","c":"ServoSubsystem","l":"ServoSubsystem(Servo)","u":"%3Cinit%3E(com.technototes.library.hardware.servo.Servo)"},{"p":"com.technototes.library.subsystem.servo","c":"ServoSubsystem","l":"ServoSubsystem(Servo...)","u":"%3Cinit%3E(com.technototes.library.hardware.servo.Servo...)"},{"p":"com.technototes.library.util","c":"Integral","l":"set(double)"},{"p":"com.technototes.library.util","c":"Differential","l":"setAverageOutput(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"setConstraints(double, double, double)","u":"setConstraints(double,double,double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"setConstraints(ServoProfiler.Constraints)","u":"setConstraints(com.technototes.library.hardware.servo.ServoProfiler.Constraints)"},{"p":"com.technototes.library.subsystem","c":"Subsystem","l":"setDefaultCommand(Command)","u":"setDefaultCommand(com.technototes.library.command.Command)"},{"p":"com.technototes.library.util","c":"Differential","l":"setDeviationOutput(double)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"setDirection(MotorEncoder.Direction)","u":"setDirection(com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"setEnabled(boolean)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"setEnabled(boolean)"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"setEnabled(boolean)"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"setEnabled(boolean)"},{"p":"com.technototes.library.general","c":"Enablable","l":"setEnabled(boolean)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setEncoder(Encoder)","u":"setEncoder(com.technototes.library.hardware.sensor.encoder.Encoder)"},{"p":"com.technototes.library.hardware.sensor","c":"IGyro","l":"setHeading(double)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"setHeading(double)"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"setIndex(int)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"setInverted(boolean)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"setInverted(boolean)"},{"p":"com.technototes.library.control","c":"CommandButton","l":"setInverted(boolean)"},{"p":"com.technototes.library.general","c":"Invertable","l":"setInverted(boolean)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setInverted(boolean)"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"setInverted(boolean)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"setInverted(boolean)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setLimits(double, double)","u":"setLimits(double,double)"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"setLimits(double, double)","u":"setLimits(double,double)"},{"p":"com.technototes.library.util","c":"Differential","l":"setLimits(double, double)","u":"setLimits(double,double)"},{"p":"com.technototes.library.subsystem.motor","c":"EncodedMotorSubsystem","l":"setMaxSpeed(double)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"setOpMode(CommandOpMode)","u":"setOpMode(com.technototes.library.structure.CommandOpMode)"},{"p":"com.technototes.library.util","c":"Differential","l":"setOutputs(double, double)","u":"setOutputs(double,double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setPIDFCoeffecients(double, double, double, double)","u":"setPIDFCoeffecients(double,double,double,double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setPIDFCoeffecients(PIDFCoefficients)","u":"setPIDFCoeffecients(com.qualcomm.robotcore.hardware.PIDFCoefficients)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setPosition(double)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"setPosition(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"setPosition(double)"},{"p":"com.technototes.library.subsystem.motor","c":"EncodedMotorSubsystem","l":"setPosition(double)"},{"p":"com.technototes.library.subsystem.servo","c":"ServoSubsystem","l":"setPosition(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setPosition(double, double)","u":"setPosition(double,double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"setPosition(double, double)","u":"setPosition(double,double)"},{"p":"com.technototes.library.subsystem.motor","c":"EncodedMotorSubsystem","l":"setPosition(double, double)","u":"setPosition(double,double)"},{"p":"com.technototes.library.util","c":"Differential","l":"setPriority(Differential.DifferentialPriority)","u":"setPriority(com.technototes.library.util.Differential.DifferentialPriority)"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"setPriority(int)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setRunMode(DcMotor.RunMode)","u":"setRunMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"setServoRange(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setSpeed(double)"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"setSpeed(double)"},{"p":"com.technototes.library.hardware.motor","c":"MotorGroup","l":"setSpeed(double)"},{"p":"com.technototes.library.subsystem.motor","c":"MotorSubsystem","l":"setSpeed(double)"},{"p":"com.technototes.library.command","c":"Command","l":"setState(Command.CommandState)","u":"setState(com.technototes.library.command.Command.CommandState)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"setTargetPosition(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"setTargetTolerance(double)"},{"p":"com.technototes.library.control","c":"AxisBase","l":"setTriggerThreshold(double)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"setTriggerThreshold(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setVelocity(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"setVelocity(double)"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"setVolume(float)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"SimpleMecanumDrivebaseSubsystem(DoubleSupplier, Motor, Motor, Motor, Motor)","u":"%3Cinit%3E(java.util.function.DoubleSupplier,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"SimpleMecanumDrivebaseSubsystem(Motor, Motor, Motor, Motor)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)"},{"p":"com.technototes.library.command","c":"Command","l":"sleep(double)"},{"p":"com.technototes.library.command","c":"Command","l":"sleep(DoubleSupplier)","u":"sleep(java.util.function.DoubleSupplier)"},{"p":"com.technototes.library.control","c":"Binding.Type","l":"SOME_ACTIVE"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"Speaker(float, String...)","u":"%3Cinit%3E(float,java.lang.String...)"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"Speaker(String...)","u":"%3Cinit%3E(java.lang.String...)"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"start(String)","u":"start(java.lang.String)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"startAt(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"startAt(double)"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"STARTED"},{"p":"com.technototes.library.command","c":"Command","l":"stateMap"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"stickButton"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"stop()"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"stop()"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"stop()"},{"p":"com.technototes.library.subsystem.motor","c":"MotorSubsystem","l":"stop()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"stopRumble()"},{"p":"com.technototes.library.logger.entry","c":"StringEntry","l":"StringEntry(String, Supplier, int, String)","u":"%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,java.lang.String)"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"supplier"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"TankDrivebaseSubsystem(Motor, Motor)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"tare()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"tare()"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"telemetry"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"terminate()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"terminateOpMode()"},{"p":"com.technototes.library.command","c":"Command","l":"timeMap"},{"p":"com.technototes.library.control","c":"CommandInput","l":"toggle(Command, Command)","u":"toggle(com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.general","c":"Enablable","l":"toggleEnabled()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"tolerance(int)"},{"p":"com.technototes.library.logger.entry","c":"BooleanEntry","l":"toString()"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"toString()"},{"p":"com.technototes.library.logger.entry","c":"NumberEntry","l":"toString()"},{"p":"com.technototes.library.logger.entry","c":"StringEntry","l":"toString()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"translateTargetPosition(double)"},{"p":"com.technototes.library.logger","c":"Log.Boolean","l":"trueValue()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"universalLoop()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"up"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"update()"},{"p":"com.technototes.library.util","c":"Integral","l":"update(double)"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"uponInit()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"uponStart()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"value()"},{"p":"com.technototes.library.logger","c":"Log.Logs","l":"value()"},{"p":"com.technototes.library.logger","c":"LogConfig.AllowList","l":"value()"},{"p":"com.technototes.library.logger","c":"LogConfig.DenyList","l":"value()"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.control","c":"Binding.Type","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder.Direction","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.util","c":"Alliance","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.util","c":"Color","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"values()"},{"p":"com.technototes.library.control","c":"Binding.Type","l":"values()"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"values()"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"values()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder.Direction","l":"values()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"values()"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"values()"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"values()"},{"p":"com.technototes.library.util","c":"Alliance","l":"values()"},{"p":"com.technototes.library.util","c":"Color","l":"values()"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"values()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"velocity(PIDFCoefficients)","u":"velocity(com.qualcomm.robotcore.hardware.PIDFCoefficients)"},{"p":"com.technototes.library.command","c":"WaitCommand","l":"WaitCommand(double)","u":"%3Cinit%3E(double)"},{"p":"com.technototes.library.command","c":"WaitCommand","l":"WaitCommand(DoubleSupplier)","u":"%3Cinit%3E(java.util.function.DoubleSupplier)"},{"p":"com.technototes.library.command","c":"Command","l":"waitUntil(BooleanSupplier)","u":"waitUntil(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whenInverseToggled(Command)","u":"whenInverseToggled(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whenPressed(Command)","u":"whenPressed(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whenPressedReleased(Command, Command)","u":"whenPressedReleased(com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whenReleased(Command)","u":"whenReleased(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whenToggled(Command)","u":"whenToggled(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whileInverseToggled(Command)","u":"whileInverseToggled(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whilePressed(Command)","u":"whilePressed(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whilePressedContinuous(Command)","u":"whilePressedContinuous(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whilePressedOnce(Command)","u":"whilePressedOnce(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whilePressedReleased(Command, Command)","u":"whilePressedReleased(com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whileReleased(Command)","u":"whileReleased(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whileReleasedOnce(Command)","u":"whileReleasedOnce(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whileToggled(Command)","u":"whileToggled(com.technototes.library.command.Command)"},{"p":"com.technototes.library.util","c":"Color","l":"WHITE"},{"p":"com.technototes.library.command","c":"Command","l":"withTimeout(double)"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"x"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"xAxis"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_a"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_A"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_b"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_B"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_back"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_BACK"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_start"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_START"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_x"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_X"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_y"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_Y"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"yAxis"},{"p":"com.technototes.library.util","c":"Color","l":"YELLOW"},{"p":"com.technototes.library.hardware.sensor","c":"IGyro","l":"zero()"},{"p":"com.technototes.library.util","c":"Integral","l":"zero()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"Encoder","l":"zeroEncoder()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"ExternalEncoder","l":"zeroEncoder()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"zeroEncoder()"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/TechnoLib/module-search-index.js b/docs/TechnoLib/module-search-index.js index a6f96499..0d59754f 100644 --- a/docs/TechnoLib/module-search-index.js +++ b/docs/TechnoLib/module-search-index.js @@ -1,2 +1 @@ -moduleSearchIndex = []; -updateSearchResults(); +moduleSearchIndex = [];updateSearchResults(); \ No newline at end of file diff --git a/docs/TechnoLib/overview-summary.html b/docs/TechnoLib/overview-summary.html index db00b11a..7bc09700 100644 --- a/docs/TechnoLib/overview-summary.html +++ b/docs/TechnoLib/overview-summary.html @@ -1,27 +1,25 @@ - + - - - RobotLibrary API - - - - - - - - - - -
    - -

    index.html

    -
    - + + +RobotLibrary API + + + + + + + + + + +
    + +

    index.html

    +
    + diff --git a/docs/TechnoLib/overview-tree.html b/docs/TechnoLib/overview-tree.html index b7bc433e..541f2f17 100644 --- a/docs/TechnoLib/overview-tree.html +++ b/docs/TechnoLib/overview-tree.html @@ -1,1498 +1,306 @@ - + - - - Class Hierarchy (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    - -
    -

    Class Hierarchy

    - -
    -
    -

    Interface Hierarchy

    -
      -
    • - java.util.function.BooleanSupplier -
        -
      • - com.technototes.library.control.Binding<T> -
      • -
      • - com.technototes.library.control.CommandInput<T> -
      • -
      -
    • -
    • - java.util.function.DoubleSupplier -
        -
      • - com.technototes.library.hardware.Sensored -
          -
        • - com.technototes.library.hardware.sensor.encoder.Encoder -
        • -
        -
      • -
      -
    • -
    • - com.technototes.library.general.Enablable<T> -
        -
      • - com.technototes.library.control.Stick - (also extends com.technototes.library.general.Periodic) -
      • -
      -
    • -
    • - com.technototes.library.hardware.HardwareDeviceGroup<T> -
    • -
    • - com.technototes.library.hardware.sensor.IColorSensor -
    • -
    • - com.technototes.library.hardware.sensor.IDistanceSensor -
    • -
    • - com.technototes.library.hardware.sensor.IGyro -
    • -
    • - com.technototes.library.hardware.sensor.ILightSensor -
    • -
    • - com.technototes.library.general.Invertable<T> -
    • -
    • - com.technototes.library.logger.Loggable -
    • -
    • - com.technototes.library.general.Periodic -
        -
      • - com.technototes.library.control.Stick - (also extends com.technototes.library.general.Enablable<T>) -
      • -
      • - com.technototes.library.subsystem.Subsystem -
      • -
      -
    • -
    • - java.lang.Runnable -
        -
      • - com.technototes.library.command.Command - (also extends java.util.function.Supplier<T>) -
      • -
      -
    • -
    • - com.technototes.library.util.SmartConsumer<T> -
    • -
    • - java.util.function.Supplier<T> -
        -
      • - com.technototes.library.command.Command - (also extends java.lang.Runnable) -
      • -
      -
    • -
    -
    -
    -

    Annotation Interface Hierarchy

    - -
    -
    -

    Enum Class Hierarchy

    - -
    -
    -
    -
    - + + +Class Hierarchy (RobotLibrary API) + + + + + + + + + + + + + + +
    + +
    +
    + +
    +

    Class Hierarchy

    + +
    +
    +

    Interface Hierarchy

    + +
    +
    +

    Annotation Interface Hierarchy

    + +
    +
    +

    Enum Class Hierarchy

    + +
    +
    +
    +
    + diff --git a/docs/TechnoLib/package-search-index.js b/docs/TechnoLib/package-search-index.js index a587d2d3..3d70a1b1 100644 --- a/docs/TechnoLib/package-search-index.js +++ b/docs/TechnoLib/package-search-index.js @@ -1,22 +1 @@ -packageSearchIndex = [ - { l: 'All Packages', u: 'allpackages-index.html' }, - { l: 'com.technototes.library' }, - { l: 'com.technototes.library.command' }, - { l: 'com.technototes.library.control' }, - { l: 'com.technototes.library.general' }, - { l: 'com.technototes.library.hardware' }, - { l: 'com.technototes.library.hardware.motor' }, - { l: 'com.technototes.library.hardware.sensor' }, - { l: 'com.technototes.library.hardware.sensor.encoder' }, - { l: 'com.technototes.library.hardware.servo' }, - { l: 'com.technototes.library.hardware2' }, - { l: 'com.technototes.library.logger' }, - { l: 'com.technototes.library.logger.entry' }, - { l: 'com.technototes.library.structure' }, - { l: 'com.technototes.library.subsystem' }, - { l: 'com.technototes.library.subsystem.drivebase' }, - { l: 'com.technototes.library.subsystem.motor' }, - { l: 'com.technototes.library.subsystem.servo' }, - { l: 'com.technototes.library.util' }, -]; -updateSearchResults(); +packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"l":"com.technototes.library"},{"l":"com.technototes.library.command"},{"l":"com.technototes.library.control"},{"l":"com.technototes.library.general"},{"l":"com.technototes.library.hardware"},{"l":"com.technototes.library.hardware.motor"},{"l":"com.technototes.library.hardware.sensor"},{"l":"com.technototes.library.hardware.sensor.encoder"},{"l":"com.technototes.library.hardware.servo"},{"l":"com.technototes.library.hardware2"},{"l":"com.technototes.library.logger"},{"l":"com.technototes.library.logger.entry"},{"l":"com.technototes.library.structure"},{"l":"com.technototes.library.subsystem"},{"l":"com.technototes.library.subsystem.drivebase"},{"l":"com.technototes.library.subsystem.motor"},{"l":"com.technototes.library.subsystem.servo"},{"l":"com.technototes.library.util"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/TechnoLib/script.js b/docs/TechnoLib/script.js index a6efd285..864989cf 100644 --- a/docs/TechnoLib/script.js +++ b/docs/TechnoLib/script.js @@ -29,106 +29,104 @@ var typeSearchIndex; var memberSearchIndex; var tagSearchIndex; function loadScripts(doc, tag) { - createElem(doc, tag, 'search.js'); + createElem(doc, tag, 'search.js'); - createElem(doc, tag, 'module-search-index.js'); - createElem(doc, tag, 'package-search-index.js'); - createElem(doc, tag, 'type-search-index.js'); - createElem(doc, tag, 'member-search-index.js'); - createElem(doc, tag, 'tag-search-index.js'); + createElem(doc, tag, 'module-search-index.js'); + createElem(doc, tag, 'package-search-index.js'); + createElem(doc, tag, 'type-search-index.js'); + createElem(doc, tag, 'member-search-index.js'); + createElem(doc, tag, 'tag-search-index.js'); } function createElem(doc, tag, path) { - var script = doc.createElement(tag); - var scriptElement = doc.getElementsByTagName(tag)[0]; - script.src = pathtoroot + path; - scriptElement.parentNode.insertBefore(script, scriptElement); + var script = doc.createElement(tag); + var scriptElement = doc.getElementsByTagName(tag)[0]; + script.src = pathtoroot + path; + scriptElement.parentNode.insertBefore(script, scriptElement); } function show(tableId, selected, columns) { - if (tableId !== selected) { - document - .querySelectorAll('div.' + tableId + ':not(.' + selected + ')') - .forEach(function (elem) { - elem.style.display = 'none'; - }); - } - document.querySelectorAll('div.' + selected).forEach(function (elem, index) { - elem.style.display = ''; - var isEvenRow = index % (columns * 2) < columns; - elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); - elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); - }); - updateTabs(tableId, selected); + if (tableId !== selected) { + document.querySelectorAll('div.' + tableId + ':not(.' + selected + ')') + .forEach(function(elem) { + elem.style.display = 'none'; + }); + } + document.querySelectorAll('div.' + selected) + .forEach(function(elem, index) { + elem.style.display = ''; + var isEvenRow = index % (columns * 2) < columns; + elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); + elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); + }); + updateTabs(tableId, selected); } function updateTabs(tableId, selected) { - document - .querySelector('div#' + tableId + ' .summary-table') - .setAttribute('aria-labelledby', selected); - document.querySelectorAll('button[id^="' + tableId + '"]').forEach(function (tab, index) { - if (selected === tab.id || (tableId === selected && index === 0)) { - tab.className = activeTableTab; - tab.setAttribute('aria-selected', true); - tab.setAttribute('tabindex', 0); - } else { - tab.className = tableTab; - tab.setAttribute('aria-selected', false); - tab.setAttribute('tabindex', -1); - } - }); + document.querySelector('div#' + tableId +' .summary-table') + .setAttribute('aria-labelledby', selected); + document.querySelectorAll('button[id^="' + tableId + '"]') + .forEach(function(tab, index) { + if (selected === tab.id || (tableId === selected && index === 0)) { + tab.className = activeTableTab; + tab.setAttribute('aria-selected', true); + tab.setAttribute('tabindex',0); + } else { + tab.className = tableTab; + tab.setAttribute('aria-selected', false); + tab.setAttribute('tabindex',-1); + } + }); } function switchTab(e) { - var selected = document.querySelector('[aria-selected=true]'); - if (selected) { - if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { - // left or up arrow key pressed: move focus to previous tab - selected.previousSibling.click(); - selected.previousSibling.focus(); - e.preventDefault(); - } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { - // right or down arrow key pressed: move focus to next tab - selected.nextSibling.click(); - selected.nextSibling.focus(); - e.preventDefault(); + var selected = document.querySelector('[aria-selected=true]'); + if (selected) { + if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { + // left or up arrow key pressed: move focus to previous tab + selected.previousSibling.click(); + selected.previousSibling.focus(); + e.preventDefault(); + } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { + // right or down arrow key pressed: move focus to next tab + selected.nextSibling.click(); + selected.nextSibling.focus(); + e.preventDefault(); + } } - } } -var updateSearchResults = function () {}; +var updateSearchResults = function() {}; function indexFilesLoaded() { - return ( - moduleSearchIndex && - packageSearchIndex && - typeSearchIndex && - memberSearchIndex && - tagSearchIndex - ); + return moduleSearchIndex + && packageSearchIndex + && typeSearchIndex + && memberSearchIndex + && tagSearchIndex; } // Workaround for scroll position not being included in browser history (8249133) -document.addEventListener('DOMContentLoaded', function (e) { - var contentDiv = document.querySelector('div.flex-content'); - window.addEventListener('popstate', function (e) { - if (e.state !== null) { - contentDiv.scrollTop = e.state; - } - }); - window.addEventListener('hashchange', function (e) { - history.replaceState(contentDiv.scrollTop, document.title); - }); - contentDiv.addEventListener('scroll', function (e) { - var timeoutID; - if (!timeoutID) { - timeoutID = setTimeout(function () { +document.addEventListener("DOMContentLoaded", function(e) { + var contentDiv = document.querySelector("div.flex-content"); + window.addEventListener("popstate", function(e) { + if (e.state !== null) { + contentDiv.scrollTop = e.state; + } + }); + window.addEventListener("hashchange", function(e) { + history.replaceState(contentDiv.scrollTop, document.title); + }); + contentDiv.addEventListener("scroll", function(e) { + var timeoutID; + if (!timeoutID) { + timeoutID = setTimeout(function() { + history.replaceState(contentDiv.scrollTop, document.title); + timeoutID = null; + }, 100); + } + }); + if (!location.hash) { history.replaceState(contentDiv.scrollTop, document.title); - timeoutID = null; - }, 100); } - }); - if (!location.hash) { - history.replaceState(contentDiv.scrollTop, document.title); - } }); diff --git a/docs/TechnoLib/search.js b/docs/TechnoLib/search.js index 3ba91721..db3b2f4a 100644 --- a/docs/TechnoLib/search.js +++ b/docs/TechnoLib/search.js @@ -23,354 +23,332 @@ * questions. */ -var noResult = { l: 'No results found' }; -var loading = { l: 'Loading search index...' }; -var catModules = 'Modules'; -var catPackages = 'Packages'; -var catTypes = 'Classes and Interfaces'; -var catMembers = 'Members'; -var catSearchTags = 'Search Tags'; -var highlight = '$&'; -var searchPattern = ''; -var fallbackPattern = ''; +var noResult = {l: "No results found"}; +var loading = {l: "Loading search index..."}; +var catModules = "Modules"; +var catPackages = "Packages"; +var catTypes = "Classes and Interfaces"; +var catMembers = "Members"; +var catSearchTags = "Search Tags"; +var highlight = "$&"; +var searchPattern = ""; +var fallbackPattern = ""; var RANKING_THRESHOLD = 2; var NO_MATCH = 0xffff; var MIN_RESULTS = 3; var MAX_RESULTS = 500; -var UNNAMED = ''; +var UNNAMED = ""; function escapeHtml(str) { - return str.replace(//g, '>'); + return str.replace(//g, ">"); } function getHighlightedText(item, matcher, fallbackMatcher) { - var escapedItem = escapeHtml(item); - var highlighted = escapedItem.replace(matcher, highlight); - if (highlighted === escapedItem) { - highlighted = escapedItem.replace(fallbackMatcher, highlight); - } - return highlighted; + var escapedItem = escapeHtml(item); + var highlighted = escapedItem.replace(matcher, highlight); + if (highlighted === escapedItem) { + highlighted = escapedItem.replace(fallbackMatcher, highlight) + } + return highlighted; } function getURLPrefix(ui) { - var urlPrefix = ''; - var slash = '/'; - if (ui.item.category === catModules) { - return ui.item.l + slash; - } else if (ui.item.category === catPackages && ui.item.m) { - return ui.item.m + slash; - } else if (ui.item.category === catTypes || ui.item.category === catMembers) { - if (ui.item.m) { - urlPrefix = ui.item.m + slash; - } else { - $.each(packageSearchIndex, function (index, item) { - if (item.m && ui.item.p === item.l) { - urlPrefix = item.m + slash; + var urlPrefix=""; + var slash = "/"; + if (ui.item.category === catModules) { + return ui.item.l + slash; + } else if (ui.item.category === catPackages && ui.item.m) { + return ui.item.m + slash; + } else if (ui.item.category === catTypes || ui.item.category === catMembers) { + if (ui.item.m) { + urlPrefix = ui.item.m + slash; + } else { + $.each(packageSearchIndex, function(index, item) { + if (item.m && ui.item.p === item.l) { + urlPrefix = item.m + slash; + } + }); } - }); } - } - return urlPrefix; + return urlPrefix; } function createSearchPattern(term) { - var pattern = ''; - var isWordToken = false; - term - .replace(/,\s*/g, ', ') - .trim() - .split(/\s+/) - .forEach(function (w, index) { - if (index > 0) { - // whitespace between identifiers is significant - pattern += isWordToken && /^\w/.test(w) ? '\\s+' : '\\s*'; - } - var tokens = w.split(/(?=[A-Z,.()<>[\/])/); - for (var i = 0; i < tokens.length; i++) { - var s = tokens[i]; - if (s === '') { - continue; + var pattern = ""; + var isWordToken = false; + term.replace(/,\s*/g, ", ").trim().split(/\s+/).forEach(function(w, index) { + if (index > 0) { + // whitespace between identifiers is significant + pattern += (isWordToken && /^\w/.test(w)) ? "\\s+" : "\\s*"; } - pattern += $.ui.autocomplete.escapeRegex(s); - isWordToken = /\w$/.test(s); - if (isWordToken) { - pattern += '([a-z0-9_$<>\\[\\]]*?)'; + var tokens = w.split(/(?=[A-Z,.()<>[\/])/); + for (var i = 0; i < tokens.length; i++) { + var s = tokens[i]; + if (s === "") { + continue; + } + pattern += $.ui.autocomplete.escapeRegex(s); + isWordToken = /\w$/.test(s); + if (isWordToken) { + pattern += "([a-z0-9_$<>\\[\\]]*?)"; + } } - } }); - return pattern; + return pattern; } function createMatcher(pattern, flags) { - var isCamelCase = /[A-Z]/.test(pattern); - return new RegExp(pattern, flags + (isCamelCase ? '' : 'i')); + var isCamelCase = /[A-Z]/.test(pattern); + return new RegExp(pattern, flags + (isCamelCase ? "" : "i")); } var watermark = 'Search'; -$(function () { - var search = $('#search-input'); - var reset = $('#reset-button'); - search.val(''); - search.prop('disabled', false); - reset.prop('disabled', false); - search.val(watermark).addClass('watermark'); - search.blur(function () { - if ($(this).val().length === 0) { - $(this).val(watermark).addClass('watermark'); - } - }); - search.on('click keydown paste', function () { - if ($(this).val() === watermark) { - $(this).val('').removeClass('watermark'); - } - }); - reset.click(function () { - search.val('').focus(); - }); - search.focus()[0].setSelectionRange(0, 0); -}); -$.widget('custom.catcomplete', $.ui.autocomplete, { - _create: function () { - this._super(); - this.widget().menu('option', 'items', '> :not(.ui-autocomplete-category)'); - }, - _renderMenu: function (ul, items) { - var rMenu = this; - var currentCategory = ''; - rMenu.menu.bindings = $(); - $.each(items, function (index, item) { - var li; - if (item.category && item.category !== currentCategory) { - ul.append('
  • ' + item.category + '
  • '); - currentCategory = item.category; - } - li = rMenu._renderItemData(ul, item); - if (item.category) { - li.attr('aria-label', item.category + ' : ' + item.l); - li.attr('class', 'result-item'); - } else { - li.attr('aria-label', item.l); - li.attr('class', 'result-item'); - } +$(function() { + var search = $("#search-input"); + var reset = $("#reset-button"); + search.val(''); + search.prop("disabled", false); + reset.prop("disabled", false); + search.val(watermark).addClass('watermark'); + search.blur(function() { + if ($(this).val().length === 0) { + $(this).val(watermark).addClass('watermark'); + } }); - }, - _renderItem: function (ul, item) { - var label = ''; - var matcher = createMatcher(escapeHtml(searchPattern), 'g'); - var fallbackMatcher = new RegExp(fallbackPattern, 'gi'); - if (item.category === catModules) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catPackages) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catTypes) { - label = - item.p && item.p !== UNNAMED - ? getHighlightedText(item.p + '.' + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catMembers) { - label = - item.p && item.p !== UNNAMED - ? getHighlightedText(item.p + '.' + item.c + '.' + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.c + '.' + item.l, matcher, fallbackMatcher); - } else if (item.category === catSearchTags) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else { - label = item.l; - } - var li = $('
  • ').appendTo(ul); - var div = $('
    ').appendTo(li); - if (item.category === catSearchTags && item.h) { - if (item.d) { - div.html( - label + - ' (' + - item.h + - ')
    ' + - item.d + - '
    ', - ); - } else { - div.html(label + ' (' + item.h + ')'); - } - } else { - if (item.m) { - div.html(item.m + '/' + label); - } else { - div.html(label); - } + search.on('click keydown paste', function() { + if ($(this).val() === watermark) { + $(this).val('').removeClass('watermark'); + } + }); + reset.click(function() { + search.val('').focus(); + }); + search.focus()[0].setSelectionRange(0, 0); +}); +$.widget("custom.catcomplete", $.ui.autocomplete, { + _create: function() { + this._super(); + this.widget().menu("option", "items", "> :not(.ui-autocomplete-category)"); + }, + _renderMenu: function(ul, items) { + var rMenu = this; + var currentCategory = ""; + rMenu.menu.bindings = $(); + $.each(items, function(index, item) { + var li; + if (item.category && item.category !== currentCategory) { + ul.append("
  • " + item.category + "
  • "); + currentCategory = item.category; + } + li = rMenu._renderItemData(ul, item); + if (item.category) { + li.attr("aria-label", item.category + " : " + item.l); + li.attr("class", "result-item"); + } else { + li.attr("aria-label", item.l); + li.attr("class", "result-item"); + } + }); + }, + _renderItem: function(ul, item) { + var label = ""; + var matcher = createMatcher(escapeHtml(searchPattern), "g"); + var fallbackMatcher = new RegExp(fallbackPattern, "gi") + if (item.category === catModules) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catPackages) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catTypes) { + label = (item.p && item.p !== UNNAMED) + ? getHighlightedText(item.p + "." + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catMembers) { + label = (item.p && item.p !== UNNAMED) + ? getHighlightedText(item.p + "." + item.c + "." + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.c + "." + item.l, matcher, fallbackMatcher); + } else if (item.category === catSearchTags) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else { + label = item.l; + } + var li = $("
  • ").appendTo(ul); + var div = $("
    ").appendTo(li); + if (item.category === catSearchTags && item.h) { + if (item.d) { + div.html(label + " (" + item.h + ")
    " + + item.d + "
    "); + } else { + div.html(label + " (" + item.h + ")"); + } + } else { + if (item.m) { + div.html(item.m + "/" + label); + } else { + div.html(label); + } + } + return li; } - return li; - }, }); function rankMatch(match, category) { - if (!match) { - return NO_MATCH; - } - var index = match.index; - var input = match.input; - var leftBoundaryMatch = 2; - var periferalMatch = 0; - // make sure match is anchored on a left word boundary - if (index === 0 || /\W/.test(input[index - 1]) || '_' === input[index]) { - leftBoundaryMatch = 0; - } else if ( - '_' === input[index - 1] || - (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input)) - ) { - leftBoundaryMatch = 1; - } - var matchEnd = index + match[0].length; - var leftParen = input.indexOf('('); - var endOfName = leftParen > -1 ? leftParen : input.length; - // exclude peripheral matches - if (category !== catModules && category !== catSearchTags) { - var delim = category === catPackages ? '/' : '.'; - if (leftParen > -1 && leftParen < index) { - periferalMatch += 2; - } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { - periferalMatch += 2; + if (!match) { + return NO_MATCH; + } + var index = match.index; + var input = match.input; + var leftBoundaryMatch = 2; + var periferalMatch = 0; + // make sure match is anchored on a left word boundary + if (index === 0 || /\W/.test(input[index - 1]) || "_" === input[index]) { + leftBoundaryMatch = 0; + } else if ("_" === input[index - 1] || (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input))) { + leftBoundaryMatch = 1; } - } - var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match - for (var i = 1; i < match.length; i++) { - // lower ranking if parts of the name are missing - if (match[i]) delta += match[i].length; - } - if (category === catTypes) { - // lower ranking if a type name contains unmatched camel-case parts - if (/[A-Z]/.test(input.substring(matchEnd))) delta += 5; - if (/[A-Z]/.test(input.substring(0, index))) delta += 5; - } - return leftBoundaryMatch + periferalMatch + delta / 200; + var matchEnd = index + match[0].length; + var leftParen = input.indexOf("("); + var endOfName = leftParen > -1 ? leftParen : input.length; + // exclude peripheral matches + if (category !== catModules && category !== catSearchTags) { + var delim = category === catPackages ? "/" : "."; + if (leftParen > -1 && leftParen < index) { + periferalMatch += 2; + } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { + periferalMatch += 2; + } + } + var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match + for (var i = 1; i < match.length; i++) { + // lower ranking if parts of the name are missing + if (match[i]) + delta += match[i].length; + } + if (category === catTypes) { + // lower ranking if a type name contains unmatched camel-case parts + if (/[A-Z]/.test(input.substring(matchEnd))) + delta += 5; + if (/[A-Z]/.test(input.substring(0, index))) + delta += 5; + } + return leftBoundaryMatch + periferalMatch + (delta / 200); + } function doSearch(request, response) { - var result = []; - searchPattern = createSearchPattern(request.term); - fallbackPattern = createSearchPattern(request.term.toLowerCase()); - if (searchPattern === '') { - return this.close(); - } - var camelCaseMatcher = createMatcher(searchPattern, ''); - var fallbackMatcher = new RegExp(fallbackPattern, 'i'); + var result = []; + searchPattern = createSearchPattern(request.term); + fallbackPattern = createSearchPattern(request.term.toLowerCase()); + if (searchPattern === "") { + return this.close(); + } + var camelCaseMatcher = createMatcher(searchPattern, ""); + var fallbackMatcher = new RegExp(fallbackPattern, "i"); - function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { - if (indexArray) { - var newResults = []; - $.each(indexArray, function (i, item) { - item.category = category; - var ranking = rankMatch(matcher.exec(nameFunc(item)), category); - if (ranking < RANKING_THRESHOLD) { - newResults.push({ ranking: ranking, item: item }); + function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { + if (indexArray) { + var newResults = []; + $.each(indexArray, function (i, item) { + item.category = category; + var ranking = rankMatch(matcher.exec(nameFunc(item)), category); + if (ranking < RANKING_THRESHOLD) { + newResults.push({ranking: ranking, item: item}); + } + return newResults.length <= MAX_RESULTS; + }); + return newResults.sort(function(e1, e2) { + return e1.ranking - e2.ranking; + }).map(function(e) { + return e.item; + }); } - return newResults.length <= MAX_RESULTS; - }); - return newResults - .sort(function (e1, e2) { - return e1.ranking - e2.ranking; - }) - .map(function (e) { - return e.item; - }); + return []; } - return []; - } - function searchIndex(indexArray, category, nameFunc) { - var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); - result = result.concat(primaryResults); - if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { - var secondaryResults = searchIndexWithMatcher( - indexArray, - fallbackMatcher, - category, - nameFunc, - ); - result = result.concat( - secondaryResults.filter(function (item) { - return primaryResults.indexOf(item) === -1; - }), - ); + function searchIndex(indexArray, category, nameFunc) { + var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); + result = result.concat(primaryResults); + if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { + var secondaryResults = searchIndexWithMatcher(indexArray, fallbackMatcher, category, nameFunc); + result = result.concat(secondaryResults.filter(function (item) { + return primaryResults.indexOf(item) === -1; + })); + } } - } - searchIndex(moduleSearchIndex, catModules, function (item) { - return item.l; - }); - searchIndex(packageSearchIndex, catPackages, function (item) { - return item.m && request.term.indexOf('/') > -1 ? item.m + '/' + item.l : item.l; - }); - searchIndex(typeSearchIndex, catTypes, function (item) { - return request.term.indexOf('.') > -1 ? item.p + '.' + item.l : item.l; - }); - searchIndex(memberSearchIndex, catMembers, function (item) { - return request.term.indexOf('.') > -1 ? item.p + '.' + item.c + '.' + item.l : item.l; - }); - searchIndex(tagSearchIndex, catSearchTags, function (item) { - return item.l; - }); + searchIndex(moduleSearchIndex, catModules, function(item) { return item.l; }); + searchIndex(packageSearchIndex, catPackages, function(item) { + return (item.m && request.term.indexOf("/") > -1) + ? (item.m + "/" + item.l) : item.l; + }); + searchIndex(typeSearchIndex, catTypes, function(item) { + return request.term.indexOf(".") > -1 ? item.p + "." + item.l : item.l; + }); + searchIndex(memberSearchIndex, catMembers, function(item) { + return request.term.indexOf(".") > -1 + ? item.p + "." + item.c + "." + item.l : item.l; + }); + searchIndex(tagSearchIndex, catSearchTags, function(item) { return item.l; }); - if (!indexFilesLoaded()) { - updateSearchResults = function () { - doSearch(request, response); - }; - result.unshift(loading); - } else { - updateSearchResults = function () {}; - } - response(result); -} -$(function () { - $('#search-input').catcomplete({ - minLength: 1, - delay: 300, - source: doSearch, - response: function (event, ui) { - if (!ui.content.length) { - ui.content.push(noResult); - } else { - $('#search-input').empty(); - } - }, - autoFocus: true, - focus: function (event, ui) { - return false; - }, - position: { - collision: 'flip', - }, - select: function (event, ui) { - if (ui.item.category) { - var url = getURLPrefix(ui); - if (ui.item.category === catModules) { - url += 'module-summary.html'; - } else if (ui.item.category === catPackages) { - if (ui.item.u) { - url = ui.item.u; - } else { - url += ui.item.l.replace(/\./g, '/') + '/package-summary.html'; - } - } else if (ui.item.category === catTypes) { - if (ui.item.u) { - url = ui.item.u; - } else if (ui.item.p === UNNAMED) { - url += ui.item.l + '.html'; - } else { - url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.l + '.html'; - } - } else if (ui.item.category === catMembers) { - if (ui.item.p === UNNAMED) { - url += ui.item.c + '.html' + '#'; - } else { - url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.c + '.html' + '#'; - } - if (ui.item.u) { - url += ui.item.u; - } else { - url += ui.item.l; - } - } else if (ui.item.category === catSearchTags) { - url += ui.item.u; + if (!indexFilesLoaded()) { + updateSearchResults = function() { + doSearch(request, response); } - if (top !== window) { - parent.classFrame.location = pathtoroot + url; - } else { - window.location.href = pathtoroot + url; + result.unshift(loading); + } else { + updateSearchResults = function() {}; + } + response(result); +} +$(function() { + $("#search-input").catcomplete({ + minLength: 1, + delay: 300, + source: doSearch, + response: function(event, ui) { + if (!ui.content.length) { + ui.content.push(noResult); + } else { + $("#search-input").empty(); + } + }, + autoFocus: true, + focus: function(event, ui) { + return false; + }, + position: { + collision: "flip" + }, + select: function(event, ui) { + if (ui.item.category) { + var url = getURLPrefix(ui); + if (ui.item.category === catModules) { + url += "module-summary.html"; + } else if (ui.item.category === catPackages) { + if (ui.item.u) { + url = ui.item.u; + } else { + url += ui.item.l.replace(/\./g, '/') + "/package-summary.html"; + } + } else if (ui.item.category === catTypes) { + if (ui.item.u) { + url = ui.item.u; + } else if (ui.item.p === UNNAMED) { + url += ui.item.l + ".html"; + } else { + url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.l + ".html"; + } + } else if (ui.item.category === catMembers) { + if (ui.item.p === UNNAMED) { + url += ui.item.c + ".html" + "#"; + } else { + url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.c + ".html" + "#"; + } + if (ui.item.u) { + url += ui.item.u; + } else { + url += ui.item.l; + } + } else if (ui.item.category === catSearchTags) { + url += ui.item.u; + } + if (top !== window) { + parent.classFrame.location = pathtoroot + url; + } else { + window.location.href = pathtoroot + url; + } + $("#search-input").focus(); + } } - $('#search-input').focus(); - } - }, - }); + }); }); diff --git a/docs/TechnoLib/src-html/com/technototes/library/control/CommandAxis.html b/docs/TechnoLib/src-html/com/technototes/library/control/CommandAxis.html index afe55554..91a383bd 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/control/CommandAxis.html +++ b/docs/TechnoLib/src-html/com/technototes/library/control/CommandAxis.html @@ -17,60 +17,64 @@ 004import java.util.function.DoubleSupplier; 005import java.util.function.Function; 006 -007/** Class for command axis for the gamepad -008 * @author Alex Stedman -009 */ -010public class CommandAxis extends AxisBase implements CommandInput<CommandAxis> { -011 -012 /** Make a command axis -013 * -014 * @param supplier The axis supplier -015 */ -016 public CommandAxis(DoubleSupplier supplier) { -017 super(supplier); -018 } -019 -020 /** Make a command axis -021 * -022 * @param supplier The axis supplier -023 * @param threshold The threshold to trigger to make the axis behave as a button -024 */ -025 public CommandAxis(DoubleSupplier supplier, double threshold) { -026 super(supplier, threshold); -027 } -028 -029 @Override -030 public CommandAxis getInstance() { -031 return this; -032 } -033 -034 @Override -035 public CommandAxis setTriggerThreshold(double threshold) { -036 super.setTriggerThreshold(threshold); -037 return this; -038 } -039 -040 public CommandAxis schedulePressed(Function<DoubleSupplier, Command> f) { -041 return whilePressed(f.apply(this)); +007/** +008 * Class for command axis for the gamepad +009 * +010 * @author Alex Stedman +011 */ +012public class CommandAxis extends AxisBase implements CommandInput<CommandAxis> { +013 +014 /** +015 * Make a command axis +016 * +017 * @param supplier The axis supplier +018 */ +019 public CommandAxis(DoubleSupplier supplier) { +020 super(supplier); +021 } +022 +023 /** +024 * Make a command axis +025 * +026 * @param supplier The axis supplier +027 * @param threshold The threshold to trigger to make the axis behave as a button +028 */ +029 public CommandAxis(DoubleSupplier supplier, double threshold) { +030 super(supplier, threshold); +031 } +032 +033 @Override +034 public CommandAxis getInstance() { +035 return this; +036 } +037 +038 @Override +039 public CommandAxis setTriggerThreshold(double threshold) { +040 super.setTriggerThreshold(threshold); +041 return this; 042 } 043 -044 public CommandAxis schedule(Function<Double, Command> f) { -045 return schedule(f.apply(this.getAsDouble())); +044 public CommandAxis schedulePressed(Function<DoubleSupplier, Command> f) { +045 return whilePressed(f.apply(this)); 046 } 047 -048 @Override -049 public CommandAxis setInverted(boolean invert) { -050 return (CommandAxis) super.setInverted(invert); -051 } -052 -053 public CommandButton getAsButton() { -054 return new CommandButton(this); +048 public CommandAxis schedule(Function<Double, Command> f) { +049 return schedule(f.apply(this.getAsDouble())); +050 } +051 +052 @Override +053 public CommandAxis setInverted(boolean invert) { +054 return (CommandAxis) super.setInverted(invert); 055 } 056 -057 public CommandButton getAsButton(double threshold) { -058 return new CommandButton(() -> threshold >= 0 ? getAsDouble() >= threshold : getAsDouble() < threshold); +057 public CommandButton getAsButton() { +058 return new CommandButton(this); 059 } -060} +060 +061 public CommandButton getAsButton(double threshold) { +062 return new CommandButton(() -> (threshold >= 0) ? (getAsDouble() >= threshold) : (getAsDouble() < threshold)); +063 } +064} diff --git a/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.Axis.html b/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.Axis.html index db72be3c..397bb4eb 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.Axis.html +++ b/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.Axis.html @@ -35,11 +35,11 @@ 022 /** 023 * The button objects for the XBox game controller 024 */ -025 public T a, b, x, y, start, back; +025 public T xbox_a, xbox_b, xbox_x, xbox_y, xbox_start, xbox_back; 026 /** 027 * The button objects for the PS4 game controller 028 */ -029 public T cross, circle, square, triangle, share, options; +029 public T ps_cross, ps_circle, ps_square, ps_triangle, ps_share, ps_options; 030 /** 031 * The button objects for both the XBox and PS4 controllers 032 */ @@ -86,12 +86,12 @@ 073 dpad = new GamepadDpad<>(dpadUp, dpadDown, dpadLeft, dpadRight); 074 periodics = 075 new Periodic[] { -076 a, -077 b, -078 x, -079 y, -080 start, -081 back, +076 xbox_a, +077 xbox_b, +078 xbox_x, +079 xbox_y, +080 xbox_start, +081 xbox_back, 082 leftBumper, 083 rightBumper, 084 leftTrigger, @@ -102,12 +102,12 @@ 089 }; 090 enablables = 091 new Enablable[] { -092 a, -093 b, -094 x, -095 y, -096 start, -097 back, +092 xbox_a, +093 xbox_b, +094 xbox_x, +095 xbox_y, +096 xbox_start, +097 xbox_back, 098 leftBumper, 099 rightBumper, 100 leftTrigger, @@ -123,19 +123,19 @@ 110 throws InstantiationException, IllegalAccessException, NoSuchMethodException, InvocationTargetException { 111 // buttons 112 // a=new T(); -113 a = buttonInstance(() -> g.a); -114 b = buttonInstance(() -> g.b); -115 x = buttonInstance(() -> g.x); -116 y = buttonInstance(() -> g.y); -117 cross = a; -118 circle = b; -119 square = x; -120 triangle = y; +113 xbox_a = buttonInstance(() -> g.a); +114 xbox_b = buttonInstance(() -> g.b); +115 xbox_x = buttonInstance(() -> g.x); +116 xbox_y = buttonInstance(() -> g.y); +117 ps_cross = xbox_a; +118 ps_circle = xbox_b; +119 ps_square = xbox_x; +120 ps_triangle = xbox_y; 121 -122 start = buttonInstance(() -> g.start); -123 back = buttonInstance(() -> g.back); -124 share = back; -125 options = start; +122 xbox_start = buttonInstance(() -> g.start); +123 xbox_back = buttonInstance(() -> g.back); +124 ps_share = xbox_back; +125 ps_options = xbox_start; 126 127 // bumpers 128 leftBumper = buttonInstance(() -> g.left_bumper); @@ -171,51 +171,51 @@ 158 /** 159 * XBox A button 160 */ -161 A, +161 XBOX_A, 162 /** 163 * XBox B button 164 */ -165 B, +165 XBOX_B, 166 /** 167 * XBox X button 168 */ -169 X, +169 XBOX_X, 170 /** 171 * XBox Y button 172 */ -173 Y, +173 XBOX_Y, 174 /** 175 * PS4 Cross (X) button 176 */ -177 CROSS, +177 PS_CROSS, 178 /** 179 * PS4 Circle (O) button 180 */ -181 CIRCLE, +181 PS_CIRCLE, 182 /** 183 * PS4 Square button 184 */ -185 SQUARE, +185 PS_SQUARE, 186 /** 187 * PS4 Triangle button 188 */ -189 TRIANGLE, +189 PS_TRIANGLE, 190 /** 191 * PS4 Share button 192 */ -193 SHARE, +193 PS_SHARE, 194 /** 195 * PS4 Options button 196 */ -197 OPTIONS, +197 PS_OPTIONS, 198 /** -199 * PS4/XBox Start button +199 * XBox Start button 200 */ -201 START, +201 XBOX_START, 202 /** -203 * PS4/XBox Back button +203 * XBox Back button 204 */ -205 BACK, +205 XBOX_BACK, 206 /** 207 * Left bumper button 208 */ @@ -272,30 +272,30 @@ 259 */ 260 public T getButton(Button bu) { 261 switch (bu) { -262 case A: -263 return a; -264 case B: -265 return b; -266 case X: -267 return x; -268 case Y: -269 return y; -270 case CROSS: -271 return cross; -272 case CIRCLE: -273 return circle; -274 case SQUARE: -275 return square; -276 case TRIANGLE: -277 return triangle; -278 case SHARE: -279 return share; -280 case OPTIONS: -281 return options; -282 case BACK: -283 return back; -284 case START: -285 return start; +262 case XBOX_A: +263 return xbox_a; +264 case XBOX_B: +265 return xbox_b; +266 case XBOX_X: +267 return xbox_x; +268 case XBOX_Y: +269 return xbox_y; +270 case PS_CROSS: +271 return ps_cross; +272 case PS_CIRCLE: +273 return ps_circle; +274 case PS_SQUARE: +275 return ps_square; +276 case PS_TRIANGLE: +277 return ps_triangle; +278 case PS_SHARE: +279 return ps_share; +280 case PS_OPTIONS: +281 return ps_options; +282 case XBOX_BACK: +283 return xbox_back; +284 case XBOX_START: +285 return xbox_start; 286 case LEFT_BUMPER: 287 return leftBumper; 288 case RIGHT_BUMPER: diff --git a/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.Button.html b/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.Button.html index f96b066f..82cb5878 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.Button.html +++ b/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.Button.html @@ -35,11 +35,11 @@ 022 /** 023 * The button objects for the XBox game controller 024 */ -025 public T a, b, x, y, start, back; +025 public T xbox_a, xbox_b, xbox_x, xbox_y, xbox_start, xbox_back; 026 /** 027 * The button objects for the PS4 game controller 028 */ -029 public T cross, circle, square, triangle, share, options; +029 public T ps_cross, ps_circle, ps_square, ps_triangle, ps_share, ps_options; 030 /** 031 * The button objects for both the XBox and PS4 controllers 032 */ @@ -86,12 +86,12 @@ 073 dpad = new GamepadDpad<>(dpadUp, dpadDown, dpadLeft, dpadRight); 074 periodics = 075 new Periodic[] { -076 a, -077 b, -078 x, -079 y, -080 start, -081 back, +076 xbox_a, +077 xbox_b, +078 xbox_x, +079 xbox_y, +080 xbox_start, +081 xbox_back, 082 leftBumper, 083 rightBumper, 084 leftTrigger, @@ -102,12 +102,12 @@ 089 }; 090 enablables = 091 new Enablable[] { -092 a, -093 b, -094 x, -095 y, -096 start, -097 back, +092 xbox_a, +093 xbox_b, +094 xbox_x, +095 xbox_y, +096 xbox_start, +097 xbox_back, 098 leftBumper, 099 rightBumper, 100 leftTrigger, @@ -123,19 +123,19 @@ 110 throws InstantiationException, IllegalAccessException, NoSuchMethodException, InvocationTargetException { 111 // buttons 112 // a=new T(); -113 a = buttonInstance(() -> g.a); -114 b = buttonInstance(() -> g.b); -115 x = buttonInstance(() -> g.x); -116 y = buttonInstance(() -> g.y); -117 cross = a; -118 circle = b; -119 square = x; -120 triangle = y; +113 xbox_a = buttonInstance(() -> g.a); +114 xbox_b = buttonInstance(() -> g.b); +115 xbox_x = buttonInstance(() -> g.x); +116 xbox_y = buttonInstance(() -> g.y); +117 ps_cross = xbox_a; +118 ps_circle = xbox_b; +119 ps_square = xbox_x; +120 ps_triangle = xbox_y; 121 -122 start = buttonInstance(() -> g.start); -123 back = buttonInstance(() -> g.back); -124 share = back; -125 options = start; +122 xbox_start = buttonInstance(() -> g.start); +123 xbox_back = buttonInstance(() -> g.back); +124 ps_share = xbox_back; +125 ps_options = xbox_start; 126 127 // bumpers 128 leftBumper = buttonInstance(() -> g.left_bumper); @@ -171,51 +171,51 @@ 158 /** 159 * XBox A button 160 */ -161 A, +161 XBOX_A, 162 /** 163 * XBox B button 164 */ -165 B, +165 XBOX_B, 166 /** 167 * XBox X button 168 */ -169 X, +169 XBOX_X, 170 /** 171 * XBox Y button 172 */ -173 Y, +173 XBOX_Y, 174 /** 175 * PS4 Cross (X) button 176 */ -177 CROSS, +177 PS_CROSS, 178 /** 179 * PS4 Circle (O) button 180 */ -181 CIRCLE, +181 PS_CIRCLE, 182 /** 183 * PS4 Square button 184 */ -185 SQUARE, +185 PS_SQUARE, 186 /** 187 * PS4 Triangle button 188 */ -189 TRIANGLE, +189 PS_TRIANGLE, 190 /** 191 * PS4 Share button 192 */ -193 SHARE, +193 PS_SHARE, 194 /** 195 * PS4 Options button 196 */ -197 OPTIONS, +197 PS_OPTIONS, 198 /** -199 * PS4/XBox Start button +199 * XBox Start button 200 */ -201 START, +201 XBOX_START, 202 /** -203 * PS4/XBox Back button +203 * XBox Back button 204 */ -205 BACK, +205 XBOX_BACK, 206 /** 207 * Left bumper button 208 */ @@ -272,30 +272,30 @@ 259 */ 260 public T getButton(Button bu) { 261 switch (bu) { -262 case A: -263 return a; -264 case B: -265 return b; -266 case X: -267 return x; -268 case Y: -269 return y; -270 case CROSS: -271 return cross; -272 case CIRCLE: -273 return circle; -274 case SQUARE: -275 return square; -276 case TRIANGLE: -277 return triangle; -278 case SHARE: -279 return share; -280 case OPTIONS: -281 return options; -282 case BACK: -283 return back; -284 case START: -285 return start; +262 case XBOX_A: +263 return xbox_a; +264 case XBOX_B: +265 return xbox_b; +266 case XBOX_X: +267 return xbox_x; +268 case XBOX_Y: +269 return xbox_y; +270 case PS_CROSS: +271 return ps_cross; +272 case PS_CIRCLE: +273 return ps_circle; +274 case PS_SQUARE: +275 return ps_square; +276 case PS_TRIANGLE: +277 return ps_triangle; +278 case PS_SHARE: +279 return ps_share; +280 case PS_OPTIONS: +281 return ps_options; +282 case XBOX_BACK: +283 return xbox_back; +284 case XBOX_START: +285 return xbox_start; 286 case LEFT_BUMPER: 287 return leftBumper; 288 case RIGHT_BUMPER: diff --git a/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.html b/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.html index ffbe3209..7a387cb3 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.html +++ b/docs/TechnoLib/src-html/com/technototes/library/control/GamepadBase.html @@ -35,11 +35,11 @@ 022 /** 023 * The button objects for the XBox game controller 024 */ -025 public T a, b, x, y, start, back; +025 public T xbox_a, xbox_b, xbox_x, xbox_y, xbox_start, xbox_back; 026 /** 027 * The button objects for the PS4 game controller 028 */ -029 public T cross, circle, square, triangle, share, options; +029 public T ps_cross, ps_circle, ps_square, ps_triangle, ps_share, ps_options; 030 /** 031 * The button objects for both the XBox and PS4 controllers 032 */ @@ -86,12 +86,12 @@ 073 dpad = new GamepadDpad<>(dpadUp, dpadDown, dpadLeft, dpadRight); 074 periodics = 075 new Periodic[] { -076 a, -077 b, -078 x, -079 y, -080 start, -081 back, +076 xbox_a, +077 xbox_b, +078 xbox_x, +079 xbox_y, +080 xbox_start, +081 xbox_back, 082 leftBumper, 083 rightBumper, 084 leftTrigger, @@ -102,12 +102,12 @@ 089 }; 090 enablables = 091 new Enablable[] { -092 a, -093 b, -094 x, -095 y, -096 start, -097 back, +092 xbox_a, +093 xbox_b, +094 xbox_x, +095 xbox_y, +096 xbox_start, +097 xbox_back, 098 leftBumper, 099 rightBumper, 100 leftTrigger, @@ -123,19 +123,19 @@ 110 throws InstantiationException, IllegalAccessException, NoSuchMethodException, InvocationTargetException { 111 // buttons 112 // a=new T(); -113 a = buttonInstance(() -> g.a); -114 b = buttonInstance(() -> g.b); -115 x = buttonInstance(() -> g.x); -116 y = buttonInstance(() -> g.y); -117 cross = a; -118 circle = b; -119 square = x; -120 triangle = y; +113 xbox_a = buttonInstance(() -> g.a); +114 xbox_b = buttonInstance(() -> g.b); +115 xbox_x = buttonInstance(() -> g.x); +116 xbox_y = buttonInstance(() -> g.y); +117 ps_cross = xbox_a; +118 ps_circle = xbox_b; +119 ps_square = xbox_x; +120 ps_triangle = xbox_y; 121 -122 start = buttonInstance(() -> g.start); -123 back = buttonInstance(() -> g.back); -124 share = back; -125 options = start; +122 xbox_start = buttonInstance(() -> g.start); +123 xbox_back = buttonInstance(() -> g.back); +124 ps_share = xbox_back; +125 ps_options = xbox_start; 126 127 // bumpers 128 leftBumper = buttonInstance(() -> g.left_bumper); @@ -171,51 +171,51 @@ 158 /** 159 * XBox A button 160 */ -161 A, +161 XBOX_A, 162 /** 163 * XBox B button 164 */ -165 B, +165 XBOX_B, 166 /** 167 * XBox X button 168 */ -169 X, +169 XBOX_X, 170 /** 171 * XBox Y button 172 */ -173 Y, +173 XBOX_Y, 174 /** 175 * PS4 Cross (X) button 176 */ -177 CROSS, +177 PS_CROSS, 178 /** 179 * PS4 Circle (O) button 180 */ -181 CIRCLE, +181 PS_CIRCLE, 182 /** 183 * PS4 Square button 184 */ -185 SQUARE, +185 PS_SQUARE, 186 /** 187 * PS4 Triangle button 188 */ -189 TRIANGLE, +189 PS_TRIANGLE, 190 /** 191 * PS4 Share button 192 */ -193 SHARE, +193 PS_SHARE, 194 /** 195 * PS4 Options button 196 */ -197 OPTIONS, +197 PS_OPTIONS, 198 /** -199 * PS4/XBox Start button +199 * XBox Start button 200 */ -201 START, +201 XBOX_START, 202 /** -203 * PS4/XBox Back button +203 * XBox Back button 204 */ -205 BACK, +205 XBOX_BACK, 206 /** 207 * Left bumper button 208 */ @@ -272,30 +272,30 @@ 259 */ 260 public T getButton(Button bu) { 261 switch (bu) { -262 case A: -263 return a; -264 case B: -265 return b; -266 case X: -267 return x; -268 case Y: -269 return y; -270 case CROSS: -271 return cross; -272 case CIRCLE: -273 return circle; -274 case SQUARE: -275 return square; -276 case TRIANGLE: -277 return triangle; -278 case SHARE: -279 return share; -280 case OPTIONS: -281 return options; -282 case BACK: -283 return back; -284 case START: -285 return start; +262 case XBOX_A: +263 return xbox_a; +264 case XBOX_B: +265 return xbox_b; +266 case XBOX_X: +267 return xbox_x; +268 case XBOX_Y: +269 return xbox_y; +270 case PS_CROSS: +271 return ps_cross; +272 case PS_CIRCLE: +273 return ps_circle; +274 case PS_SQUARE: +275 return ps_square; +276 case PS_TRIANGLE: +277 return ps_triangle; +278 case PS_SHARE: +279 return ps_share; +280 case PS_OPTIONS: +281 return ps_options; +282 case XBOX_BACK: +283 return xbox_back; +284 case XBOX_START: +285 return xbox_start; 286 case LEFT_BUMPER: 287 return leftBumper; 288 case RIGHT_BUMPER: diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Boolean.html b/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Boolean.html index 4a9a1d43..f7990aaa 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Boolean.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Boolean.html @@ -17,297 +17,112 @@ 004import static java.lang.annotation.ElementType.LOCAL_VARIABLE; 005import static java.lang.annotation.ElementType.METHOD; 006 -007import com.technototes.library.util.Color; -008import java.lang.annotation.Documented; -009import java.lang.annotation.ElementType; -010import java.lang.annotation.Repeatable; -011import java.lang.annotation.Retention; -012import java.lang.annotation.RetentionPolicy; -013import java.lang.annotation.Target; -014 -015/** The root annotation for annotation logging, also doubles as a basic string log -016 * @author Alex Stedman -017 */ -018@Documented -019@Repeatable(Log.Logs.class) -020@Retention(RetentionPolicy.RUNTIME) -021@Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -022public @interface Log { -023 /** Store index for this annotation (position in telemetry) -024 * -025 * @return The index -026 */ -027 int index() default -1; -028 -029 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -030 * -031 * @return The priority -032 */ -033 int priority() default -1; -034 -035 /** Store the name for this annotation to be be beside -036 * -037 * @return The name as a string -038 */ -039 String name() default ""; -040 -041 /** The format for the logged String -042 * -043 * @return The format -044 */ -045 String format() default "%s"; -046 -047 /** The color for the entry -048 * -049 * @return The color -050 */ -051 Color entryColor() default Color.NO_COLOR; +007import java.lang.annotation.Documented; +008import java.lang.annotation.ElementType; +009import java.lang.annotation.Repeatable; +010import java.lang.annotation.Retention; +011import java.lang.annotation.RetentionPolicy; +012import java.lang.annotation.Target; +013 +014/** The root annotation for annotation logging, also doubles as a basic string log +015 * @author Alex Stedman +016 */ +017@Documented +018@Repeatable(Log.Logs.class) +019@Retention(RetentionPolicy.RUNTIME) +020@Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +021public @interface Log { +022 /** Store index for this annotation (position in telemetry) +023 * +024 * @return The index +025 */ +026 int index() default -1; +027 +028 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +029 * +030 * @return The priority +031 */ +032 int priority() default -1; +033 +034 /** Store the name for this annotation to be be beside +035 * +036 * @return The name as a string +037 */ +038 String name() default ""; +039 +040 /** The format for the logged String +041 * +042 * @return The format +043 */ +044 String format() default "%s"; +045 +046 @Documented +047 @Retention(RetentionPolicy.RUNTIME) +048 @Target({ ElementType.FIELD, ElementType.METHOD }) +049 @interface Logs { +050 Log[] value(); +051 } 052 -053 /** The color for the tag for the entry +053 /** Log a number 054 * -055 * @return The color -056 */ -057 Color color() default Color.NO_COLOR; -058 -059 @Documented -060 @Retention(RetentionPolicy.RUNTIME) -061 @Target({ ElementType.FIELD, ElementType.METHOD }) -062 @interface Logs { -063 Log[] value(); -064 } -065 -066 /** Log a number -067 * -068 */ -069 @Retention(RetentionPolicy.RUNTIME) -070 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -071 @interface Number { -072 /** Store index for this annotation (position in telemetry) -073 * -074 * @return The index -075 */ -076 int index() default -1; +055 */ +056 @Retention(RetentionPolicy.RUNTIME) +057 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +058 @interface Number { +059 /** Store index for this annotation (position in telemetry) +060 * +061 * @return The index +062 */ +063 int index() default -1; +064 +065 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +066 * +067 * @return The priority +068 */ +069 int priority() default -1; +070 +071 /** Store the name for this annotation to be be beside +072 * +073 * @return The name as a string +074 */ +075 String name() default ""; +076 } 077 -078 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -079 * -080 * @return The priority -081 */ -082 int priority() default -1; -083 -084 /** Store the name for this annotation to be be beside -085 * -086 * @return The name as a string -087 */ -088 String name() default ""; -089 -090 /** The color for the tag for the number -091 * -092 * @return The color -093 */ -094 Color color() default Color.NO_COLOR; -095 -096 /** The color for the number -097 * -098 * @return The color -099 */ -100 Color numberColor() default Color.NO_COLOR; -101 } -102 -103 /** Log a number, but store it as a number bar -104 * -105 */ -106 @Retention(RetentionPolicy.RUNTIME) -107 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -108 @interface NumberBar { -109 /** Store index for this annotation (position in telemetry) -110 * -111 * @return The index -112 */ -113 int index() default -1; -114 -115 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -116 * -117 * @return The priority -118 */ -119 int priority() default -1; -120 -121 /** Store the min for the number bar to scale to -122 * -123 * @return The min -124 */ -125 double min() default -1; -126 -127 /** Store the max for the number bar to scale to -128 * -129 * @return The max -130 */ -131 double max() default 1; -132 -133 /** Store the scale for the number bar to scale to -134 * -135 * @return The scale -136 */ -137 double scale() default 0.1; -138 -139 /** Store the name for this annotation to be be beside -140 * -141 * @return The name as a string -142 */ -143 String name() default ""; -144 -145 /** The color for the tag for the bar -146 * -147 * @return The color -148 */ -149 Color color() default Color.NO_COLOR; -150 -151 /** The color for the filled in bar color -152 * -153 * @return The color -154 */ -155 Color completeBarColor() default Color.NO_COLOR; -156 -157 /** The color for the not filled in bar color -158 * -159 * @return The color -160 */ -161 Color incompleteBarColor() default Color.NO_COLOR; -162 -163 /** The color for the bar outlines -164 * -165 * @return The color -166 */ -167 Color outline() default Color.NO_COLOR; -168 } -169 -170 @Retention(RetentionPolicy.RUNTIME) -171 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -172 @interface NumberSlider { -173 /** Store index for this annotation (position in telemetry) -174 * -175 * @return The index -176 */ -177 int index() default -1; -178 -179 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -180 * -181 * @return The priority -182 */ -183 int priority() default -1; -184 -185 /** Store the min for the number bar to scale to -186 * -187 * @return The min -188 */ -189 double min() default -1; -190 -191 /** Store the max for the number bar to scale to -192 * -193 * @return The max -194 */ -195 double max() default 1; -196 -197 /** Store the scale for the number bar to scale to -198 * -199 * @return The scale -200 */ -201 double scale() default 0.1; -202 -203 /** Store the name for this annotation to be be beside -204 * -205 * @return The name as a string -206 */ -207 String name() default ""; -208 -209 /** The color for the tag for the slider -210 * -211 * @return The color -212 */ -213 Color color() default Color.NO_COLOR; -214 -215 /** The color for the slider background -216 * -217 * @return The color -218 */ -219 Color sliderBackground() default Color.NO_COLOR; -220 -221 /** The color for the slider outline -222 * -223 * @return The color -224 */ -225 Color outline() default Color.NO_COLOR; -226 -227 /** The color for the slider slide -228 * -229 * @return The color -230 */ -231 Color slider() default Color.NO_COLOR; -232 } -233 -234 @Retention(RetentionPolicy.RUNTIME) -235 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -236 @interface Boolean { -237 /** Store index for this annotation (position in telemetry) -238 * -239 * @return The index -240 */ -241 int index() default -1; -242 -243 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -244 * -245 * @return The priority -246 */ -247 int priority() default -1; -248 -249 /** Store the string when the annotated method returns true -250 * -251 * @return The string -252 */ -253 String trueValue() default "true"; -254 -255 /** The format for when the boolean returns true -256 * -257 * @return The String format -258 */ -259 String trueFormat() default "%s"; -260 -261 /** The color for the true String -262 * -263 * @return The color -264 */ -265 Color trueColor() default Color.NO_COLOR; -266 -267 /** Store the string when the annotated method returns false -268 * -269 * @return The string -270 */ -271 String falseValue() default "false"; -272 -273 /** The format for when the boolean returns false -274 * -275 * @return The String format -276 */ -277 String falseFormat() default "%s"; -278 -279 /** The color for the false String -280 * -281 * @return The color -282 */ -283 Color falseColor() default Color.NO_COLOR; -284 -285 /** Store the name for this annotation to be be beside -286 * -287 * @return The name as a string -288 */ -289 String name() default ""; -290 -291 /** The color for the tag for the boolean -292 * -293 * @return The color -294 */ -295 Color color() default Color.NO_COLOR; -296 } -297} +078 @Retention(RetentionPolicy.RUNTIME) +079 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +080 @interface Boolean { +081 /** Store index for this annotation (position in telemetry) +082 * +083 * @return The index +084 */ +085 int index() default -1; +086 +087 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +088 * +089 * @return The priority +090 */ +091 int priority() default -1; +092 +093 /** Store the string when the annotated method returns true +094 * +095 * @return The string +096 */ +097 String trueValue() default "true"; +098 +099 /** Store the string when the annotated method returns false +100 * +101 * @return The string +102 */ +103 String falseValue() default "false"; +104 +105 /** Store the name for this annotation to be be beside +106 * +107 * @return The name as a string +108 */ +109 String name() default ""; +110 +111 } +112} diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Logs.html b/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Logs.html index 7ee63816..921aede7 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Logs.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Logs.html @@ -17,297 +17,112 @@ 004import static java.lang.annotation.ElementType.LOCAL_VARIABLE; 005import static java.lang.annotation.ElementType.METHOD; 006 -007import com.technototes.library.util.Color; -008import java.lang.annotation.Documented; -009import java.lang.annotation.ElementType; -010import java.lang.annotation.Repeatable; -011import java.lang.annotation.Retention; -012import java.lang.annotation.RetentionPolicy; -013import java.lang.annotation.Target; -014 -015/** The root annotation for annotation logging, also doubles as a basic string log -016 * @author Alex Stedman -017 */ -018@Documented -019@Repeatable(Log.Logs.class) -020@Retention(RetentionPolicy.RUNTIME) -021@Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -022public @interface Log { -023 /** Store index for this annotation (position in telemetry) -024 * -025 * @return The index -026 */ -027 int index() default -1; -028 -029 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -030 * -031 * @return The priority -032 */ -033 int priority() default -1; -034 -035 /** Store the name for this annotation to be be beside -036 * -037 * @return The name as a string -038 */ -039 String name() default ""; -040 -041 /** The format for the logged String -042 * -043 * @return The format -044 */ -045 String format() default "%s"; -046 -047 /** The color for the entry -048 * -049 * @return The color -050 */ -051 Color entryColor() default Color.NO_COLOR; +007import java.lang.annotation.Documented; +008import java.lang.annotation.ElementType; +009import java.lang.annotation.Repeatable; +010import java.lang.annotation.Retention; +011import java.lang.annotation.RetentionPolicy; +012import java.lang.annotation.Target; +013 +014/** The root annotation for annotation logging, also doubles as a basic string log +015 * @author Alex Stedman +016 */ +017@Documented +018@Repeatable(Log.Logs.class) +019@Retention(RetentionPolicy.RUNTIME) +020@Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +021public @interface Log { +022 /** Store index for this annotation (position in telemetry) +023 * +024 * @return The index +025 */ +026 int index() default -1; +027 +028 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +029 * +030 * @return The priority +031 */ +032 int priority() default -1; +033 +034 /** Store the name for this annotation to be be beside +035 * +036 * @return The name as a string +037 */ +038 String name() default ""; +039 +040 /** The format for the logged String +041 * +042 * @return The format +043 */ +044 String format() default "%s"; +045 +046 @Documented +047 @Retention(RetentionPolicy.RUNTIME) +048 @Target({ ElementType.FIELD, ElementType.METHOD }) +049 @interface Logs { +050 Log[] value(); +051 } 052 -053 /** The color for the tag for the entry +053 /** Log a number 054 * -055 * @return The color -056 */ -057 Color color() default Color.NO_COLOR; -058 -059 @Documented -060 @Retention(RetentionPolicy.RUNTIME) -061 @Target({ ElementType.FIELD, ElementType.METHOD }) -062 @interface Logs { -063 Log[] value(); -064 } -065 -066 /** Log a number -067 * -068 */ -069 @Retention(RetentionPolicy.RUNTIME) -070 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -071 @interface Number { -072 /** Store index for this annotation (position in telemetry) -073 * -074 * @return The index -075 */ -076 int index() default -1; +055 */ +056 @Retention(RetentionPolicy.RUNTIME) +057 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +058 @interface Number { +059 /** Store index for this annotation (position in telemetry) +060 * +061 * @return The index +062 */ +063 int index() default -1; +064 +065 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +066 * +067 * @return The priority +068 */ +069 int priority() default -1; +070 +071 /** Store the name for this annotation to be be beside +072 * +073 * @return The name as a string +074 */ +075 String name() default ""; +076 } 077 -078 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -079 * -080 * @return The priority -081 */ -082 int priority() default -1; -083 -084 /** Store the name for this annotation to be be beside -085 * -086 * @return The name as a string -087 */ -088 String name() default ""; -089 -090 /** The color for the tag for the number -091 * -092 * @return The color -093 */ -094 Color color() default Color.NO_COLOR; -095 -096 /** The color for the number -097 * -098 * @return The color -099 */ -100 Color numberColor() default Color.NO_COLOR; -101 } -102 -103 /** Log a number, but store it as a number bar -104 * -105 */ -106 @Retention(RetentionPolicy.RUNTIME) -107 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -108 @interface NumberBar { -109 /** Store index for this annotation (position in telemetry) -110 * -111 * @return The index -112 */ -113 int index() default -1; -114 -115 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -116 * -117 * @return The priority -118 */ -119 int priority() default -1; -120 -121 /** Store the min for the number bar to scale to -122 * -123 * @return The min -124 */ -125 double min() default -1; -126 -127 /** Store the max for the number bar to scale to -128 * -129 * @return The max -130 */ -131 double max() default 1; -132 -133 /** Store the scale for the number bar to scale to -134 * -135 * @return The scale -136 */ -137 double scale() default 0.1; -138 -139 /** Store the name for this annotation to be be beside -140 * -141 * @return The name as a string -142 */ -143 String name() default ""; -144 -145 /** The color for the tag for the bar -146 * -147 * @return The color -148 */ -149 Color color() default Color.NO_COLOR; -150 -151 /** The color for the filled in bar color -152 * -153 * @return The color -154 */ -155 Color completeBarColor() default Color.NO_COLOR; -156 -157 /** The color for the not filled in bar color -158 * -159 * @return The color -160 */ -161 Color incompleteBarColor() default Color.NO_COLOR; -162 -163 /** The color for the bar outlines -164 * -165 * @return The color -166 */ -167 Color outline() default Color.NO_COLOR; -168 } -169 -170 @Retention(RetentionPolicy.RUNTIME) -171 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -172 @interface NumberSlider { -173 /** Store index for this annotation (position in telemetry) -174 * -175 * @return The index -176 */ -177 int index() default -1; -178 -179 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -180 * -181 * @return The priority -182 */ -183 int priority() default -1; -184 -185 /** Store the min for the number bar to scale to -186 * -187 * @return The min -188 */ -189 double min() default -1; -190 -191 /** Store the max for the number bar to scale to -192 * -193 * @return The max -194 */ -195 double max() default 1; -196 -197 /** Store the scale for the number bar to scale to -198 * -199 * @return The scale -200 */ -201 double scale() default 0.1; -202 -203 /** Store the name for this annotation to be be beside -204 * -205 * @return The name as a string -206 */ -207 String name() default ""; -208 -209 /** The color for the tag for the slider -210 * -211 * @return The color -212 */ -213 Color color() default Color.NO_COLOR; -214 -215 /** The color for the slider background -216 * -217 * @return The color -218 */ -219 Color sliderBackground() default Color.NO_COLOR; -220 -221 /** The color for the slider outline -222 * -223 * @return The color -224 */ -225 Color outline() default Color.NO_COLOR; -226 -227 /** The color for the slider slide -228 * -229 * @return The color -230 */ -231 Color slider() default Color.NO_COLOR; -232 } -233 -234 @Retention(RetentionPolicy.RUNTIME) -235 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -236 @interface Boolean { -237 /** Store index for this annotation (position in telemetry) -238 * -239 * @return The index -240 */ -241 int index() default -1; -242 -243 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -244 * -245 * @return The priority -246 */ -247 int priority() default -1; -248 -249 /** Store the string when the annotated method returns true -250 * -251 * @return The string -252 */ -253 String trueValue() default "true"; -254 -255 /** The format for when the boolean returns true -256 * -257 * @return The String format -258 */ -259 String trueFormat() default "%s"; -260 -261 /** The color for the true String -262 * -263 * @return The color -264 */ -265 Color trueColor() default Color.NO_COLOR; -266 -267 /** Store the string when the annotated method returns false -268 * -269 * @return The string -270 */ -271 String falseValue() default "false"; -272 -273 /** The format for when the boolean returns false -274 * -275 * @return The String format -276 */ -277 String falseFormat() default "%s"; -278 -279 /** The color for the false String -280 * -281 * @return The color -282 */ -283 Color falseColor() default Color.NO_COLOR; -284 -285 /** Store the name for this annotation to be be beside -286 * -287 * @return The name as a string -288 */ -289 String name() default ""; -290 -291 /** The color for the tag for the boolean -292 * -293 * @return The color -294 */ -295 Color color() default Color.NO_COLOR; -296 } -297} +078 @Retention(RetentionPolicy.RUNTIME) +079 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +080 @interface Boolean { +081 /** Store index for this annotation (position in telemetry) +082 * +083 * @return The index +084 */ +085 int index() default -1; +086 +087 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +088 * +089 * @return The priority +090 */ +091 int priority() default -1; +092 +093 /** Store the string when the annotated method returns true +094 * +095 * @return The string +096 */ +097 String trueValue() default "true"; +098 +099 /** Store the string when the annotated method returns false +100 * +101 * @return The string +102 */ +103 String falseValue() default "false"; +104 +105 /** Store the name for this annotation to be be beside +106 * +107 * @return The name as a string +108 */ +109 String name() default ""; +110 +111 } +112} diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Number.html b/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Number.html index 57a33226..f1ebb311 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Number.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/Log.Number.html @@ -17,297 +17,112 @@ 004import static java.lang.annotation.ElementType.LOCAL_VARIABLE; 005import static java.lang.annotation.ElementType.METHOD; 006 -007import com.technototes.library.util.Color; -008import java.lang.annotation.Documented; -009import java.lang.annotation.ElementType; -010import java.lang.annotation.Repeatable; -011import java.lang.annotation.Retention; -012import java.lang.annotation.RetentionPolicy; -013import java.lang.annotation.Target; -014 -015/** The root annotation for annotation logging, also doubles as a basic string log -016 * @author Alex Stedman -017 */ -018@Documented -019@Repeatable(Log.Logs.class) -020@Retention(RetentionPolicy.RUNTIME) -021@Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -022public @interface Log { -023 /** Store index for this annotation (position in telemetry) -024 * -025 * @return The index -026 */ -027 int index() default -1; -028 -029 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -030 * -031 * @return The priority -032 */ -033 int priority() default -1; -034 -035 /** Store the name for this annotation to be be beside -036 * -037 * @return The name as a string -038 */ -039 String name() default ""; -040 -041 /** The format for the logged String -042 * -043 * @return The format -044 */ -045 String format() default "%s"; -046 -047 /** The color for the entry -048 * -049 * @return The color -050 */ -051 Color entryColor() default Color.NO_COLOR; +007import java.lang.annotation.Documented; +008import java.lang.annotation.ElementType; +009import java.lang.annotation.Repeatable; +010import java.lang.annotation.Retention; +011import java.lang.annotation.RetentionPolicy; +012import java.lang.annotation.Target; +013 +014/** The root annotation for annotation logging, also doubles as a basic string log +015 * @author Alex Stedman +016 */ +017@Documented +018@Repeatable(Log.Logs.class) +019@Retention(RetentionPolicy.RUNTIME) +020@Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +021public @interface Log { +022 /** Store index for this annotation (position in telemetry) +023 * +024 * @return The index +025 */ +026 int index() default -1; +027 +028 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +029 * +030 * @return The priority +031 */ +032 int priority() default -1; +033 +034 /** Store the name for this annotation to be be beside +035 * +036 * @return The name as a string +037 */ +038 String name() default ""; +039 +040 /** The format for the logged String +041 * +042 * @return The format +043 */ +044 String format() default "%s"; +045 +046 @Documented +047 @Retention(RetentionPolicy.RUNTIME) +048 @Target({ ElementType.FIELD, ElementType.METHOD }) +049 @interface Logs { +050 Log[] value(); +051 } 052 -053 /** The color for the tag for the entry +053 /** Log a number 054 * -055 * @return The color -056 */ -057 Color color() default Color.NO_COLOR; -058 -059 @Documented -060 @Retention(RetentionPolicy.RUNTIME) -061 @Target({ ElementType.FIELD, ElementType.METHOD }) -062 @interface Logs { -063 Log[] value(); -064 } -065 -066 /** Log a number -067 * -068 */ -069 @Retention(RetentionPolicy.RUNTIME) -070 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -071 @interface Number { -072 /** Store index for this annotation (position in telemetry) -073 * -074 * @return The index -075 */ -076 int index() default -1; +055 */ +056 @Retention(RetentionPolicy.RUNTIME) +057 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +058 @interface Number { +059 /** Store index for this annotation (position in telemetry) +060 * +061 * @return The index +062 */ +063 int index() default -1; +064 +065 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +066 * +067 * @return The priority +068 */ +069 int priority() default -1; +070 +071 /** Store the name for this annotation to be be beside +072 * +073 * @return The name as a string +074 */ +075 String name() default ""; +076 } 077 -078 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -079 * -080 * @return The priority -081 */ -082 int priority() default -1; -083 -084 /** Store the name for this annotation to be be beside -085 * -086 * @return The name as a string -087 */ -088 String name() default ""; -089 -090 /** The color for the tag for the number -091 * -092 * @return The color -093 */ -094 Color color() default Color.NO_COLOR; -095 -096 /** The color for the number -097 * -098 * @return The color -099 */ -100 Color numberColor() default Color.NO_COLOR; -101 } -102 -103 /** Log a number, but store it as a number bar -104 * -105 */ -106 @Retention(RetentionPolicy.RUNTIME) -107 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -108 @interface NumberBar { -109 /** Store index for this annotation (position in telemetry) -110 * -111 * @return The index -112 */ -113 int index() default -1; -114 -115 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -116 * -117 * @return The priority -118 */ -119 int priority() default -1; -120 -121 /** Store the min for the number bar to scale to -122 * -123 * @return The min -124 */ -125 double min() default -1; -126 -127 /** Store the max for the number bar to scale to -128 * -129 * @return The max -130 */ -131 double max() default 1; -132 -133 /** Store the scale for the number bar to scale to -134 * -135 * @return The scale -136 */ -137 double scale() default 0.1; -138 -139 /** Store the name for this annotation to be be beside -140 * -141 * @return The name as a string -142 */ -143 String name() default ""; -144 -145 /** The color for the tag for the bar -146 * -147 * @return The color -148 */ -149 Color color() default Color.NO_COLOR; -150 -151 /** The color for the filled in bar color -152 * -153 * @return The color -154 */ -155 Color completeBarColor() default Color.NO_COLOR; -156 -157 /** The color for the not filled in bar color -158 * -159 * @return The color -160 */ -161 Color incompleteBarColor() default Color.NO_COLOR; -162 -163 /** The color for the bar outlines -164 * -165 * @return The color -166 */ -167 Color outline() default Color.NO_COLOR; -168 } -169 -170 @Retention(RetentionPolicy.RUNTIME) -171 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -172 @interface NumberSlider { -173 /** Store index for this annotation (position in telemetry) -174 * -175 * @return The index -176 */ -177 int index() default -1; -178 -179 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -180 * -181 * @return The priority -182 */ -183 int priority() default -1; -184 -185 /** Store the min for the number bar to scale to -186 * -187 * @return The min -188 */ -189 double min() default -1; -190 -191 /** Store the max for the number bar to scale to -192 * -193 * @return The max -194 */ -195 double max() default 1; -196 -197 /** Store the scale for the number bar to scale to -198 * -199 * @return The scale -200 */ -201 double scale() default 0.1; -202 -203 /** Store the name for this annotation to be be beside -204 * -205 * @return The name as a string -206 */ -207 String name() default ""; -208 -209 /** The color for the tag for the slider -210 * -211 * @return The color -212 */ -213 Color color() default Color.NO_COLOR; -214 -215 /** The color for the slider background -216 * -217 * @return The color -218 */ -219 Color sliderBackground() default Color.NO_COLOR; -220 -221 /** The color for the slider outline -222 * -223 * @return The color -224 */ -225 Color outline() default Color.NO_COLOR; -226 -227 /** The color for the slider slide -228 * -229 * @return The color -230 */ -231 Color slider() default Color.NO_COLOR; -232 } -233 -234 @Retention(RetentionPolicy.RUNTIME) -235 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -236 @interface Boolean { -237 /** Store index for this annotation (position in telemetry) -238 * -239 * @return The index -240 */ -241 int index() default -1; -242 -243 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -244 * -245 * @return The priority -246 */ -247 int priority() default -1; -248 -249 /** Store the string when the annotated method returns true -250 * -251 * @return The string -252 */ -253 String trueValue() default "true"; -254 -255 /** The format for when the boolean returns true -256 * -257 * @return The String format -258 */ -259 String trueFormat() default "%s"; -260 -261 /** The color for the true String -262 * -263 * @return The color -264 */ -265 Color trueColor() default Color.NO_COLOR; -266 -267 /** Store the string when the annotated method returns false -268 * -269 * @return The string -270 */ -271 String falseValue() default "false"; -272 -273 /** The format for when the boolean returns false -274 * -275 * @return The String format -276 */ -277 String falseFormat() default "%s"; -278 -279 /** The color for the false String -280 * -281 * @return The color -282 */ -283 Color falseColor() default Color.NO_COLOR; -284 -285 /** Store the name for this annotation to be be beside -286 * -287 * @return The name as a string -288 */ -289 String name() default ""; -290 -291 /** The color for the tag for the boolean -292 * -293 * @return The color -294 */ -295 Color color() default Color.NO_COLOR; -296 } -297} +078 @Retention(RetentionPolicy.RUNTIME) +079 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +080 @interface Boolean { +081 /** Store index for this annotation (position in telemetry) +082 * +083 * @return The index +084 */ +085 int index() default -1; +086 +087 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +088 * +089 * @return The priority +090 */ +091 int priority() default -1; +092 +093 /** Store the string when the annotated method returns true +094 * +095 * @return The string +096 */ +097 String trueValue() default "true"; +098 +099 /** Store the string when the annotated method returns false +100 * +101 * @return The string +102 */ +103 String falseValue() default "false"; +104 +105 /** Store the name for this annotation to be be beside +106 * +107 * @return The name as a string +108 */ +109 String name() default ""; +110 +111 } +112} diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.NumberBar.html b/docs/TechnoLib/src-html/com/technototes/library/logger/Log.NumberBar.html deleted file mode 100644 index 15ec4e59..00000000 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.NumberBar.html +++ /dev/null @@ -1,375 +0,0 @@ - - - - -Source code - - - - - - -
    -
    -
    001package com.technototes.library.logger;
    -002
    -003import static java.lang.annotation.ElementType.FIELD;
    -004import static java.lang.annotation.ElementType.LOCAL_VARIABLE;
    -005import static java.lang.annotation.ElementType.METHOD;
    -006
    -007import com.technototes.library.util.Color;
    -008import java.lang.annotation.Documented;
    -009import java.lang.annotation.ElementType;
    -010import java.lang.annotation.Repeatable;
    -011import java.lang.annotation.Retention;
    -012import java.lang.annotation.RetentionPolicy;
    -013import java.lang.annotation.Target;
    -014
    -015/** The root annotation for annotation logging, also doubles as a basic string log
    -016 * @author Alex Stedman
    -017 */
    -018@Documented
    -019@Repeatable(Log.Logs.class)
    -020@Retention(RetentionPolicy.RUNTIME)
    -021@Target(value = { FIELD, LOCAL_VARIABLE, METHOD })
    -022public @interface Log {
    -023    /** Store index for this annotation (position in telemetry)
    -024     *
    -025     * @return The index
    -026     */
    -027    int index() default -1;
    -028
    -029    /** Store priority for this log entry (to pick the most wanted entry over others with same index)
    -030     *
    -031     * @return The priority
    -032     */
    -033    int priority() default -1;
    -034
    -035    /** Store the name for this annotation to be be beside
    -036     *
    -037     * @return The name as a string
    -038     */
    -039    String name() default "";
    -040
    -041    /** The format for the logged String
    -042     *
    -043     * @return The format
    -044     */
    -045    String format() default "%s";
    -046
    -047    /** The color for the entry
    -048     *
    -049     * @return The color
    -050     */
    -051    Color entryColor() default Color.NO_COLOR;
    -052
    -053    /** The color for the tag for the entry
    -054     *
    -055     * @return The color
    -056     */
    -057    Color color() default Color.NO_COLOR;
    -058
    -059    @Documented
    -060    @Retention(RetentionPolicy.RUNTIME)
    -061    @Target({ ElementType.FIELD, ElementType.METHOD })
    -062    @interface Logs {
    -063        Log[] value();
    -064    }
    -065
    -066    /** Log a number
    -067     *
    -068     */
    -069    @Retention(RetentionPolicy.RUNTIME)
    -070    @Target(value = { FIELD, LOCAL_VARIABLE, METHOD })
    -071    @interface Number {
    -072        /** Store index for this annotation (position in telemetry)
    -073         *
    -074         * @return The index
    -075         */
    -076        int index() default -1;
    -077
    -078        /** Store priority for this log entry (to pick the most wanted entry over others with same index)
    -079         *
    -080         * @return The priority
    -081         */
    -082        int priority() default -1;
    -083
    -084        /** Store the name for this annotation to be be beside
    -085         *
    -086         * @return The name as a string
    -087         */
    -088        String name() default "";
    -089
    -090        /** The color for the tag for the number
    -091         *
    -092         * @return The color
    -093         */
    -094        Color color() default Color.NO_COLOR;
    -095
    -096        /** The color for the number
    -097         *
    -098         * @return The color
    -099         */
    -100        Color numberColor() default Color.NO_COLOR;
    -101    }
    -102
    -103    /** Log a number, but store it as a number bar
    -104     *
    -105     */
    -106    @Retention(RetentionPolicy.RUNTIME)
    -107    @Target(value = { FIELD, LOCAL_VARIABLE, METHOD })
    -108    @interface NumberBar {
    -109        /** Store index for this annotation (position in telemetry)
    -110         *
    -111         * @return The index
    -112         */
    -113        int index() default -1;
    -114
    -115        /** Store priority for this log entry (to pick the most wanted entry over others with same index)
    -116         *
    -117         * @return The priority
    -118         */
    -119        int priority() default -1;
    -120
    -121        /** Store the min for the number bar to scale to
    -122         *
    -123         * @return The min
    -124         */
    -125        double min() default -1;
    -126
    -127        /** Store the max for the number bar to scale to
    -128         *
    -129         * @return The max
    -130         */
    -131        double max() default 1;
    -132
    -133        /** Store the scale for the number bar to scale to
    -134         *
    -135         * @return The scale
    -136         */
    -137        double scale() default 0.1;
    -138
    -139        /** Store the name for this annotation to be be beside
    -140         *
    -141         * @return The name as a string
    -142         */
    -143        String name() default "";
    -144
    -145        /** The color for the tag for the bar
    -146         *
    -147         * @return The color
    -148         */
    -149        Color color() default Color.NO_COLOR;
    -150
    -151        /** The color for the filled in bar color
    -152         *
    -153         * @return The color
    -154         */
    -155        Color completeBarColor() default Color.NO_COLOR;
    -156
    -157        /** The color for the not filled in bar color
    -158         *
    -159         * @return The color
    -160         */
    -161        Color incompleteBarColor() default Color.NO_COLOR;
    -162
    -163        /** The color for the bar outlines
    -164         *
    -165         * @return The color
    -166         */
    -167        Color outline() default Color.NO_COLOR;
    -168    }
    -169
    -170    @Retention(RetentionPolicy.RUNTIME)
    -171    @Target(value = { FIELD, LOCAL_VARIABLE, METHOD })
    -172    @interface NumberSlider {
    -173        /** Store index for this annotation (position in telemetry)
    -174         *
    -175         * @return The index
    -176         */
    -177        int index() default -1;
    -178
    -179        /** Store priority for this log entry (to pick the most wanted entry over others with same index)
    -180         *
    -181         * @return The priority
    -182         */
    -183        int priority() default -1;
    -184
    -185        /** Store the min for the number bar to scale to
    -186         *
    -187         * @return The min
    -188         */
    -189        double min() default -1;
    -190
    -191        /** Store the max for the number bar to scale to
    -192         *
    -193         * @return The max
    -194         */
    -195        double max() default 1;
    -196
    -197        /** Store the scale for the number bar to scale to
    -198         *
    -199         * @return The scale
    -200         */
    -201        double scale() default 0.1;
    -202
    -203        /** Store the name for this annotation to be be beside
    -204         *
    -205         * @return The name as a string
    -206         */
    -207        String name() default "";
    -208
    -209        /** The color for the tag for the slider
    -210         *
    -211         * @return The color
    -212         */
    -213        Color color() default Color.NO_COLOR;
    -214
    -215        /** The color for the slider background
    -216         *
    -217         * @return The color
    -218         */
    -219        Color sliderBackground() default Color.NO_COLOR;
    -220
    -221        /** The color for the slider outline
    -222         *
    -223         * @return The color
    -224         */
    -225        Color outline() default Color.NO_COLOR;
    -226
    -227        /** The color for the slider slide
    -228         *
    -229         * @return The color
    -230         */
    -231        Color slider() default Color.NO_COLOR;
    -232    }
    -233
    -234    @Retention(RetentionPolicy.RUNTIME)
    -235    @Target(value = { FIELD, LOCAL_VARIABLE, METHOD })
    -236    @interface Boolean {
    -237        /** Store index for this annotation (position in telemetry)
    -238         *
    -239         * @return The index
    -240         */
    -241        int index() default -1;
    -242
    -243        /** Store priority for this log entry (to pick the most wanted entry over others with same index)
    -244         *
    -245         * @return The priority
    -246         */
    -247        int priority() default -1;
    -248
    -249        /** Store the string when the annotated method returns true
    -250         *
    -251         * @return The string
    -252         */
    -253        String trueValue() default "true";
    -254
    -255        /** The format for when the boolean returns true
    -256         *
    -257         * @return The String format
    -258         */
    -259        String trueFormat() default "%s";
    -260
    -261        /** The color for the true String
    -262         *
    -263         * @return The color
    -264         */
    -265        Color trueColor() default Color.NO_COLOR;
    -266
    -267        /** Store the string when the annotated method returns false
    -268         *
    -269         * @return The string
    -270         */
    -271        String falseValue() default "false";
    -272
    -273        /** The format for when the boolean returns false
    -274         *
    -275         * @return The String format
    -276         */
    -277        String falseFormat() default "%s";
    -278
    -279        /** The color for the false String
    -280         *
    -281         * @return The color
    -282         */
    -283        Color falseColor() default Color.NO_COLOR;
    -284
    -285        /** Store the name for this annotation to be be beside
    -286         *
    -287         * @return The name as a string
    -288         */
    -289        String name() default "";
    -290
    -291        /** The color for the tag for the boolean
    -292         *
    -293         * @return The color
    -294         */
    -295        Color color() default Color.NO_COLOR;
    -296    }
    -297}
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.NumberSlider.html b/docs/TechnoLib/src-html/com/technototes/library/logger/Log.NumberSlider.html deleted file mode 100644 index 9601b5ef..00000000 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.NumberSlider.html +++ /dev/null @@ -1,375 +0,0 @@ - - - - -Source code - - - - - - -
    -
    -
    001package com.technototes.library.logger;
    -002
    -003import static java.lang.annotation.ElementType.FIELD;
    -004import static java.lang.annotation.ElementType.LOCAL_VARIABLE;
    -005import static java.lang.annotation.ElementType.METHOD;
    -006
    -007import com.technototes.library.util.Color;
    -008import java.lang.annotation.Documented;
    -009import java.lang.annotation.ElementType;
    -010import java.lang.annotation.Repeatable;
    -011import java.lang.annotation.Retention;
    -012import java.lang.annotation.RetentionPolicy;
    -013import java.lang.annotation.Target;
    -014
    -015/** The root annotation for annotation logging, also doubles as a basic string log
    -016 * @author Alex Stedman
    -017 */
    -018@Documented
    -019@Repeatable(Log.Logs.class)
    -020@Retention(RetentionPolicy.RUNTIME)
    -021@Target(value = { FIELD, LOCAL_VARIABLE, METHOD })
    -022public @interface Log {
    -023    /** Store index for this annotation (position in telemetry)
    -024     *
    -025     * @return The index
    -026     */
    -027    int index() default -1;
    -028
    -029    /** Store priority for this log entry (to pick the most wanted entry over others with same index)
    -030     *
    -031     * @return The priority
    -032     */
    -033    int priority() default -1;
    -034
    -035    /** Store the name for this annotation to be be beside
    -036     *
    -037     * @return The name as a string
    -038     */
    -039    String name() default "";
    -040
    -041    /** The format for the logged String
    -042     *
    -043     * @return The format
    -044     */
    -045    String format() default "%s";
    -046
    -047    /** The color for the entry
    -048     *
    -049     * @return The color
    -050     */
    -051    Color entryColor() default Color.NO_COLOR;
    -052
    -053    /** The color for the tag for the entry
    -054     *
    -055     * @return The color
    -056     */
    -057    Color color() default Color.NO_COLOR;
    -058
    -059    @Documented
    -060    @Retention(RetentionPolicy.RUNTIME)
    -061    @Target({ ElementType.FIELD, ElementType.METHOD })
    -062    @interface Logs {
    -063        Log[] value();
    -064    }
    -065
    -066    /** Log a number
    -067     *
    -068     */
    -069    @Retention(RetentionPolicy.RUNTIME)
    -070    @Target(value = { FIELD, LOCAL_VARIABLE, METHOD })
    -071    @interface Number {
    -072        /** Store index for this annotation (position in telemetry)
    -073         *
    -074         * @return The index
    -075         */
    -076        int index() default -1;
    -077
    -078        /** Store priority for this log entry (to pick the most wanted entry over others with same index)
    -079         *
    -080         * @return The priority
    -081         */
    -082        int priority() default -1;
    -083
    -084        /** Store the name for this annotation to be be beside
    -085         *
    -086         * @return The name as a string
    -087         */
    -088        String name() default "";
    -089
    -090        /** The color for the tag for the number
    -091         *
    -092         * @return The color
    -093         */
    -094        Color color() default Color.NO_COLOR;
    -095
    -096        /** The color for the number
    -097         *
    -098         * @return The color
    -099         */
    -100        Color numberColor() default Color.NO_COLOR;
    -101    }
    -102
    -103    /** Log a number, but store it as a number bar
    -104     *
    -105     */
    -106    @Retention(RetentionPolicy.RUNTIME)
    -107    @Target(value = { FIELD, LOCAL_VARIABLE, METHOD })
    -108    @interface NumberBar {
    -109        /** Store index for this annotation (position in telemetry)
    -110         *
    -111         * @return The index
    -112         */
    -113        int index() default -1;
    -114
    -115        /** Store priority for this log entry (to pick the most wanted entry over others with same index)
    -116         *
    -117         * @return The priority
    -118         */
    -119        int priority() default -1;
    -120
    -121        /** Store the min for the number bar to scale to
    -122         *
    -123         * @return The min
    -124         */
    -125        double min() default -1;
    -126
    -127        /** Store the max for the number bar to scale to
    -128         *
    -129         * @return The max
    -130         */
    -131        double max() default 1;
    -132
    -133        /** Store the scale for the number bar to scale to
    -134         *
    -135         * @return The scale
    -136         */
    -137        double scale() default 0.1;
    -138
    -139        /** Store the name for this annotation to be be beside
    -140         *
    -141         * @return The name as a string
    -142         */
    -143        String name() default "";
    -144
    -145        /** The color for the tag for the bar
    -146         *
    -147         * @return The color
    -148         */
    -149        Color color() default Color.NO_COLOR;
    -150
    -151        /** The color for the filled in bar color
    -152         *
    -153         * @return The color
    -154         */
    -155        Color completeBarColor() default Color.NO_COLOR;
    -156
    -157        /** The color for the not filled in bar color
    -158         *
    -159         * @return The color
    -160         */
    -161        Color incompleteBarColor() default Color.NO_COLOR;
    -162
    -163        /** The color for the bar outlines
    -164         *
    -165         * @return The color
    -166         */
    -167        Color outline() default Color.NO_COLOR;
    -168    }
    -169
    -170    @Retention(RetentionPolicy.RUNTIME)
    -171    @Target(value = { FIELD, LOCAL_VARIABLE, METHOD })
    -172    @interface NumberSlider {
    -173        /** Store index for this annotation (position in telemetry)
    -174         *
    -175         * @return The index
    -176         */
    -177        int index() default -1;
    -178
    -179        /** Store priority for this log entry (to pick the most wanted entry over others with same index)
    -180         *
    -181         * @return The priority
    -182         */
    -183        int priority() default -1;
    -184
    -185        /** Store the min for the number bar to scale to
    -186         *
    -187         * @return The min
    -188         */
    -189        double min() default -1;
    -190
    -191        /** Store the max for the number bar to scale to
    -192         *
    -193         * @return The max
    -194         */
    -195        double max() default 1;
    -196
    -197        /** Store the scale for the number bar to scale to
    -198         *
    -199         * @return The scale
    -200         */
    -201        double scale() default 0.1;
    -202
    -203        /** Store the name for this annotation to be be beside
    -204         *
    -205         * @return The name as a string
    -206         */
    -207        String name() default "";
    -208
    -209        /** The color for the tag for the slider
    -210         *
    -211         * @return The color
    -212         */
    -213        Color color() default Color.NO_COLOR;
    -214
    -215        /** The color for the slider background
    -216         *
    -217         * @return The color
    -218         */
    -219        Color sliderBackground() default Color.NO_COLOR;
    -220
    -221        /** The color for the slider outline
    -222         *
    -223         * @return The color
    -224         */
    -225        Color outline() default Color.NO_COLOR;
    -226
    -227        /** The color for the slider slide
    -228         *
    -229         * @return The color
    -230         */
    -231        Color slider() default Color.NO_COLOR;
    -232    }
    -233
    -234    @Retention(RetentionPolicy.RUNTIME)
    -235    @Target(value = { FIELD, LOCAL_VARIABLE, METHOD })
    -236    @interface Boolean {
    -237        /** Store index for this annotation (position in telemetry)
    -238         *
    -239         * @return The index
    -240         */
    -241        int index() default -1;
    -242
    -243        /** Store priority for this log entry (to pick the most wanted entry over others with same index)
    -244         *
    -245         * @return The priority
    -246         */
    -247        int priority() default -1;
    -248
    -249        /** Store the string when the annotated method returns true
    -250         *
    -251         * @return The string
    -252         */
    -253        String trueValue() default "true";
    -254
    -255        /** The format for when the boolean returns true
    -256         *
    -257         * @return The String format
    -258         */
    -259        String trueFormat() default "%s";
    -260
    -261        /** The color for the true String
    -262         *
    -263         * @return The color
    -264         */
    -265        Color trueColor() default Color.NO_COLOR;
    -266
    -267        /** Store the string when the annotated method returns false
    -268         *
    -269         * @return The string
    -270         */
    -271        String falseValue() default "false";
    -272
    -273        /** The format for when the boolean returns false
    -274         *
    -275         * @return The String format
    -276         */
    -277        String falseFormat() default "%s";
    -278
    -279        /** The color for the false String
    -280         *
    -281         * @return The color
    -282         */
    -283        Color falseColor() default Color.NO_COLOR;
    -284
    -285        /** Store the name for this annotation to be be beside
    -286         *
    -287         * @return The name as a string
    -288         */
    -289        String name() default "";
    -290
    -291        /** The color for the tag for the boolean
    -292         *
    -293         * @return The color
    -294         */
    -295        Color color() default Color.NO_COLOR;
    -296    }
    -297}
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.html b/docs/TechnoLib/src-html/com/technototes/library/logger/Log.html index b7356acb..d90faa60 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/Log.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/Log.html @@ -17,297 +17,112 @@ 004import static java.lang.annotation.ElementType.LOCAL_VARIABLE; 005import static java.lang.annotation.ElementType.METHOD; 006 -007import com.technototes.library.util.Color; -008import java.lang.annotation.Documented; -009import java.lang.annotation.ElementType; -010import java.lang.annotation.Repeatable; -011import java.lang.annotation.Retention; -012import java.lang.annotation.RetentionPolicy; -013import java.lang.annotation.Target; -014 -015/** The root annotation for annotation logging, also doubles as a basic string log -016 * @author Alex Stedman -017 */ -018@Documented -019@Repeatable(Log.Logs.class) -020@Retention(RetentionPolicy.RUNTIME) -021@Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -022public @interface Log { -023 /** Store index for this annotation (position in telemetry) -024 * -025 * @return The index -026 */ -027 int index() default -1; -028 -029 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -030 * -031 * @return The priority -032 */ -033 int priority() default -1; -034 -035 /** Store the name for this annotation to be be beside -036 * -037 * @return The name as a string -038 */ -039 String name() default ""; -040 -041 /** The format for the logged String -042 * -043 * @return The format -044 */ -045 String format() default "%s"; -046 -047 /** The color for the entry -048 * -049 * @return The color -050 */ -051 Color entryColor() default Color.NO_COLOR; +007import java.lang.annotation.Documented; +008import java.lang.annotation.ElementType; +009import java.lang.annotation.Repeatable; +010import java.lang.annotation.Retention; +011import java.lang.annotation.RetentionPolicy; +012import java.lang.annotation.Target; +013 +014/** The root annotation for annotation logging, also doubles as a basic string log +015 * @author Alex Stedman +016 */ +017@Documented +018@Repeatable(Log.Logs.class) +019@Retention(RetentionPolicy.RUNTIME) +020@Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +021public @interface Log { +022 /** Store index for this annotation (position in telemetry) +023 * +024 * @return The index +025 */ +026 int index() default -1; +027 +028 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +029 * +030 * @return The priority +031 */ +032 int priority() default -1; +033 +034 /** Store the name for this annotation to be be beside +035 * +036 * @return The name as a string +037 */ +038 String name() default ""; +039 +040 /** The format for the logged String +041 * +042 * @return The format +043 */ +044 String format() default "%s"; +045 +046 @Documented +047 @Retention(RetentionPolicy.RUNTIME) +048 @Target({ ElementType.FIELD, ElementType.METHOD }) +049 @interface Logs { +050 Log[] value(); +051 } 052 -053 /** The color for the tag for the entry +053 /** Log a number 054 * -055 * @return The color -056 */ -057 Color color() default Color.NO_COLOR; -058 -059 @Documented -060 @Retention(RetentionPolicy.RUNTIME) -061 @Target({ ElementType.FIELD, ElementType.METHOD }) -062 @interface Logs { -063 Log[] value(); -064 } -065 -066 /** Log a number -067 * -068 */ -069 @Retention(RetentionPolicy.RUNTIME) -070 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -071 @interface Number { -072 /** Store index for this annotation (position in telemetry) -073 * -074 * @return The index -075 */ -076 int index() default -1; +055 */ +056 @Retention(RetentionPolicy.RUNTIME) +057 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +058 @interface Number { +059 /** Store index for this annotation (position in telemetry) +060 * +061 * @return The index +062 */ +063 int index() default -1; +064 +065 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +066 * +067 * @return The priority +068 */ +069 int priority() default -1; +070 +071 /** Store the name for this annotation to be be beside +072 * +073 * @return The name as a string +074 */ +075 String name() default ""; +076 } 077 -078 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -079 * -080 * @return The priority -081 */ -082 int priority() default -1; -083 -084 /** Store the name for this annotation to be be beside -085 * -086 * @return The name as a string -087 */ -088 String name() default ""; -089 -090 /** The color for the tag for the number -091 * -092 * @return The color -093 */ -094 Color color() default Color.NO_COLOR; -095 -096 /** The color for the number -097 * -098 * @return The color -099 */ -100 Color numberColor() default Color.NO_COLOR; -101 } -102 -103 /** Log a number, but store it as a number bar -104 * -105 */ -106 @Retention(RetentionPolicy.RUNTIME) -107 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -108 @interface NumberBar { -109 /** Store index for this annotation (position in telemetry) -110 * -111 * @return The index -112 */ -113 int index() default -1; -114 -115 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -116 * -117 * @return The priority -118 */ -119 int priority() default -1; -120 -121 /** Store the min for the number bar to scale to -122 * -123 * @return The min -124 */ -125 double min() default -1; -126 -127 /** Store the max for the number bar to scale to -128 * -129 * @return The max -130 */ -131 double max() default 1; -132 -133 /** Store the scale for the number bar to scale to -134 * -135 * @return The scale -136 */ -137 double scale() default 0.1; -138 -139 /** Store the name for this annotation to be be beside -140 * -141 * @return The name as a string -142 */ -143 String name() default ""; -144 -145 /** The color for the tag for the bar -146 * -147 * @return The color -148 */ -149 Color color() default Color.NO_COLOR; -150 -151 /** The color for the filled in bar color -152 * -153 * @return The color -154 */ -155 Color completeBarColor() default Color.NO_COLOR; -156 -157 /** The color for the not filled in bar color -158 * -159 * @return The color -160 */ -161 Color incompleteBarColor() default Color.NO_COLOR; -162 -163 /** The color for the bar outlines -164 * -165 * @return The color -166 */ -167 Color outline() default Color.NO_COLOR; -168 } -169 -170 @Retention(RetentionPolicy.RUNTIME) -171 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -172 @interface NumberSlider { -173 /** Store index for this annotation (position in telemetry) -174 * -175 * @return The index -176 */ -177 int index() default -1; -178 -179 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -180 * -181 * @return The priority -182 */ -183 int priority() default -1; -184 -185 /** Store the min for the number bar to scale to -186 * -187 * @return The min -188 */ -189 double min() default -1; -190 -191 /** Store the max for the number bar to scale to -192 * -193 * @return The max -194 */ -195 double max() default 1; -196 -197 /** Store the scale for the number bar to scale to -198 * -199 * @return The scale -200 */ -201 double scale() default 0.1; -202 -203 /** Store the name for this annotation to be be beside -204 * -205 * @return The name as a string -206 */ -207 String name() default ""; -208 -209 /** The color for the tag for the slider -210 * -211 * @return The color -212 */ -213 Color color() default Color.NO_COLOR; -214 -215 /** The color for the slider background -216 * -217 * @return The color -218 */ -219 Color sliderBackground() default Color.NO_COLOR; -220 -221 /** The color for the slider outline -222 * -223 * @return The color -224 */ -225 Color outline() default Color.NO_COLOR; -226 -227 /** The color for the slider slide -228 * -229 * @return The color -230 */ -231 Color slider() default Color.NO_COLOR; -232 } -233 -234 @Retention(RetentionPolicy.RUNTIME) -235 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -236 @interface Boolean { -237 /** Store index for this annotation (position in telemetry) -238 * -239 * @return The index -240 */ -241 int index() default -1; -242 -243 /** Store priority for this log entry (to pick the most wanted entry over others with same index) -244 * -245 * @return The priority -246 */ -247 int priority() default -1; -248 -249 /** Store the string when the annotated method returns true -250 * -251 * @return The string -252 */ -253 String trueValue() default "true"; -254 -255 /** The format for when the boolean returns true -256 * -257 * @return The String format -258 */ -259 String trueFormat() default "%s"; -260 -261 /** The color for the true String -262 * -263 * @return The color -264 */ -265 Color trueColor() default Color.NO_COLOR; -266 -267 /** Store the string when the annotated method returns false -268 * -269 * @return The string -270 */ -271 String falseValue() default "false"; -272 -273 /** The format for when the boolean returns false -274 * -275 * @return The String format -276 */ -277 String falseFormat() default "%s"; -278 -279 /** The color for the false String -280 * -281 * @return The color -282 */ -283 Color falseColor() default Color.NO_COLOR; -284 -285 /** Store the name for this annotation to be be beside -286 * -287 * @return The name as a string -288 */ -289 String name() default ""; -290 -291 /** The color for the tag for the boolean -292 * -293 * @return The color -294 */ -295 Color color() default Color.NO_COLOR; -296 } -297} +078 @Retention(RetentionPolicy.RUNTIME) +079 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) +080 @interface Boolean { +081 /** Store index for this annotation (position in telemetry) +082 * +083 * @return The index +084 */ +085 int index() default -1; +086 +087 /** Store priority for this log entry (to pick the most wanted entry over others with same index) +088 * +089 * @return The priority +090 */ +091 int priority() default -1; +092 +093 /** Store the string when the annotated method returns true +094 * +095 * @return The string +096 */ +097 String trueValue() default "true"; +098 +099 /** Store the string when the annotated method returns false +100 * +101 * @return The string +102 */ +103 String falseValue() default "false"; +104 +105 /** Store the name for this annotation to be be beside +106 * +107 * @return The name as a string +108 */ +109 String name() default ""; +110 +111 } +112} diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Blacklist.html b/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.AllowList.html similarity index 96% rename from docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Blacklist.html rename to docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.AllowList.html index 6441f4be..190a68b5 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Blacklist.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.AllowList.html @@ -4,7 +4,7 @@ Source code - + @@ -45,26 +45,26 @@ 032 boolean duringInit() default false; 033 } 034 -035 /** Annotation for Whitelisting Opmodes to log this item +035 /** Annotation for allowing Opmodes to log this item 036 * 037 */ 038 @Retention(RetentionPolicy.RUNTIME) 039 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -040 @interface Whitelist { -041 /** The whitelisted opmodes +040 @interface AllowList { +041 /** The allowed opmodes 042 * 043 * @return Opmode Classes 044 */ 045 Class<?>[] value(); 046 } 047 -048 /** Annotation for Blacklisting Opmodes to log this item +048 /** Annotation for denying Opmodes to log this item 049 * 050 */ 051 @Retention(RetentionPolicy.RUNTIME) 052 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -053 @interface Blacklist { -054 /** The blacklisted opmodes +053 @interface DenyList { +054 /** The denied opmodes 055 * 056 * @return Opmode Classes 057 */ diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Whitelist.html b/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.DenyList.html similarity index 96% rename from docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Whitelist.html rename to docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.DenyList.html index 0abba31c..ad893587 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Whitelist.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.DenyList.html @@ -4,7 +4,7 @@ Source code - + @@ -45,26 +45,26 @@ 032 boolean duringInit() default false; 033 } 034 -035 /** Annotation for Whitelisting Opmodes to log this item +035 /** Annotation for allowing Opmodes to log this item 036 * 037 */ 038 @Retention(RetentionPolicy.RUNTIME) 039 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -040 @interface Whitelist { -041 /** The whitelisted opmodes +040 @interface AllowList { +041 /** The allowed opmodes 042 * 043 * @return Opmode Classes 044 */ 045 Class<?>[] value(); 046 } 047 -048 /** Annotation for Blacklisting Opmodes to log this item +048 /** Annotation for denying Opmodes to log this item 049 * 050 */ 051 @Retention(RetentionPolicy.RUNTIME) 052 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -053 @interface Blacklist { -054 /** The blacklisted opmodes +053 @interface DenyList { +054 /** The denied opmodes 055 * 056 * @return Opmode Classes 057 */ diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Disabled.html b/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Disabled.html index 83a4001a..9280604e 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Disabled.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Disabled.html @@ -45,26 +45,26 @@ 032 boolean duringInit() default false; 033 } 034 -035 /** Annotation for Whitelisting Opmodes to log this item +035 /** Annotation for allowing Opmodes to log this item 036 * 037 */ 038 @Retention(RetentionPolicy.RUNTIME) 039 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -040 @interface Whitelist { -041 /** The whitelisted opmodes +040 @interface AllowList { +041 /** The allowed opmodes 042 * 043 * @return Opmode Classes 044 */ 045 Class<?>[] value(); 046 } 047 -048 /** Annotation for Blacklisting Opmodes to log this item +048 /** Annotation for denying Opmodes to log this item 049 * 050 */ 051 @Retention(RetentionPolicy.RUNTIME) 052 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -053 @interface Blacklist { -054 /** The blacklisted opmodes +053 @interface DenyList { +054 /** The denied opmodes 055 * 056 * @return Opmode Classes 057 */ diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Run.html b/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Run.html index 206f810c..b40f8d2d 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Run.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.Run.html @@ -45,26 +45,26 @@ 032 boolean duringInit() default false; 033 } 034 -035 /** Annotation for Whitelisting Opmodes to log this item +035 /** Annotation for allowing Opmodes to log this item 036 * 037 */ 038 @Retention(RetentionPolicy.RUNTIME) 039 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -040 @interface Whitelist { -041 /** The whitelisted opmodes +040 @interface AllowList { +041 /** The allowed opmodes 042 * 043 * @return Opmode Classes 044 */ 045 Class<?>[] value(); 046 } 047 -048 /** Annotation for Blacklisting Opmodes to log this item +048 /** Annotation for denying Opmodes to log this item 049 * 050 */ 051 @Retention(RetentionPolicy.RUNTIME) 052 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -053 @interface Blacklist { -054 /** The blacklisted opmodes +053 @interface DenyList { +054 /** The denied opmodes 055 * 056 * @return Opmode Classes 057 */ diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.html b/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.html index 38073f2d..18385b64 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/LogConfig.html @@ -45,26 +45,26 @@ 032 boolean duringInit() default false; 033 } 034 -035 /** Annotation for Whitelisting Opmodes to log this item +035 /** Annotation for allowing Opmodes to log this item 036 * 037 */ 038 @Retention(RetentionPolicy.RUNTIME) 039 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -040 @interface Whitelist { -041 /** The whitelisted opmodes +040 @interface AllowList { +041 /** The allowed opmodes 042 * 043 * @return Opmode Classes 044 */ 045 Class<?>[] value(); 046 } 047 -048 /** Annotation for Blacklisting Opmodes to log this item +048 /** Annotation for denying Opmodes to log this item 049 * 050 */ 051 @Retention(RetentionPolicy.RUNTIME) 052 @Target(value = { FIELD, LOCAL_VARIABLE, METHOD }) -053 @interface Blacklist { -054 /** The blacklisted opmodes +053 @interface DenyList { +054 /** The denied opmodes 055 * 056 * @return Opmode Classes 057 */ diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/Logger.html b/docs/TechnoLib/src-html/com/technototes/library/logger/Logger.html index 8559cd8d..8b511079 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/Logger.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/Logger.html @@ -16,316 +16,274 @@ 003import com.qualcomm.robotcore.eventloop.opmode.OpMode; 004import com.technototes.library.logger.entry.BooleanEntry; 005import com.technototes.library.logger.entry.Entry; -006import com.technototes.library.logger.entry.NumberBarEntry; -007import com.technototes.library.logger.entry.NumberEntry; -008import com.technototes.library.logger.entry.NumberSliderEntry; -009import com.technototes.library.logger.entry.StringEntry; -010import java.lang.annotation.Annotation; -011import java.lang.reflect.Field; -012import java.lang.reflect.InvocationTargetException; -013import java.lang.reflect.Method; -014import java.sql.Array; -015import java.util.ArrayList; -016import java.util.Arrays; -017import java.util.LinkedHashSet; -018import java.util.List; -019import java.util.Set; -020import java.util.function.BooleanSupplier; -021import java.util.function.DoubleSupplier; -022import java.util.function.IntSupplier; -023import java.util.function.Supplier; -024import org.firstinspires.ftc.robotcore.external.Telemetry; -025 -026/** -027 * The class to manage logging -028 * -029 * @author Alex Stedman -030 */ -031public class Logger { -032 -033 public Entry<?>[] runEntries; -034 public Entry<?>[] initEntries; -035 private final Set<Entry<?>> unindexedRunEntries; -036 private final Set<Entry<?>> unindexedInitEntries; -037 private final Telemetry telemetry; -038 private final OpMode opMode; -039 /** -040 * The divider between the tag and the entry for telemetry (default ':') -041 */ -042 public char captionDivider = ':'; -043 -044 /** -045 * Instantiate the logger -046 * -047 * @param op The OpMode class -048 */ -049 public Logger(OpMode op) { -050 opMode = op; -051 telemetry = op.telemetry; -052 telemetry.setDisplayFormat(Telemetry.DisplayFormat.HTML); -053 unindexedRunEntries = new LinkedHashSet<>(); -054 unindexedInitEntries = new LinkedHashSet<>(); -055 configure(op); -056 runEntries = generate(unindexedRunEntries); -057 initEntries = generate(unindexedInitEntries); -058 } -059 -060 private void configure(Object root) { -061 for (Field field : root.getClass().getFields()) { -062 try { -063 Object o = field.get(root); -064 if (isFieldAllowed(field)) { -065 if (o instanceof Loggable) { -066 configure(o); -067 } else if ( -068 field.isAnnotationPresent(Log.class) || -069 field.isAnnotationPresent(Log.Number.class) || -070 field.isAnnotationPresent(Log.NumberSlider.class) || -071 field.isAnnotationPresent(Log.NumberBar.class) || -072 field.isAnnotationPresent(Log.Boolean.class) -073 ) { -074 if (field.getType().isPrimitive() || o instanceof String) { -075 set(field.getDeclaredAnnotations(), field, root); -076 System.out.println("prim"); -077 } else if (getCustom(o) != null) { -078 set(field.getDeclaredAnnotations(), getCustom(o)); -079 System.out.println("cust"); -080 } -081 } -082 } -083 } catch (IllegalAccessException ignored) { -084 System.out.println("reeeeeeeeeeeeeeeeeeee"); -085 } -086 } -087 for (Method m : root.getClass().getMethods()) { -088 set(m.getDeclaredAnnotations(), m, root); -089 } -090 } -091 -092 // TODO make list and do sort with comparators -093 // I wish this had a comment describing what Alex thinks it's doing, -094 // I *think* it'strying to set the 'indexed' entries to their preferred locations -095 // then filling in the gaps with unindexed or lower priority entries. -096 // That bottom loop is also quite slow, but we're talking about 0-20 entries, so performance -097 // is probably irrelevant... -098 private Entry<?>[] generate(Set<Entry<?>> a) { -099 Entry<?>[] returnEntry = new Entry[a.size()]; -100 List<Entry<?>> unindexed = new ArrayList<>(); -101 for (Entry<?> e : a) { -102 int index = e.getIndex(); -103 if (index >= 0 && index < returnEntry.length) { -104 Entry<?> other = returnEntry[index]; -105 if (other == null) { -106 returnEntry[index] = e; -107 } else { -108 if (e.getPriority() > other.getPriority()) { -109 unindexed.add(other); -110 returnEntry[index] = e; -111 } else { -112 unindexed.add(e); -113 } -114 } -115 } else { -116 unindexed.add(e); +006import com.technototes.library.logger.entry.NumberEntry; +007import com.technototes.library.logger.entry.StringEntry; +008import java.lang.annotation.Annotation; +009import java.lang.reflect.Field; +010import java.lang.reflect.InvocationTargetException; +011import java.lang.reflect.Method; +012import java.util.ArrayList; +013import java.util.Arrays; +014import java.util.LinkedHashSet; +015import java.util.List; +016import java.util.Set; +017import java.util.function.BooleanSupplier; +018import java.util.function.DoubleSupplier; +019import java.util.function.IntSupplier; +020import java.util.function.Supplier; +021import org.firstinspires.ftc.robotcore.external.Telemetry; +022 +023/** +024 * The class to manage logging +025 * +026 * @author Alex Stedman +027 */ +028public class Logger { +029 +030 public Entry<?>[] runEntries; +031 public Entry<?>[] initEntries; +032 private final Set<Entry<?>> unindexedRunEntries; +033 private final Set<Entry<?>> unindexedInitEntries; +034 private final Telemetry telemetry; +035 private final OpMode opMode; +036 /** +037 * The divider between the tag and the entry for telemetry (default ':') +038 */ +039 public char captionDivider = ':'; +040 +041 /** +042 * Instantiate the logger +043 * +044 * @param op The OpMode class +045 */ +046 public Logger(OpMode op) { +047 opMode = op; +048 telemetry = op.telemetry; +049 telemetry.setDisplayFormat(Telemetry.DisplayFormat.HTML); +050 unindexedRunEntries = new LinkedHashSet<>(); +051 unindexedInitEntries = new LinkedHashSet<>(); +052 configure(op); +053 runEntries = generate(unindexedRunEntries); +054 initEntries = generate(unindexedInitEntries); +055 } +056 +057 private void configure(Object root) { +058 for (Field field : root.getClass().getFields()) { +059 try { +060 Object o = field.get(root); +061 if (isFieldAllowed(field)) { +062 if (o instanceof Loggable) { +063 configure(o); +064 } else if ( +065 field.isAnnotationPresent(Log.class) || +066 field.isAnnotationPresent(Log.Number.class) || +067 field.isAnnotationPresent(Log.Boolean.class) +068 ) { +069 if (field.getType().isPrimitive() || o instanceof String) { +070 set(field.getDeclaredAnnotations(), field, root); +071 System.out.println("prim"); +072 } else if (getCustom(o) != null) { +073 set(field.getDeclaredAnnotations(), getCustom(o)); +074 System.out.println("cust"); +075 } +076 } +077 } +078 } catch (IllegalAccessException ignored) { +079 System.out.println("reeeeeeeeeeeeeeeeeeee"); +080 } +081 } +082 for (Method m : root.getClass().getMethods()) { +083 set(m.getDeclaredAnnotations(), m, root); +084 } +085 } +086 +087 // TODO make list and do sort with comparators +088 // I wish this had a comment describing what Alex thinks it's doing, +089 // I *think* it'strying to set the 'indexed' entries to their preferred locations +090 // then filling in the gaps with unindexed or lower priority entries. +091 // That bottom loop is also quite slow, but we're talking about 0-20 entries, so performance +092 // is probably irrelevant... +093 private Entry<?>[] generate(Set<Entry<?>> a) { +094 Entry<?>[] returnEntry = new Entry[a.size()]; +095 List<Entry<?>> unindexed = new ArrayList<>(); +096 for (Entry<?> e : a) { +097 int index = e.getIndex(); +098 if (index >= 0 && index < returnEntry.length) { +099 Entry<?> other = returnEntry[index]; +100 if (other == null) { +101 returnEntry[index] = e; +102 } else { +103 if (e.getPriority() > other.getPriority()) { +104 unindexed.add(other); +105 returnEntry[index] = e; +106 } else { +107 unindexed.add(e); +108 } +109 } +110 } else { +111 unindexed.add(e); +112 } +113 } +114 for (int i = 0; unindexed.size() > 0; i++) { +115 if (returnEntry[i] == null) { +116 returnEntry[i] = unindexed.remove(0); 117 } 118 } -119 for (int i = 0; unindexed.size() > 0; i++) { -120 if (returnEntry[i] == null) { -121 returnEntry[i] = unindexed.remove(0); -122 } -123 } -124 return returnEntry; -125 } -126 -127 private void update(Entry<?>[] choice) { -128 try { -129 for (int i = 0; i < choice.length; i++) { -130 telemetry.addLine( -131 (i > 9 ? i + "| " : i + " | ") + -132 (choice[i] == null ? "" : choice[i].getTag().replace('`', captionDivider) + choice[i].toString()) -133 ); -134 } -135 telemetry.update(); -136 } catch (Exception ignored) {} -137 } -138 -139 /** -140 * Update the logged run items in temeletry -141 */ -142 public void runUpdate() { -143 update(runEntries); -144 } -145 -146 /** -147 * Update the logged init items in temeletry -148 */ -149 public void initUpdate() { -150 update(initEntries); -151 } -152 -153 private void set(Annotation[] a, Method m, Object root) { -154 set( -155 a, -156 () -> { -157 try { -158 return m.invoke(root); -159 } catch (IllegalAccessException | InvocationTargetException e) { -160 e.printStackTrace(); -161 } -162 return null; -163 } -164 ); -165 } -166 -167 private void set(Annotation[] a, Field m, Object root) { -168 set( -169 a, -170 () -> { -171 try { -172 return m.get(root); -173 } catch (IllegalAccessException e) { -174 e.printStackTrace(); -175 } -176 return null; -177 } -178 ); -179 } -180 -181 @SuppressWarnings({ "unchecked" }) -182 private void set(Annotation[] a, Supplier<?> m) { -183 boolean init = false, run = true; -184 Entry<?> e = null; -185 for (Annotation as : a) { -186 if (as instanceof Log.NumberSlider) { -187 e = -188 new NumberSliderEntry( -189 ((Log.NumberSlider) as).name(), -190 (Supplier<Number>) m, -191 ((Log.NumberSlider) as).index(), -192 ((Log.NumberSlider) as).min(), -193 ((Log.NumberSlider) as).max(), -194 ((Log.NumberSlider) as).scale(), -195 ((Log.NumberSlider) as).color(), -196 ((Log.NumberSlider) as).sliderBackground(), -197 ((Log.NumberSlider) as).outline(), -198 ((Log.NumberSlider) as).slider() -199 ); -200 e.setPriority(((Log.NumberSlider) as).priority()); -201 } else if (as instanceof Log.NumberBar) { -202 e = -203 new NumberBarEntry( -204 ((Log.NumberBar) as).name(), -205 (Supplier<Number>) m, -206 ((Log.NumberBar) as).index(), -207 ((Log.NumberBar) as).min(), -208 ((Log.NumberBar) as).max(), -209 ((Log.NumberBar) as).scale(), -210 ((Log.NumberBar) as).color(), -211 ((Log.NumberBar) as).completeBarColor(), -212 ((Log.NumberBar) as).outline(), -213 ((Log.NumberBar) as).incompleteBarColor() -214 ); -215 e.setPriority(((Log.NumberBar) as).priority()); -216 } else if (as instanceof Log.Number) { -217 e = -218 new NumberEntry( -219 ((Log.Number) as).name(), -220 (Supplier<Number>) m, -221 ((Log.Number) as).index(), -222 ((Log.Number) as).color(), -223 ((Log.Number) as).numberColor() -224 ); -225 e.setPriority(((Log.Number) as).priority()); -226 } else if (as instanceof Log) { -227 e = -228 new StringEntry( -229 ((Log) as).name(), -230 (Supplier<String>) m, -231 ((Log) as).index(), -232 ((Log) as).color(), -233 ((Log) as).format(), -234 ((Log) as).entryColor() -235 ); -236 e.setPriority(((Log) as).priority()); -237 } else if (as instanceof Log.Boolean) { -238 e = -239 new BooleanEntry( -240 ((Log.Boolean) as).name(), -241 (Supplier<Boolean>) m, -242 ((Log.Boolean) as).index(), -243 ((Log.Boolean) as).trueValue(), -244 ((Log.Boolean) as).falseValue(), -245 ((Log.Boolean) as).color(), -246 ((Log.Boolean) as).trueFormat(), -247 ((Log.Boolean) as).falseFormat(), -248 ((Log.Boolean) as).trueColor(), -249 ((Log.Boolean) as).falseColor() -250 ); -251 e.setPriority(((Log.Boolean) as).priority()); -252 } else if (as instanceof LogConfig.Run) { -253 init = ((LogConfig.Run) as).duringInit(); -254 run = ((LogConfig.Run) as).duringRun(); -255 } -256 } -257 if (e != null) { -258 if (init) { -259 unindexedInitEntries.add(e); -260 } -261 if (run) { -262 unindexedRunEntries.add(e); -263 } -264 } -265 } -266 -267 /** -268 * Repeat a String -269 * -270 * @param s The String to repeat -271 * @param num The amount of times to repeat the String -272 * @return The String s repeated num times -273 */ -274 public static String repeat(String s, int num) { -275 if (num > 100) { -276 System.err.println("One of the entries is too long, make sure your scaling is correct"); -277 num = 100; -278 } -279 return num > 0 ? repeat(s, num - 1) + s : ""; -280 } -281 -282 private static Supplier<?> getCustom(Object o) { -283 if (o instanceof Supplier) { -284 return (Supplier<?>) o; -285 } else if (o instanceof BooleanSupplier) { -286 return ((BooleanSupplier) o)::getAsBoolean; -287 } else if (o instanceof IntSupplier) { -288 return ((IntSupplier) o)::getAsInt; -289 } else if (o instanceof DoubleSupplier) { -290 return ((DoubleSupplier) o)::getAsDouble; -291 } else if (o instanceof Integer) { -292 return () -> (Integer) o; -293 } else if (o instanceof Double) { -294 return () -> (Double) o; -295 } else if (o instanceof Boolean) { -296 return () -> (Boolean) o; -297 } else { -298 return null; -299 } -300 } -301 -302 private boolean isFieldAllowed(Field f) { -303 if (f.isAnnotationPresent(LogConfig.Whitelist.class)) { -304 if (!Arrays.asList(f.getAnnotation(LogConfig.Whitelist.class).value()).contains(opMode.getClass())) { -305 return false; -306 } -307 } -308 if (f.isAnnotationPresent(LogConfig.Blacklist.class)) { -309 if (Arrays.asList(f.getAnnotation(LogConfig.Blacklist.class).value()).contains(opMode.getClass())) { -310 return false; -311 } -312 } -313 return !f.isAnnotationPresent(LogConfig.Disabled.class); -314 } -315} +119 return returnEntry; +120 } +121 +122 private void update(Entry<?>[] choice) { +123 try { +124 for (Entry<?> item : choice) { +125 // telemetry.addLine( +126 // (i > 9 ? i + "| " : i + " | ") + +127 // (choice[i] == null ? "" : choice[i].getTag().replace('`', captionDivider) + choice[i].toString()) +128 // ); +129 // All teh fancy HTML stuff gets in the way of the FTC Dashboard graph +130 telemetry.addData(item.getName(), item.get()); +131 } +132 telemetry.update(); +133 } catch (Exception ignored) {} +134 } +135 +136 /** +137 * Update the logged run items in temeletry +138 */ +139 public void runUpdate() { +140 update(runEntries); +141 } +142 +143 /** +144 * Update the logged init items in temeletry +145 */ +146 public void initUpdate() { +147 update(initEntries); +148 } +149 +150 private void set(Annotation[] a, Method m, Object root) { +151 set( +152 a, +153 () -> { +154 try { +155 return m.invoke(root); +156 } catch (IllegalAccessException | InvocationTargetException e) { +157 e.printStackTrace(); +158 } +159 return null; +160 } +161 ); +162 } +163 +164 private void set(Annotation[] a, Field m, Object root) { +165 set( +166 a, +167 () -> { +168 try { +169 return m.get(root); +170 } catch (IllegalAccessException e) { +171 e.printStackTrace(); +172 } +173 return null; +174 } +175 ); +176 } +177 +178 @SuppressWarnings({ "unchecked" }) +179 private void set(Annotation[] a, Supplier<?> m) { +180 boolean init = false, run = true; +181 Entry<?> e = null; +182 for (Annotation as : a) { +183 if (as instanceof Log.Number) { +184 e = +185 new NumberEntry( +186 ((Log.Number) as).name(), +187 (Supplier<Number>) m, +188 ((Log.Number) as).index() +189 ); +190 e.setPriority(((Log.Number) as).priority()); +191 } else if (as instanceof Log) { +192 e = +193 new StringEntry( +194 ((Log) as).name(), +195 (Supplier<String>) m, +196 ((Log) as).index(), +197 ((Log) as).format() +198 ); +199 e.setPriority(((Log) as).priority()); +200 } else if (as instanceof Log.Boolean) { +201 e = +202 new BooleanEntry( +203 ((Log.Boolean) as).name(), +204 (Supplier<Boolean>) m, +205 ((Log.Boolean) as).index(), +206 ((Log.Boolean) as).trueValue(), +207 ((Log.Boolean) as).falseValue() +208 ); +209 e.setPriority(((Log.Boolean) as).priority()); +210 } else if (as instanceof LogConfig.Run) { +211 init = ((LogConfig.Run) as).duringInit(); +212 run = ((LogConfig.Run) as).duringRun(); +213 } +214 } +215 if (e != null) { +216 if (init) { +217 unindexedInitEntries.add(e); +218 } +219 if (run) { +220 unindexedRunEntries.add(e); +221 } +222 } +223 } +224 +225 /** +226 * Repeat a String +227 * +228 * @param s The String to repeat +229 * @param num The amount of times to repeat the String +230 * @return The String s repeated num times +231 */ +232 public static String repeat(String s, int num) { +233 if (num > 100) { +234 System.err.println("One of the entries is too long, make sure your scaling is correct"); +235 num = 100; +236 } +237 return num > 0 ? repeat(s, num - 1) + s : ""; +238 } +239 +240 private static Supplier<?> getCustom(Object o) { +241 if (o instanceof Supplier) { +242 return (Supplier<?>) o; +243 } else if (o instanceof BooleanSupplier) { +244 return ((BooleanSupplier) o)::getAsBoolean; +245 } else if (o instanceof IntSupplier) { +246 return ((IntSupplier) o)::getAsInt; +247 } else if (o instanceof DoubleSupplier) { +248 return ((DoubleSupplier) o)::getAsDouble; +249 } else if (o instanceof Integer) { +250 return () -> (Integer) o; +251 } else if (o instanceof Double) { +252 return () -> (Double) o; +253 } else if (o instanceof Boolean) { +254 return () -> (Boolean) o; +255 } else { +256 return null; +257 } +258 } +259 +260 private boolean isFieldAllowed(Field f) { +261 if (f.isAnnotationPresent(LogConfig.AllowList.class)) { +262 if (!Arrays.asList(f.getAnnotation(LogConfig.AllowList.class).value()).contains(opMode.getClass())) { +263 return false; +264 } +265 } +266 if (f.isAnnotationPresent(LogConfig.DenyList.class)) { +267 if (Arrays.asList(f.getAnnotation(LogConfig.DenyList.class).value()).contains(opMode.getClass())) { +268 return false; +269 } +270 } +271 return !f.isAnnotationPresent(LogConfig.Disabled.class); +272 } +273} diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/BooleanEntry.html b/docs/TechnoLib/src-html/com/technototes/library/logger/entry/BooleanEntry.html index ef1975ae..fdf389e0 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/BooleanEntry.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/entry/BooleanEntry.html @@ -18,30 +18,25 @@ 005 006public class BooleanEntry extends Entry<Boolean> { 007 -008 private StringEntry trueEntry, falseEntry; +008 private String trueEntry, falseEntry; 009 010 public BooleanEntry( 011 String n, 012 Supplier<Boolean> s, 013 int index, 014 String wt, -015 String wf, -016 Color c, -017 String tf, -018 String ff, -019 Color tc, -020 Color fc -021 ) { -022 super(n, s, index, c); -023 trueEntry = new StringEntry("", () -> wt, -1, Color.NO_COLOR, tf, tc); -024 falseEntry = new StringEntry("", () -> wf, -1, Color.NO_COLOR, ff, fc); +015 String wf +016 ) { +017 super(n, s, index); +018 trueEntry = wt; +019 falseEntry = wf; +020 } +021 +022 @Override +023 public String toString() { +024 return (get() ? trueEntry : falseEntry); 025 } -026 -027 @Override -028 public String toString() { -029 return (get() ? trueEntry : falseEntry).get(); -030 } -031} +026} diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/Entry.html b/docs/TechnoLib/src-html/com/technototes/library/logger/entry/Entry.html index 88f035c8..86b7e984 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/Entry.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/entry/Entry.html @@ -13,131 +13,110 @@
    001package com.technototes.library.logger.entry;
     002
    -003import com.technototes.library.util.Color;
    -004import java.util.function.Supplier;
    -005
    -006/**
    -007 * The root class for logging entries
    -008 *
    -009 * @param <T> The type of value being stored by the entry
    -010 * @author Alex Stedman
    -011 */
    -012public abstract class Entry<T> implements Supplier<T> {
    -013
    -014    /**
    -015     * The index (in the list) of the entry
    -016     */
    -017    protected int x;
    -018    /**
    -019     * The priority (in the telemetry list) of the entry
    -020     */
    -021    protected int priority;
    -022    /**
    -023     * The function called to get the value to display
    -024     */
    -025    protected Supplier<T> supplier;
    -026    /**
    -027     * The name of the Entry
    -028     */
    -029    protected String name;
    +003import java.util.function.Supplier;
    +004
    +005/**
    +006 * The root class for logging entries
    +007 *
    +008 * @param <T> The type of value being stored by the entry
    +009 * @author Alex Stedman
    +010 */
    +011public abstract class Entry<T> implements Supplier<T> {
    +012
    +013    /**
    +014     * The index (in the list) of the entry
    +015     */
    +016    protected int x;
    +017    /**
    +018     * The priority (in the telemetry list) of the entry
    +019     */
    +020    protected int priority;
    +021    /**
    +022     * The function called to get the value to display
    +023     */
    +024    protected Supplier<T> supplier;
    +025    /**
    +026     * The name of the Entry
    +027     */
    +028    protected String name;
    +029
     030    /**
    -031     * String to use a 'header' (calculated from name and color)
    -032     */
    -033    protected String tag;
    -034    /**
    -035     * Color to display
    +031     * Create an entry with name, value, index
    +032     *
    +033     * @param n     Name of the entry
    +034     * @param s     Value function to display
    +035     * @param index Index of the entry
     036     */
    -037    protected Color color;
    -038
    -039    /**
    -040     * Create an entry with name, value, index, and color
    -041     *
    -042     * @param n     Name of the entry
    -043     * @param s     Value function to display
    -044     * @param index Index of the entry
    -045     * @param c     Color to display
    -046     */
    -047    public Entry(String n, Supplier<T> s, int index, Color c) {
    -048        x = index;
    -049        supplier = s;
    -050        name = n;
    -051        color = c;
    -052        tag = (name.equals("") ? " " : color.format(name) + " ` ");
    -053    }
    -054
    -055    /**
    -056     * Set's the priority for this log line (handy for telemetry overflow)
    -057     *
    -058     * @param p The priority
    -059     * @return Self (for chaining)
    -060     */
    -061    public Entry<T> setPriority(int p) {
    -062        priority = p;
    -063        return this;
    -064    }
    -065
    -066    @Override
    -067    public T get() {
    -068        return supplier.get();
    -069    }
    -070
    -071    /**
    -072     * The String for the logged item
    -073     *
    -074     * @return The String
    -075     */
    -076    @Override
    -077    public String toString() {
    -078        return supplier.get().toString();
    -079    }
    -080
    -081    /**
    -082     * The tag for the entry
    -083     *
    -084     * @return The tag
    -085     */
    -086    public String getTag() {
    -087        return tag;
    -088    }
    -089
    -090    /**
    -091     * Get the name (unformatted tag)
    -092     *
    -093     * @return The name
    -094     */
    -095    public String getName() {
    -096        return name;
    -097    }
    -098
    -099    /**
    -100     * Get the index for the entry
    -101     *
    -102     * @return The index
    -103     */
    -104    public int getIndex() {
    -105        return x;
    -106    }
    -107
    -108    /**
    -109     * Set index
    -110     *
    -111     * @param i New index
    -112     * @return this
    -113     */
    -114    public Entry setIndex(int i) {
    -115        x = i;
    -116        return this;
    -117    }
    -118
    -119    /**
    -120     * Get Priority for the entry
    -121     *
    -122     * @return The priority
    -123     */
    -124    public int getPriority() {
    -125        return priority;
    -126    }
    -127}
    +037    public Entry(String n, Supplier<T> s, int index) {
    +038        x = index;
    +039        supplier = s;
    +040        name = n;
    +041    }
    +042
    +043    /**
    +044     * Set's the priority for this log line (handy for telemetry overflow)
    +045     *
    +046     * @param p The priority
    +047     * @return Self (for chaining)
    +048     */
    +049    public Entry<T> setPriority(int p) {
    +050        priority = p;
    +051        return this;
    +052    }
    +053
    +054    @Override
    +055    public T get() {
    +056        return supplier.get();
    +057    }
    +058
    +059    /**
    +060     * The String for the logged item
    +061     *
    +062     * @return The String
    +063     */
    +064    @Override
    +065    public String toString() {
    +066        return supplier.get().toString();
    +067    }
    +068
    +069    /**
    +070     * Get the name
    +071     *
    +072     * @return The name
    +073     */
    +074    public String getName() {
    +075        return name;
    +076    }
    +077
    +078    /**
    +079     * Get the index for the entry
    +080     *
    +081     * @return The index
    +082     */
    +083    public int getIndex() {
    +084        return x;
    +085    }
    +086
    +087    /**
    +088     * Set index
    +089     *
    +090     * @param i New index
    +091     * @return this
    +092     */
    +093    public Entry setIndex(int i) {
    +094        x = i;
    +095        return this;
    +096    }
    +097
    +098    /**
    +099     * Get Priority for the entry
    +100     *
    +101     * @return The priority
    +102     */
    +103    public int getPriority() {
    +104        return priority;
    +105    }
    +106}
     
     
     
    diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberBarEntry.html b/docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberBarEntry.html
    deleted file mode 100644
    index f570a936..00000000
    --- a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberBarEntry.html
    +++ /dev/null
    @@ -1,113 +0,0 @@
    -
    -
    -
    -
    -Source code
    -
    -
    -
    -
    -
    -
    -
    -
    -
    001package com.technototes.library.logger.entry;
    -002
    -003import com.technototes.library.logger.Logger;
    -004import com.technototes.library.util.Color;
    -005import java.util.function.Supplier;
    -006
    -007public class NumberBarEntry extends NumberSliderEntry {
    -008
    -009    // primary is bar color, secondary is outline, tertiary is incomplete bar
    -010    public NumberBarEntry(
    -011        String n,
    -012        Supplier<Number> s,
    -013        int x,
    -014        Number mi,
    -015        Number ma,
    -016        Number sc,
    -017        Color c,
    -018        Color pri,
    -019        Color sec,
    -020        Color tert
    -021    ) {
    -022        super(n, s, x, mi, ma, sc, c, pri, sec, tert);
    -023    }
    -024
    -025    @Override
    -026    public String toString() {
    -027        StringBuilder r = new StringBuilder(secondary.format("["));
    -028        int totalAmt = (int) ((max() - min()) / scale());
    -029        int fullAmt = (int) (Math.round((getDouble() - min()) / scale()));
    -030        r.append(primary.format(Logger.repeat("█", fullAmt + 1)));
    -031        r.append(tertiary.format(Logger.repeat("━", totalAmt - fullAmt)));
    -032        r.append(secondary.format("]"));
    -033        return r.toString();
    -034    }
    -035}
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberEntry.html b/docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberEntry.html index 26d11f3e..994637e7 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberEntry.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberEntry.html @@ -20,21 +20,16 @@ 007 008 protected Color numberColor; 009 -010 public NumberEntry(String n, Supplier<Number> s, int x, Color c, Color num) { -011 super(n, s, x, c); -012 numberColor = num; -013 } +010 public NumberEntry(String n, Supplier<Number> s, int x) { +011 super(n, s, x); +012 } +013 014 -015 public NumberEntry(String n, Supplier<Number> s, int x, Color c) { -016 super(n, s, x, c); -017 numberColor = Color.NO_COLOR; +015 @Override +016 public String toString() { +017 return numberColor.format(get()); 018 } -019 -020 @Override -021 public String toString() { -022 return numberColor.format(get()); -023 } -024} +019} diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberSliderEntry.html b/docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberSliderEntry.html deleted file mode 100644 index ad0b866e..00000000 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/NumberSliderEntry.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - -Source code - - - - - - -
    -
    -
    001package com.technototes.library.logger.entry;
    -002
    -003import com.technototes.library.logger.Logger;
    -004import com.technototes.library.util.Color;
    -005import java.util.function.Supplier;
    -006
    -007public class NumberSliderEntry extends NumberEntry {
    -008
    -009    protected Number min, max, scale;
    -010    protected Color primary, secondary, tertiary;
    -011
    -012    public NumberSliderEntry(
    -013        String n,
    -014        Supplier<Number> s,
    -015        int x,
    -016        Number mi,
    -017        Number ma,
    -018        Number sc,
    -019        Color c,
    -020        Color pr,
    -021        Color sec,
    -022        Color tert
    -023    ) {
    -024        super(n, s, x, c);
    -025        min = mi;
    -026        max = ma;
    -027        scale = sc;
    -028        primary = pr;
    -029        secondary = sec;
    -030        tertiary = tert;
    -031    }
    -032
    -033    public double min() {
    -034        return min.doubleValue();
    -035    }
    -036
    -037    public double max() {
    -038        return max.doubleValue();
    -039    }
    -040
    -041    public double scale() {
    -042        return scale.doubleValue();
    -043    }
    -044
    -045    public double getDouble() {
    -046        return get().doubleValue();
    -047    }
    -048
    -049    @Override
    -050    public String toString() {
    -051        StringBuilder r = new StringBuilder(secondary.format("["));
    -052        int totalAmt = (int) ((max() - min()) / scale());
    -053        int fullAmt = (int) (Math.round((getDouble() - min()) / scale()));
    -054        r.append(tertiary.format(Logger.repeat("━", fullAmt)));
    -055        r.append(primary.format("█"));
    -056        r.append(tertiary.format(Logger.repeat("━", totalAmt - fullAmt)));
    -057        r.append(secondary.format("]"));
    -058        return r.toString();
    -059    }
    -060}
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - diff --git a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/StringEntry.html b/docs/TechnoLib/src-html/com/technototes/library/logger/entry/StringEntry.html index ce76bd07..6d7f5d67 100644 --- a/docs/TechnoLib/src-html/com/technototes/library/logger/entry/StringEntry.html +++ b/docs/TechnoLib/src-html/com/technototes/library/logger/entry/StringEntry.html @@ -13,25 +13,22 @@
    001package com.technototes.library.logger.entry;
     002
    -003import com.technototes.library.util.Color;
    -004import java.util.function.Supplier;
    -005
    -006public class StringEntry extends Entry<String> {
    -007
    -008    private String format;
    -009    private Color entryColor;
    -010
    -011    public StringEntry(String n, Supplier<String> s, int x, Color c, String f, Color ec) {
    -012        super(n, s, x, c);
    -013        format = f;
    -014        entryColor = ec;
    -015    }
    -016
    -017    @Override
    -018    public String toString() {
    -019        return entryColor.format(format, get());
    -020    }
    -021}
    +003import java.util.function.Supplier;
    +004
    +005public class StringEntry extends Entry<String> {
    +006
    +007    private String format;
    +008
    +009    public StringEntry(String n, Supplier<String> s, int x, String f) {
    +010        super(n, s, x);
    +011        format = f;
    +012    }
    +013
    +014    @Override
    +015    public String toString() {
    +016        return String.format(format, get());
    +017    }
    +018}
     
     
     
    diff --git a/docs/TechnoLib/stylesheet.css b/docs/TechnoLib/stylesheet.css
    index 236a306f..4a576bd2 100644
    --- a/docs/TechnoLib/stylesheet.css
    +++ b/docs/TechnoLib/stylesheet.css
    @@ -12,89 +12,86 @@
      */
     
     body {
    -  background-color: #ffffff;
    -  color: #353833;
    -  font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif;
    -  font-size: 14px;
    -  margin: 0;
    -  padding: 0;
    -  height: 100%;
    -  width: 100%;
    +    background-color:#ffffff;
    +    color:#353833;
    +    font-family:'DejaVu Sans', Arial, Helvetica, sans-serif;
    +    font-size:14px;
    +    margin:0;
    +    padding:0;
    +    height:100%;
    +    width:100%;
     }
     iframe {
    -  margin: 0;
    -  padding: 0;
    -  height: 100%;
    -  width: 100%;
    -  overflow-y: scroll;
    -  border: none;
    -}
    -a:link,
    -a:visited {
    -  text-decoration: none;
    -  color: #4a6782;
    -}
    -a[href]:hover,
    -a[href]:focus {
    -  text-decoration: none;
    -  color: #bb7a2a;
    +    margin:0;
    +    padding:0;
    +    height:100%;
    +    width:100%;
    +    overflow-y:scroll;
    +    border:none;
    +}
    +a:link, a:visited {
    +    text-decoration:none;
    +    color:#4A6782;
    +}
    +a[href]:hover, a[href]:focus {
    +    text-decoration:none;
    +    color:#bb7a2a;
     }
     a[name] {
    -  color: #353833;
    +    color:#353833;
     }
     pre {
    -  font-family: 'DejaVu Sans Mono', monospace;
    -  font-size: 14px;
    +    font-family:'DejaVu Sans Mono', monospace;
    +    font-size:14px;
     }
     h1 {
    -  font-size: 20px;
    +    font-size:20px;
     }
     h2 {
    -  font-size: 18px;
    +    font-size:18px;
     }
     h3 {
    -  font-size: 16px;
    +    font-size:16px;
     }
     h4 {
    -  font-size: 15px;
    +    font-size:15px;
     }
     h5 {
    -  font-size: 14px;
    +    font-size:14px;
     }
     h6 {
    -  font-size: 13px;
    +    font-size:13px;
     }
     ul {
    -  list-style-type: disc;
    +    list-style-type:disc;
     }
    -code,
    -tt {
    -  font-family: 'DejaVu Sans Mono', monospace;
    +code, tt {
    +    font-family:'DejaVu Sans Mono', monospace;
     }
     :not(h1, h2, h3, h4, h5, h6) > code,
     :not(h1, h2, h3, h4, h5, h6) > tt {
    -  font-size: 14px;
    -  padding-top: 4px;
    -  margin-top: 8px;
    -  line-height: 1.4em;
    +    font-size:14px;
    +    padding-top:4px;
    +    margin-top:8px;
    +    line-height:1.4em;
     }
     dt code {
    -  font-family: 'DejaVu Sans Mono', monospace;
    -  font-size: 14px;
    -  padding-top: 4px;
    +    font-family:'DejaVu Sans Mono', monospace;
    +    font-size:14px;
    +    padding-top:4px;
     }
     .summary-table dt code {
    -  font-family: 'DejaVu Sans Mono', monospace;
    -  font-size: 14px;
    -  vertical-align: top;
    -  padding-top: 4px;
    +    font-family:'DejaVu Sans Mono', monospace;
    +    font-size:14px;
    +    vertical-align:top;
    +    padding-top:4px;
     }
     sup {
    -  font-size: 8px;
    +    font-size:8px;
     }
     button {
    -  font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif;
    -  font-size: 14px;
    +    font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif;
    +    font-size: 14px;
     }
     /*
      * Styles for HTML generated by javadoc.
    @@ -106,654 +103,596 @@ button {
      * Styles for document title and copyright.
      */
     .clear {
    -  clear: both;
    -  height: 0;
    -  overflow: hidden;
    +    clear:both;
    +    height:0;
    +    overflow:hidden;
     }
     .about-language {
    -  float: right;
    -  padding: 0 21px 8px 8px;
    -  font-size: 11px;
    -  margin-top: -9px;
    -  height: 2.9em;
    +    float:right;
    +    padding:0 21px 8px 8px;
    +    font-size:11px;
    +    margin-top:-9px;
    +    height:2.9em;
     }
     .legal-copy {
    -  margin-left: 0.5em;
    +    margin-left:.5em;
     }
     .tab {
    -  background-color: #0066ff;
    -  color: #ffffff;
    -  padding: 8px;
    -  width: 5em;
    -  font-weight: bold;
    +    background-color:#0066FF;
    +    color:#ffffff;
    +    padding:8px;
    +    width:5em;
    +    font-weight:bold;
     }
     /*
      * Styles for navigation bar.
      */
     @media screen {
    -  .flex-box {
    -    position: fixed;
    -    display: flex;
    -    flex-direction: column;
    -    height: 100%;
    -    width: 100%;
    -  }
    -  .flex-header {
    -    flex: 0 0 auto;
    -  }
    -  .flex-content {
    -    flex: 1 1 auto;
    -    overflow-y: auto;
    -  }
    +    .flex-box {
    +        position:fixed;
    +        display:flex;
    +        flex-direction:column;
    +        height: 100%;
    +        width: 100%;
    +    }
    +    .flex-header {
    +        flex: 0 0 auto;
    +    }
    +    .flex-content {
    +        flex: 1 1 auto;
    +        overflow-y: auto;
    +    }
     }
     .top-nav {
    -  background-color: #4d7a97;
    -  color: #ffffff;
    -  float: left;
    -  padding: 0;
    -  width: 100%;
    -  clear: right;
    -  min-height: 2.8em;
    -  padding-top: 10px;
    -  overflow: hidden;
    -  font-size: 12px;
    +    background-color:#4D7A97;
    +    color:#FFFFFF;
    +    float:left;
    +    padding:0;
    +    width:100%;
    +    clear:right;
    +    min-height:2.8em;
    +    padding-top:10px;
    +    overflow:hidden;
    +    font-size:12px;
     }
     .sub-nav {
    -  background-color: #dee3e9;
    -  float: left;
    -  width: 100%;
    -  overflow: hidden;
    -  font-size: 12px;
    +    background-color:#dee3e9;
    +    float:left;
    +    width:100%;
    +    overflow:hidden;
    +    font-size:12px;
     }
     .sub-nav div {
    -  clear: left;
    -  float: left;
    -  padding: 0 0 5px 6px;
    -  text-transform: uppercase;
    +    clear:left;
    +    float:left;
    +    padding:0 0 5px 6px;
    +    text-transform:uppercase;
     }
     .sub-nav .nav-list {
    -  padding-top: 5px;
    +    padding-top:5px;
     }
     ul.nav-list {
    -  display: block;
    -  margin: 0 25px 0 0;
    -  padding: 0;
    +    display:block;
    +    margin:0 25px 0 0;
    +    padding:0;
     }
     ul.sub-nav-list {
    -  float: left;
    -  margin: 0 25px 0 0;
    -  padding: 0;
    +    float:left;
    +    margin:0 25px 0 0;
    +    padding:0;
     }
     ul.nav-list li {
    -  list-style: none;
    -  float: left;
    -  padding: 5px 6px;
    -  text-transform: uppercase;
    +    list-style:none;
    +    float:left;
    +    padding: 5px 6px;
    +    text-transform:uppercase;
     }
     .sub-nav .nav-list-search {
    -  float: right;
    -  margin: 0 0 0 0;
    -  padding: 5px 6px;
    -  clear: none;
    +    float:right;
    +    margin:0 0 0 0;
    +    padding:5px 6px;
    +    clear:none;
     }
     .nav-list-search label {
    -  position: relative;
    -  right: -16px;
    +    position:relative;
    +    right:-16px;
     }
     ul.sub-nav-list li {
    -  list-style: none;
    -  float: left;
    -  padding-top: 10px;
    +    list-style:none;
    +    float:left;
    +    padding-top:10px;
     }
    -.top-nav a:link,
    -.top-nav a:active,
    -.top-nav a:visited {
    -  color: #ffffff;
    -  text-decoration: none;
    -  text-transform: uppercase;
    +.top-nav a:link, .top-nav a:active, .top-nav a:visited {
    +    color:#FFFFFF;
    +    text-decoration:none;
    +    text-transform:uppercase;
     }
     .top-nav a:hover {
    -  text-decoration: none;
    -  color: #bb7a2a;
    -  text-transform: uppercase;
    +    text-decoration:none;
    +    color:#bb7a2a;
    +    text-transform:uppercase;
     }
     .nav-bar-cell1-rev {
    -  background-color: #f8981d;
    -  color: #253441;
    -  margin: auto 5px;
    +    background-color:#F8981D;
    +    color:#253441;
    +    margin: auto 5px;
     }
     .skip-nav {
    -  position: absolute;
    -  top: auto;
    -  left: -9999px;
    -  overflow: hidden;
    +    position:absolute;
    +    top:auto;
    +    left:-9999px;
    +    overflow:hidden;
     }
     /*
      * Hide navigation links and search box in print layout
      */
     @media print {
    -  ul.nav-list,
    -  div.sub-nav {
    -    display: none;
    -  }
    +    ul.nav-list, div.sub-nav  {
    +        display:none;
    +    }
     }
     /*
      * Styles for page header and footer.
      */
     .title {
    -  color: #2c4557;
    -  margin: 10px 0;
    +    color:#2c4557;
    +    margin:10px 0;
     }
     .sub-title {
    -  margin: 5px 0 0 0;
    +    margin:5px 0 0 0;
     }
     .header ul {
    -  margin: 0 0 15px 0;
    -  padding: 0;
    +    margin:0 0 15px 0;
    +    padding:0;
     }
    -.header ul li,
    -.footer ul li {
    -  list-style: none;
    -  font-size: 13px;
    +.header ul li, .footer ul li {
    +    list-style:none;
    +    font-size:13px;
     }
     /*
      * Styles for headings.
      */
     body.class-declaration-page .summary h2,
     body.class-declaration-page .details h2,
    -body.class-use-page h2,
    -body.module-declaration-page .block-list h2 {
    -  font-style: italic;
    -  padding: 0;
    -  margin: 15px 0;
    +body.class-use-page  h2,
    +body.module-declaration-page  .block-list h2 {
    +    font-style: italic;
    +    padding:0;
    +    margin:15px 0;
     }
     body.class-declaration-page .summary h3,
     body.class-declaration-page .details h3,
     body.class-declaration-page .summary .inherited-list h2 {
    -  background-color: #dee3e9;
    -  border: 1px solid #d0d9e0;
    -  margin: 0 0 6px -8px;
    -  padding: 7px 5px;
    +    background-color:#dee3e9;
    +    border:1px solid #d0d9e0;
    +    margin:0 0 6px -8px;
    +    padding:7px 5px;
     }
     /*
      * Styles for page layout containers.
      */
     main {
    -  clear: both;
    -  padding: 10px 20px;
    -  position: relative;
    +    clear:both;
    +    padding:10px 20px;
    +    position:relative;
     }
     dl.notes > dt {
    -  font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif;
    -  font-size: 12px;
    -  font-weight: bold;
    -  margin: 10px 0 0 0;
    -  color: #4e4e4e;
    +    font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif;
    +    font-size:12px;
    +    font-weight:bold;
    +    margin:10px 0 0 0;
    +    color:#4E4E4E;
     }
     dl.notes > dd {
    -  margin: 5px 10px 10px 0;
    -  font-size: 14px;
    -  font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif;
    +    margin:5px 10px 10px 0;
    +    font-size:14px;
    +    font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif;
     }
     dl.name-value > dt {
    -  margin-left: 1px;
    -  font-size: 1.1em;
    -  display: inline;
    -  font-weight: bold;
    +    margin-left:1px;
    +    font-size:1.1em;
    +    display:inline;
    +    font-weight:bold;
     }
     dl.name-value > dd {
    -  margin: 0 0 0 1px;
    -  font-size: 1.1em;
    -  display: inline;
    +    margin:0 0 0 1px;
    +    font-size:1.1em;
    +    display:inline;
     }
     /*
      * Styles for lists.
      */
     li.circle {
    -  list-style: circle;
    +    list-style:circle;
     }
     ul.horizontal li {
    -  display: inline;
    -  font-size: 0.9em;
    +    display:inline;
    +    font-size:0.9em;
     }
     div.inheritance {
    -  margin: 0;
    -  padding: 0;
    +    margin:0;
    +    padding:0;
     }
     div.inheritance div.inheritance {
    -  margin-left: 2em;
    +    margin-left:2em;
     }
     ul.block-list,
     ul.details-list,
     ul.member-list,
     ul.summary-list {
    -  margin: 10px 0 10px 0;
    -  padding: 0;
    +    margin:10px 0 10px 0;
    +    padding:0;
     }
     ul.block-list > li,
     ul.details-list > li,
     ul.member-list > li,
     ul.summary-list > li {
    -  list-style: none;
    -  margin-bottom: 15px;
    -  line-height: 1.4;
    +    list-style:none;
    +    margin-bottom:15px;
    +    line-height:1.4;
     }
    -.summary-table dl,
    -.summary-table dl dt,
    -.summary-table dl dd {
    -  margin-top: 0;
    -  margin-bottom: 1px;
    +.summary-table dl, .summary-table dl dt, .summary-table dl dd {
    +    margin-top:0;
    +    margin-bottom:1px;
     }
    -ul.see-list,
    -ul.see-list-long {
    -  padding-left: 0;
    -  list-style: none;
    +ul.see-list, ul.see-list-long {
    +    padding-left: 0;
    +    list-style: none;
     }
     ul.see-list li {
    -  display: inline;
    +    display: inline;
     }
     ul.see-list li:not(:last-child):after,
     ul.see-list-long li:not(:last-child):after {
    -  content: ', ';
    -  white-space: pre-wrap;
    +    content: ", ";
    +    white-space: pre-wrap;
     }
     /*
      * Styles for tables.
      */
    -.summary-table,
    -.details-table {
    -  width: 100%;
    -  border-spacing: 0;
    -  border-left: 1px solid #eee;
    -  border-right: 1px solid #eee;
    -  border-bottom: 1px solid #eee;
    -  padding: 0;
    +.summary-table, .details-table {
    +    width:100%;
    +    border-spacing:0;
    +    border-left:1px solid #EEE;
    +    border-right:1px solid #EEE;
    +    border-bottom:1px solid #EEE;
    +    padding:0;
     }
     .caption {
    -  position: relative;
    -  text-align: left;
    -  background-repeat: no-repeat;
    -  color: #253441;
    -  font-weight: bold;
    -  clear: none;
    -  overflow: hidden;
    -  padding: 0;
    -  padding-top: 10px;
    -  padding-left: 1px;
    -  margin: 0;
    -  white-space: pre;
    -}
    -.caption a:link,
    -.caption a:visited {
    -  color: #1f389c;
    +    position:relative;
    +    text-align:left;
    +    background-repeat:no-repeat;
    +    color:#253441;
    +    font-weight:bold;
    +    clear:none;
    +    overflow:hidden;
    +    padding:0;
    +    padding-top:10px;
    +    padding-left:1px;
    +    margin:0;
    +    white-space:pre;
    +}
    +.caption a:link, .caption a:visited {
    +    color:#1f389c;
     }
     .caption a:hover,
     .caption a:active {
    -  color: #ffffff;
    +    color:#FFFFFF;
     }
     .caption span {
    -  white-space: nowrap;
    -  padding-top: 5px;
    -  padding-left: 12px;
    -  padding-right: 12px;
    -  padding-bottom: 7px;
    -  display: inline-block;
    -  float: left;
    -  background-color: #f8981d;
    -  border: none;
    -  height: 16px;
    +    white-space:nowrap;
    +    padding-top:5px;
    +    padding-left:12px;
    +    padding-right:12px;
    +    padding-bottom:7px;
    +    display:inline-block;
    +    float:left;
    +    background-color:#F8981D;
    +    border: none;
    +    height:16px;
     }
     div.table-tabs {
    -  padding: 10px 0 0 1px;
    -  margin: 0;
    +    padding:10px 0 0 1px;
    +    margin:0;
     }
     div.table-tabs > button {
    -  border: none;
    -  cursor: pointer;
    -  padding: 5px 12px 7px 12px;
    -  font-weight: bold;
    -  margin-right: 3px;
    +   border: none;
    +   cursor: pointer;
    +   padding: 5px 12px 7px 12px;
    +   font-weight: bold;
    +   margin-right: 3px;
     }
     div.table-tabs > button.active-table-tab {
    -  background: #f8981d;
    -  color: #253441;
    +   background: #F8981D;
    +   color: #253441;
     }
     div.table-tabs > button.table-tab {
    -  background: #4d7a97;
    -  color: #ffffff;
    +   background: #4D7A97;
    +   color: #FFFFFF;
     }
     .two-column-summary {
    -  display: grid;
    -  grid-template-columns: minmax(15%, max-content) minmax(15%, auto);
    +    display: grid;
    +    grid-template-columns: minmax(15%, max-content) minmax(15%, auto);
     }
     .three-column-summary {
    -  display: grid;
    -  grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto);
    +    display: grid;
    +    grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto);
     }
     .four-column-summary {
    -  display: grid;
    -  grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax(
    -      10%,
    -      auto
    -    );
    +    display: grid;
    +    grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax(10%, auto);
     }
     @media screen and (max-width: 600px) {
    -  .two-column-summary {
    -    display: grid;
    -    grid-template-columns: 1fr;
    -  }
    +    .two-column-summary {
    +        display: grid;
    +        grid-template-columns: 1fr;
    +    }
     }
     @media screen and (max-width: 800px) {
    -  .three-column-summary {
    -    display: grid;
    -    grid-template-columns: minmax(10%, max-content) minmax(25%, auto);
    -  }
    -  .three-column-summary .col-last {
    -    grid-column-end: span 2;
    -  }
    +    .three-column-summary {
    +        display: grid;
    +        grid-template-columns: minmax(10%, max-content) minmax(25%, auto);
    +    }
    +    .three-column-summary .col-last {
    +        grid-column-end: span 2;
    +    }
     }
     @media screen and (max-width: 1000px) {
    -  .four-column-summary {
    -    display: grid;
    -    grid-template-columns: minmax(15%, max-content) minmax(15%, auto);
    -  }
    -}
    -.summary-table > div,
    -.details-table > div {
    -  text-align: left;
    -  padding: 8px 3px 3px 7px;
    -}
    -.col-first,
    -.col-second,
    -.col-last,
    -.col-constructor-name,
    -.col-summary-item-name {
    -  vertical-align: top;
    -  padding-right: 0;
    -  padding-top: 8px;
    -  padding-bottom: 3px;
    +    .four-column-summary {
    +        display: grid;
    +        grid-template-columns: minmax(15%, max-content) minmax(15%, auto);
    +    }
    +}
    +.summary-table > div, .details-table > div {
    +    text-align:left;
    +    padding: 8px 3px 3px 7px;
    +}
    +.col-first, .col-second, .col-last, .col-constructor-name, .col-summary-item-name {
    +    vertical-align:top;
    +    padding-right:0;
    +    padding-top:8px;
    +    padding-bottom:3px;
     }
     .table-header {
    -  background: #dee3e9;
    -  font-weight: bold;
    -}
    -.col-first,
    -.col-first {
    -  font-size: 13px;
    -}
    -.col-second,
    -.col-second,
    -.col-last,
    -.col-constructor-name,
    -.col-summary-item-name,
    -.col-last {
    -  font-size: 13px;
    +    background:#dee3e9;
    +    font-weight: bold;
     }
    -.col-first,
    -.col-second,
    -.col-constructor-name {
    -  vertical-align: top;
    -  overflow: auto;
    +.col-first, .col-first {
    +    font-size:13px;
    +}
    +.col-second, .col-second, .col-last, .col-constructor-name, .col-summary-item-name, .col-last {
    +    font-size:13px;
    +}
    +.col-first, .col-second, .col-constructor-name {
    +    vertical-align:top;
    +    overflow: auto;
     }
     .col-last {
    -  white-space: normal;
    -}
    -.col-first a:link,
    -.col-first a:visited,
    -.col-second a:link,
    -.col-second a:visited,
    -.col-first a:link,
    -.col-first a:visited,
    -.col-second a:link,
    -.col-second a:visited,
    -.col-constructor-name a:link,
    -.col-constructor-name a:visited,
    -.col-summary-item-name a:link,
    -.col-summary-item-name a:visited,
    -.constant-values-container a:link,
    -.constant-values-container a:visited,
    -.all-classes-container a:link,
    -.all-classes-container a:visited,
    -.all-packages-container a:link,
    -.all-packages-container a:visited {
    -  font-weight: bold;
    +    white-space:normal;
    +}
    +.col-first a:link, .col-first a:visited,
    +.col-second a:link, .col-second a:visited,
    +.col-first a:link, .col-first a:visited,
    +.col-second a:link, .col-second a:visited,
    +.col-constructor-name a:link, .col-constructor-name a:visited,
    +.col-summary-item-name a:link, .col-summary-item-name a:visited,
    +.constant-values-container a:link, .constant-values-container a:visited,
    +.all-classes-container a:link, .all-classes-container a:visited,
    +.all-packages-container a:link, .all-packages-container a:visited {
    +    font-weight:bold;
     }
     .table-sub-heading-color {
    -  background-color: #eeeeff;
    +    background-color:#EEEEFF;
     }
    -.even-row-color,
    -.even-row-color .table-header {
    -  background-color: #ffffff;
    +.even-row-color, .even-row-color .table-header {
    +    background-color:#FFFFFF;
     }
    -.odd-row-color,
    -.odd-row-color .table-header {
    -  background-color: #eeeeef;
    +.odd-row-color, .odd-row-color .table-header {
    +    background-color:#EEEEEF;
     }
     /*
      * Styles for contents.
      */
     .deprecated-content {
    -  margin: 0;
    -  padding: 10px 0;
    +    margin:0;
    +    padding:10px 0;
     }
     div.block {
    -  font-size: 14px;
    -  font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif;
    +    font-size:14px;
    +    font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif;
     }
     .col-last div {
    -  padding-top: 0;
    +    padding-top:0;
     }
     .col-last a {
    -  padding-bottom: 3px;
    +    padding-bottom:3px;
     }
     .module-signature,
     .package-signature,
     .type-signature,
     .member-signature {
    -  font-family: 'DejaVu Sans Mono', monospace;
    -  font-size: 14px;
    -  margin: 14px 0;
    -  white-space: pre-wrap;
    +    font-family:'DejaVu Sans Mono', monospace;
    +    font-size:14px;
    +    margin:14px 0;
    +    white-space: pre-wrap;
     }
     .module-signature,
     .package-signature,
     .type-signature {
    -  margin-top: 0;
    +    margin-top: 0;
     }
     .member-signature .type-parameters-long,
     .member-signature .parameters,
     .member-signature .exceptions {
    -  display: inline-block;
    -  vertical-align: top;
    -  white-space: pre;
    +    display: inline-block;
    +    vertical-align: top;
    +    white-space: pre;
     }
     .member-signature .type-parameters {
    -  white-space: normal;
    +    white-space: normal;
     }
     /*
      * Styles for formatting effect.
      */
     .source-line-no {
    -  color: green;
    -  padding: 0 30px 0 0;
    +    color:green;
    +    padding:0 30px 0 0;
     }
     h1.hidden {
    -  visibility: hidden;
    -  overflow: hidden;
    -  font-size: 10px;
    +    visibility:hidden;
    +    overflow:hidden;
    +    font-size:10px;
     }
     .block {
    -  display: block;
    -  margin: 0 10px 5px 0;
    -  color: #474747;
    -}
    -.deprecated-label,
    -.descfrm-type-label,
    -.implementation-label,
    -.member-name-label,
    -.member-name-link,
    -.module-label-in-package,
    -.module-label-in-type,
    -.override-specify-label,
    -.package-label-in-type,
    -.package-hierarchy-label,
    -.type-name-label,
    -.type-name-link,
    -.search-tag-link,
    -.preview-label {
    -  font-weight: bold;
    -}
    -.deprecation-comment,
    -.help-footnote,
    -.preview-comment {
    -  font-style: italic;
    +    display:block;
    +    margin:0 10px 5px 0;
    +    color:#474747;
    +}
    +.deprecated-label, .descfrm-type-label, .implementation-label, .member-name-label, .member-name-link,
    +.module-label-in-package, .module-label-in-type, .override-specify-label, .package-label-in-type,
    +.package-hierarchy-label, .type-name-label, .type-name-link, .search-tag-link, .preview-label {
    +    font-weight:bold;
    +}
    +.deprecation-comment, .help-footnote, .preview-comment {
    +    font-style:italic;
     }
     .deprecation-block {
    -  font-size: 14px;
    -  font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif;
    -  border-style: solid;
    -  border-width: thin;
    -  border-radius: 10px;
    -  padding: 10px;
    -  margin-bottom: 10px;
    -  margin-right: 10px;
    -  display: inline-block;
    +    font-size:14px;
    +    font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif;
    +    border-style:solid;
    +    border-width:thin;
    +    border-radius:10px;
    +    padding:10px;
    +    margin-bottom:10px;
    +    margin-right:10px;
    +    display:inline-block;
     }
     .preview-block {
    -  font-size: 14px;
    -  font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif;
    -  border-style: solid;
    -  border-width: thin;
    -  border-radius: 10px;
    -  padding: 10px;
    -  margin-bottom: 10px;
    -  margin-right: 10px;
    -  display: inline-block;
    +    font-size:14px;
    +    font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif;
    +    border-style:solid;
    +    border-width:thin;
    +    border-radius:10px;
    +    padding:10px;
    +    margin-bottom:10px;
    +    margin-right:10px;
    +    display:inline-block;
     }
     div.block div.deprecation-comment {
    -  font-style: normal;
    +    font-style:normal;
     }
     /*
      * Styles specific to HTML5 elements.
      */
    -main,
    -nav,
    -header,
    -footer,
    -section {
    -  display: block;
    +main, nav, header, footer, section {
    +    display:block;
     }
     /*
      * Styles for javadoc search.
      */
     .ui-autocomplete-category {
    -  font-weight: bold;
    -  font-size: 15px;
    -  padding: 7px 0 7px 3px;
    -  background-color: #4d7a97;
    -  color: #ffffff;
    +    font-weight:bold;
    +    font-size:15px;
    +    padding:7px 0 7px 3px;
    +    background-color:#4D7A97;
    +    color:#FFFFFF;
     }
     .result-item {
    -  font-size: 13px;
    +    font-size:13px;
     }
     .ui-autocomplete {
    -  max-height: 85%;
    -  max-width: 65%;
    -  overflow-y: scroll;
    -  overflow-x: scroll;
    -  white-space: nowrap;
    -  box-shadow:
    -    0 3px 6px rgba(0, 0, 0, 0.16),
    -    0 3px 6px rgba(0, 0, 0, 0.23);
    +    max-height:85%;
    +    max-width:65%;
    +    overflow-y:scroll;
    +    overflow-x:scroll;
    +    white-space:nowrap;
    +    box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
     }
     ul.ui-autocomplete {
    -  position: fixed;
    -  z-index: 999999;
    -  background-color: #ffffff;
    +    position:fixed;
    +    z-index:999999;
    +    background-color: #FFFFFF;
     }
    -ul.ui-autocomplete li {
    -  float: left;
    -  clear: both;
    -  width: 100%;
    +ul.ui-autocomplete  li {
    +    float:left;
    +    clear:both;
    +    width:100%;
     }
     .result-highlight {
    -  font-weight: bold;
    +    font-weight:bold;
     }
     .ui-autocomplete .result-item {
    -  font-size: inherit;
    +    font-size: inherit;
     }
     #search-input {
    -  background-image: url('resources/glass.png');
    -  background-size: 13px;
    -  background-repeat: no-repeat;
    -  background-position: 2px 3px;
    -  padding-left: 20px;
    -  position: relative;
    -  right: -18px;
    -  width: 400px;
    +    background-image:url('resources/glass.png');
    +    background-size:13px;
    +    background-repeat:no-repeat;
    +    background-position:2px 3px;
    +    padding-left:20px;
    +    position:relative;
    +    right:-18px;
    +    width:400px;
     }
     #reset-button {
    -  background-color: rgb(255, 255, 255);
    -  background-image: url('resources/x.png');
    -  background-position: center;
    -  background-repeat: no-repeat;
    -  background-size: 12px;
    -  border: 0 none;
    -  width: 16px;
    -  height: 16px;
    -  position: relative;
    -  left: -4px;
    -  top: -4px;
    -  font-size: 0px;
    +    background-color: rgb(255,255,255);
    +    background-image:url('resources/x.png');
    +    background-position:center;
    +    background-repeat:no-repeat;
    +    background-size:12px;
    +    border:0 none;
    +    width:16px;
    +    height:16px;
    +    position:relative;
    +    left:-4px;
    +    top:-4px;
    +    font-size:0px;
     }
     .watermark {
    -  color: #545454;
    +    color:#545454;
     }
     .search-tag-desc-result {
    -  font-style: italic;
    -  font-size: 11px;
    +    font-style:italic;
    +    font-size:11px;
     }
     .search-tag-holder-result {
    -  font-style: italic;
    -  font-size: 12px;
    +    font-style:italic;
    +    font-size:12px;
     }
     .search-tag-result:target {
    -  background-color: yellow;
    +    background-color:yellow;
     }
     .module-graph span {
    -  display: none;
    -  position: absolute;
    +    display:none;
    +    position:absolute;
     }
     .module-graph:hover span {
    -  display: block;
    -  margin: -100px 0 0 100px;
    -  z-index: 1;
    +    display:block;
    +    margin: -100px 0 0 100px;
    +    z-index: 1;
     }
     .inherited-list {
    -  margin: 10px 0 10px 0;
    +    margin: 10px 0 10px 0;
     }
     section.class-description {
    -  line-height: 1.4;
    -}
    -.summary section[class$='-summary'],
    -.details section[class$='-details'],
    -.class-uses .detail,
    -.serialized-class-details {
    -  padding: 0px 20px 5px 10px;
    -  border: 1px solid #ededed;
    -  background-color: #f8f8f8;
    -}
    -.inherited-list,
    -section[class$='-details'] .detail {
    -  padding: 0 0 5px 8px;
    -  background-color: #ffffff;
    -  border: none;
    +    line-height: 1.4;
    +}
    +.summary section[class$="-summary"], .details section[class$="-details"],
    +.class-uses .detail, .serialized-class-details {
    +    padding: 0px 20px 5px 10px;
    +    border: 1px solid #ededed;
    +    background-color: #f8f8f8;
    +}
    +.inherited-list, section[class$="-details"] .detail {
    +    padding:0 0 5px 8px;
    +    background-color:#ffffff;
    +    border:none;
     }
     .vertical-separator {
    -  padding: 0 5px;
    +    padding: 0 5px;
     }
     ul.help-section-list {
    -  margin: 0;
    +    margin: 0;
     }
     ul.help-subtoc > li {
       display: inline-block;
    @@ -761,34 +700,32 @@ ul.help-subtoc > li {
       font-size: smaller;
     }
     ul.help-subtoc > li::before {
    -  content: '\2022';
    -  padding-right: 2px;
    +  content: "\2022" ;
    +  padding-right:2px;
     }
     span.help-note {
    -  font-style: italic;
    +    font-style: italic;
     }
     /*
      * Indicator icon for external links.
      */
    -main a[href*="://"]::after
    -{
    -  content: '';
    -  display: inline-block;
    -  background-image: url('data:image/svg+xml; utf8, \
    +main a[href*="://"]::after {
    +    content:"";
    +    display:inline-block;
    +    background-image:url('data:image/svg+xml; utf8, \
           \
             \
           ');
    -  background-size: 100% 100%;
    -  width: 7px;
    -  height: 7px;
    -  margin-left: 2px;
    -  margin-bottom: 4px;
    +    background-size:100% 100%;
    +    width:7px;
    +    height:7px;
    +    margin-left:2px;
    +    margin-bottom:4px;
     }
     main a[href*="://"]:hover::after,
    -main a[href*="://"]:focus::after
    -{
    -  background-image: url('data:image/svg+xml; utf8, \
    +main a[href*="://"]:focus::after {
    +    background-image:url('data:image/svg+xml; utf8, \
           \
             \
    @@ -817,135 +754,116 @@ main a[href*="://"]:focus::after
     table.borderless,
     table.plain,
     table.striped {
    -  margin-top: 10px;
    -  margin-bottom: 10px;
    +    margin-top: 10px;
    +    margin-bottom: 10px;
     }
     table.borderless > caption,
     table.plain > caption,
     table.striped > caption {
    -  font-weight: bold;
    -  font-size: smaller;
    +    font-weight: bold;
    +    font-size: smaller;
     }
    -table.borderless th,
    -table.borderless td,
    -table.plain th,
    -table.plain td,
    -table.striped th,
    -table.striped td {
    -  padding: 2px 5px;
    +table.borderless th, table.borderless td,
    +table.plain th, table.plain td,
    +table.striped th, table.striped td {
    +    padding: 2px 5px;
     }
     table.borderless,
    -table.borderless > thead > tr > th,
    -table.borderless > tbody > tr > th,
    -table.borderless > tr > th,
    -table.borderless > thead > tr > td,
    -table.borderless > tbody > tr > td,
    -table.borderless > tr > td {
    -  border: none;
    -}
    -table.borderless > thead > tr,
    -table.borderless > tbody > tr,
    -table.borderless > tr {
    -  background-color: transparent;
    +table.borderless > thead > tr > th, table.borderless > tbody > tr > th, table.borderless > tr > th,
    +table.borderless > thead > tr > td, table.borderless > tbody > tr > td, table.borderless > tr > td {
    +    border: none;
    +}
    +table.borderless > thead > tr, table.borderless > tbody > tr, table.borderless > tr {
    +    background-color: transparent;
     }
     table.plain {
    -  border-collapse: collapse;
    -  border: 1px solid black;
    -}
    -table.plain > thead > tr,
    -table.plain > tbody tr,
    -table.plain > tr {
    -  background-color: transparent;
    -}
    -table.plain > thead > tr > th,
    -table.plain > tbody > tr > th,
    -table.plain > tr > th,
    -table.plain > thead > tr > td,
    -table.plain > tbody > tr > td,
    -table.plain > tr > td {
    -  border: 1px solid black;
    +    border-collapse: collapse;
    +    border: 1px solid black;
    +}
    +table.plain > thead > tr, table.plain > tbody tr, table.plain > tr {
    +    background-color: transparent;
    +}
    +table.plain > thead > tr > th, table.plain > tbody > tr > th, table.plain > tr > th,
    +table.plain > thead > tr > td, table.plain > tbody > tr > td, table.plain > tr > td {
    +    border: 1px solid black;
     }
     table.striped {
    -  border-collapse: collapse;
    -  border: 1px solid black;
    +    border-collapse: collapse;
    +    border: 1px solid black;
     }
     table.striped > thead {
    -  background-color: #e3e3e3;
    +    background-color: #E3E3E3;
     }
    -table.striped > thead > tr > th,
    -table.striped > thead > tr > td {
    -  border: 1px solid black;
    +table.striped > thead > tr > th, table.striped > thead > tr > td {
    +    border: 1px solid black;
     }
     table.striped > tbody > tr:nth-child(even) {
    -  background-color: #eee;
    +    background-color: #EEE
     }
     table.striped > tbody > tr:nth-child(odd) {
    -  background-color: #fff;
    +    background-color: #FFF
     }
    -table.striped > tbody > tr > th,
    -table.striped > tbody > tr > td {
    -  border-left: 1px solid black;
    -  border-right: 1px solid black;
    +table.striped > tbody > tr > th, table.striped > tbody > tr > td {
    +    border-left: 1px solid black;
    +    border-right: 1px solid black;
     }
     table.striped > tbody > tr > th {
    -  font-weight: normal;
    +    font-weight: normal;
     }
     /**
      * Tweak font sizes and paddings for small screens.
      */
     @media screen and (max-width: 1050px) {
    -  #search-input {
    -    width: 300px;
    -  }
    +    #search-input {
    +        width: 300px;
    +    }
     }
     @media screen and (max-width: 800px) {
    -  #search-input {
    -    width: 200px;
    -  }
    -  .top-nav,
    -  .bottom-nav {
    -    font-size: 11px;
    -    padding-top: 6px;
    -  }
    -  .sub-nav {
    -    font-size: 11px;
    -  }
    -  .about-language {
    -    padding-right: 16px;
    -  }
    -  ul.nav-list li,
    -  .sub-nav .nav-list-search {
    -    padding: 6px;
    -  }
    -  ul.sub-nav-list li {
    -    padding-top: 5px;
    -  }
    -  main {
    -    padding: 10px;
    -  }
    -  .summary section[class$='-summary'],
    -  .details section[class$='-details'],
    -  .class-uses .detail,
    -  .serialized-class-details {
    -    padding: 0 8px 5px 8px;
    -  }
    -  body {
    -    -webkit-text-size-adjust: none;
    -  }
    +    #search-input {
    +        width: 200px;
    +    }
    +    .top-nav,
    +    .bottom-nav {
    +        font-size: 11px;
    +        padding-top: 6px;
    +    }
    +    .sub-nav {
    +        font-size: 11px;
    +    }
    +    .about-language {
    +        padding-right: 16px;
    +    }
    +    ul.nav-list li,
    +    .sub-nav .nav-list-search {
    +        padding: 6px;
    +    }
    +    ul.sub-nav-list li {
    +        padding-top: 5px;
    +    }
    +    main {
    +        padding: 10px;
    +    }
    +    .summary section[class$="-summary"], .details section[class$="-details"],
    +    .class-uses .detail, .serialized-class-details {
    +        padding: 0 8px 5px 8px;
    +    }
    +    body {
    +        -webkit-text-size-adjust: none;
    +    }
     }
     @media screen and (max-width: 500px) {
    -  #search-input {
    -    width: 150px;
    -  }
    -  .top-nav,
    -  .bottom-nav {
    -    font-size: 10px;
    -  }
    -  .sub-nav {
    -    font-size: 10px;
    -  }
    -  .about-language {
    -    font-size: 10px;
    -    padding-right: 12px;
    -  }
    +    #search-input {
    +        width: 150px;
    +    }
    +    .top-nav,
    +    .bottom-nav {
    +        font-size: 10px;
    +    }
    +    .sub-nav {
    +        font-size: 10px;
    +    }
    +    .about-language {
    +        font-size: 10px;
    +        padding-right: 12px;
    +    }
     }
    diff --git a/docs/TechnoLib/tag-search-index.js b/docs/TechnoLib/tag-search-index.js
    index c559e8b6..f2a440c7 100644
    --- a/docs/TechnoLib/tag-search-index.js
    +++ b/docs/TechnoLib/tag-search-index.js
    @@ -1,2 +1 @@
    -tagSearchIndex = [{ l: 'Constant Field Values', h: '', u: 'constant-values.html' }];
    -updateSearchResults();
    +tagSearchIndex = [{"l":"Constant Field Values","h":"","u":"constant-values.html"}];updateSearchResults();
    \ No newline at end of file
    diff --git a/docs/TechnoLib/type-search-index.js b/docs/TechnoLib/type-search-index.js
    index c88a966d..bfa37814 100644
    --- a/docs/TechnoLib/type-search-index.js
    +++ b/docs/TechnoLib/type-search-index.js
    @@ -1,118 +1 @@
    -typeSearchIndex = [
    -  { l: 'All Classes and Interfaces', u: 'allclasses-index.html' },
    -  { p: 'com.technototes.library.util', l: 'Alliance' },
    -  { p: 'com.technototes.library.hardware2', l: 'AnalogBuilder' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'AnalogSensor' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'IMU.AxesSigns' },
    -  { p: 'com.technototes.library.hardware2', l: 'IMUBuilder.AxesSigns' },
    -  { p: 'com.technototes.library.control', l: 'GamepadBase.Axis' },
    -  { p: 'com.technototes.library.control', l: 'AxisBase' },
    -  { p: 'com.technototes.library.control', l: 'Binding' },
    -  { p: 'com.technototes.library.logger', l: 'LogConfig.Blacklist' },
    -  { p: 'com.technototes.library.util', l: 'Alliance.Blue' },
    -  { p: 'com.technototes.library.logger', l: 'Log.Boolean' },
    -  { p: 'com.technototes.library.logger.entry', l: 'BooleanEntry' },
    -  { p: 'com.technototes.library.control', l: 'GamepadBase.Button' },
    -  { p: 'com.technototes.library.control', l: 'ButtonBase' },
    -  { p: 'com.technototes.library.util', l: 'Characters' },
    -  { p: 'com.technototes.library.command', l: 'ChoiceCommand' },
    -  { p: 'com.technototes.library.util', l: 'Color' },
    -  { p: 'com.technototes.library.hardware2', l: 'ColorBuilder' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'ColorDistanceSensor' },
    -  { p: 'com.technototes.library.hardware2', l: 'ColorRangeBuilder' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'ColorSensor' },
    -  { p: 'com.technototes.library.command', l: 'Command' },
    -  { p: 'com.technototes.library.control', l: 'CommandAxis' },
    -  { p: 'com.technototes.library.command', l: 'CommandBase' },
    -  { p: 'com.technototes.library.control', l: 'CommandBinding' },
    -  { p: 'com.technototes.library.control', l: 'CommandButton' },
    -  { p: 'com.technototes.library.control', l: 'CommandGamepad' },
    -  { p: 'com.technototes.library.command', l: 'CommandGroup' },
    -  { p: 'com.technototes.library.control', l: 'CommandInput' },
    -  { p: 'com.technototes.library.structure', l: 'CommandOpMode' },
    -  { p: 'com.technototes.library.command', l: 'CommandScheduler' },
    -  { p: 'com.technototes.library.command', l: 'Command.CommandState' },
    -  { p: 'com.technototes.library.command', l: 'ConditionalCommand' },
    -  { p: 'com.technototes.library.hardware.servo', l: 'ServoProfiler.Constraints' },
    -  { p: 'com.technototes.library.hardware2', l: 'CRServoBuilder' },
    -  { p: 'com.technototes.library.subsystem', l: 'DeviceSubsystem' },
    -  { p: 'com.technototes.library.util', l: 'Differential' },
    -  { p: 'com.technototes.library.util', l: 'Differential.DifferentialPriority' },
    -  { p: 'com.technototes.library.hardware2', l: 'DigitalBuilder' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'DigitalSensor' },
    -  { p: 'com.technototes.library.hardware.sensor.encoder', l: 'MotorEncoder.Direction' },
    -  { p: 'com.technototes.library.logger', l: 'LogConfig.Disabled' },
    -  { p: 'com.technototes.library.hardware2', l: 'DistanceBuilder' },
    -  { p: 'com.technototes.library.subsystem.drivebase', l: 'DrivebaseSubsystem' },
    -  { p: 'com.technototes.library.hardware', l: 'DummyDevice' },
    -  { p: 'com.technototes.library.general', l: 'Enablable' },
    -  { p: 'com.technototes.library.hardware.motor', l: 'EncodedMotor' },
    -  { p: 'com.technototes.library.hardware.motor', l: 'EncodedMotorGroup' },
    -  { p: 'com.technototes.library.subsystem.motor', l: 'EncodedMotorSubsystem' },
    -  { p: 'com.technototes.library.hardware.sensor.encoder', l: 'Encoder' },
    -  { p: 'com.technototes.library.logger.entry', l: 'Entry' },
    -  { p: 'com.technototes.library.hardware.sensor.encoder', l: 'ExternalEncoder' },
    -  { p: 'com.technototes.library.control', l: 'GamepadBase' },
    -  { p: 'com.technototes.library.control', l: 'GamepadDpad' },
    -  { p: 'com.technototes.library.control', l: 'GamepadStick' },
    -  { p: 'com.technototes.library.hardware2', l: 'HardwareBuilder' },
    -  { p: 'com.technototes.library.hardware', l: 'HardwareDevice' },
    -  { p: 'com.technototes.library.hardware', l: 'HardwareDeviceGroup' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'IColorSensor' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'IDistanceSensor' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'IGyro' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'ILightSensor' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'IMU' },
    -  { p: 'com.technototes.library.hardware2', l: 'IMUBuilder' },
    -  { p: 'com.technototes.library.util', l: 'Integral' },
    -  { p: 'com.technototes.library.general', l: 'Invertable' },
    -  { p: 'com.technototes.library.command', l: 'IterativeCommand' },
    -  { p: 'com.technototes.library.logger', l: 'Log' },
    -  { p: 'com.technototes.library.logger', l: 'LogConfig' },
    -  { p: 'com.technototes.library.logger', l: 'Loggable' },
    -  { p: 'com.technototes.library.logger', l: 'Logger' },
    -  { p: 'com.technototes.library.logger', l: 'Log.Logs' },
    -  { p: 'com.technototes.library.util', l: 'MapUtils' },
    -  { p: 'com.technototes.library.util', l: 'MathUtils' },
    -  { p: 'com.technototes.library.hardware.motor', l: 'Motor' },
    -  { p: 'com.technototes.library.hardware2', l: 'MotorBuilder' },
    -  { p: 'com.technototes.library.hardware.sensor.encoder', l: 'MotorEncoder' },
    -  { p: 'com.technototes.library.hardware.motor', l: 'MotorGroup' },
    -  { p: 'com.technototes.library.subsystem.motor', l: 'MotorSubsystem' },
    -  { p: 'com.technototes.library.logger', l: 'Log.Number' },
    -  { p: 'com.technototes.library.logger', l: 'Log.NumberBar' },
    -  { p: 'com.technototes.library.logger.entry', l: 'NumberBarEntry' },
    -  { p: 'com.technototes.library.logger.entry', l: 'NumberEntry' },
    -  { p: 'com.technototes.library.logger', l: 'Log.NumberSlider' },
    -  { p: 'com.technototes.library.logger.entry', l: 'NumberSliderEntry' },
    -  { p: 'com.technototes.library.structure', l: 'CommandOpMode.OpModeState' },
    -  { p: 'com.technototes.library.command', l: 'ParallelCommandGroup' },
    -  { p: 'com.technototes.library.command', l: 'ParallelDeadlineGroup' },
    -  { p: 'com.technototes.library.command', l: 'ParallelRaceGroup' },
    -  { p: 'com.technototes.library.general', l: 'Periodic' },
    -  { p: 'com.technototes.library.util', l: 'Range' },
    -  { p: 'com.technototes.library.util', l: 'Alliance.Red' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'Rev2MDistanceSensor' },
    -  { p: 'com.technototes.library', l: 'RobotLibrary' },
    -  { p: 'com.technototes.library.logger', l: 'LogConfig.Run' },
    -  { p: 'com.technototes.library.util', l: 'Alliance.Selector' },
    -  { p: 'com.technototes.library.hardware.sensor', l: 'Sensor' },
    -  { p: 'com.technototes.library.hardware', l: 'Sensored' },
    -  { p: 'com.technototes.library.command', l: 'SequentialCommandGroup' },
    -  { p: 'com.technototes.library.hardware.servo', l: 'Servo' },
    -  { p: 'com.technototes.library.hardware2', l: 'ServoBuilder' },
    -  { p: 'com.technototes.library.hardware.servo', l: 'ServoGroup' },
    -  { p: 'com.technototes.library.hardware.servo', l: 'ServoProfiler' },
    -  { p: 'com.technototes.library.subsystem.servo', l: 'ServoSubsystem' },
    -  { p: 'com.technototes.library.subsystem.drivebase', l: 'SimpleMecanumDrivebaseSubsystem' },
    -  { p: 'com.technototes.library.util', l: 'SmartConsumer' },
    -  { p: 'com.technototes.library.hardware', l: 'Speaker' },
    -  { p: 'com.technototes.library.control', l: 'Stick' },
    -  { p: 'com.technototes.library.logger.entry', l: 'StringEntry' },
    -  { p: 'com.technototes.library.subsystem', l: 'Subsystem' },
    -  { p: 'com.technototes.library.subsystem.drivebase', l: 'TankDrivebaseSubsystem' },
    -  { p: 'com.technototes.library.control', l: 'Binding.Type' },
    -  { p: 'com.technototes.library.command', l: 'WaitCommand' },
    -  { p: 'com.technototes.library.logger', l: 'LogConfig.Whitelist' },
    -];
    -updateSearchResults();
    +typeSearchIndex = [{"l":"All Classes and Interfaces","u":"allclasses-index.html"},{"p":"com.technototes.library.util","l":"Alliance"},{"p":"com.technototes.library.logger","l":"LogConfig.AllowList"},{"p":"com.technototes.library.hardware2","l":"AnalogBuilder"},{"p":"com.technototes.library.hardware.sensor","l":"AnalogSensor"},{"p":"com.technototes.library.hardware.sensor","l":"IMU.AxesSigns"},{"p":"com.technototes.library.hardware2","l":"IMUBuilder.AxesSigns"},{"p":"com.technototes.library.control","l":"GamepadBase.Axis"},{"p":"com.technototes.library.control","l":"AxisBase"},{"p":"com.technototes.library.control","l":"Binding"},{"p":"com.technototes.library.util","l":"Alliance.Blue"},{"p":"com.technototes.library.logger","l":"Log.Boolean"},{"p":"com.technototes.library.logger.entry","l":"BooleanEntry"},{"p":"com.technototes.library.control","l":"GamepadBase.Button"},{"p":"com.technototes.library.control","l":"ButtonBase"},{"p":"com.technototes.library.util","l":"Characters"},{"p":"com.technototes.library.command","l":"ChoiceCommand"},{"p":"com.technototes.library.util","l":"Color"},{"p":"com.technototes.library.hardware2","l":"ColorBuilder"},{"p":"com.technototes.library.hardware.sensor","l":"ColorDistanceSensor"},{"p":"com.technototes.library.hardware2","l":"ColorRangeBuilder"},{"p":"com.technototes.library.hardware.sensor","l":"ColorSensor"},{"p":"com.technototes.library.command","l":"Command"},{"p":"com.technototes.library.control","l":"CommandAxis"},{"p":"com.technototes.library.command","l":"CommandBase"},{"p":"com.technototes.library.control","l":"CommandBinding"},{"p":"com.technototes.library.control","l":"CommandButton"},{"p":"com.technototes.library.control","l":"CommandGamepad"},{"p":"com.technototes.library.command","l":"CommandGroup"},{"p":"com.technototes.library.control","l":"CommandInput"},{"p":"com.technototes.library.structure","l":"CommandOpMode"},{"p":"com.technototes.library.command","l":"CommandScheduler"},{"p":"com.technototes.library.command","l":"Command.CommandState"},{"p":"com.technototes.library.command","l":"ConditionalCommand"},{"p":"com.technototes.library.hardware.servo","l":"ServoProfiler.Constraints"},{"p":"com.technototes.library.hardware2","l":"CRServoBuilder"},{"p":"com.technototes.library.logger","l":"LogConfig.DenyList"},{"p":"com.technototes.library.subsystem","l":"DeviceSubsystem"},{"p":"com.technototes.library.util","l":"Differential"},{"p":"com.technototes.library.util","l":"Differential.DifferentialPriority"},{"p":"com.technototes.library.hardware2","l":"DigitalBuilder"},{"p":"com.technototes.library.hardware.sensor","l":"DigitalSensor"},{"p":"com.technototes.library.hardware.sensor.encoder","l":"MotorEncoder.Direction"},{"p":"com.technototes.library.logger","l":"LogConfig.Disabled"},{"p":"com.technototes.library.hardware2","l":"DistanceBuilder"},{"p":"com.technototes.library.subsystem.drivebase","l":"DrivebaseSubsystem"},{"p":"com.technototes.library.hardware","l":"DummyDevice"},{"p":"com.technototes.library.general","l":"Enablable"},{"p":"com.technototes.library.hardware.motor","l":"EncodedMotor"},{"p":"com.technototes.library.hardware.motor","l":"EncodedMotorGroup"},{"p":"com.technototes.library.subsystem.motor","l":"EncodedMotorSubsystem"},{"p":"com.technototes.library.hardware.sensor.encoder","l":"Encoder"},{"p":"com.technototes.library.logger.entry","l":"Entry"},{"p":"com.technototes.library.hardware.sensor.encoder","l":"ExternalEncoder"},{"p":"com.technototes.library.control","l":"GamepadBase"},{"p":"com.technototes.library.control","l":"GamepadDpad"},{"p":"com.technototes.library.control","l":"GamepadStick"},{"p":"com.technototes.library.hardware2","l":"HardwareBuilder"},{"p":"com.technototes.library.hardware","l":"HardwareDevice"},{"p":"com.technototes.library.hardware","l":"HardwareDeviceGroup"},{"p":"com.technototes.library.hardware.sensor","l":"IColorSensor"},{"p":"com.technototes.library.hardware.sensor","l":"IDistanceSensor"},{"p":"com.technototes.library.hardware.sensor","l":"IGyro"},{"p":"com.technototes.library.hardware.sensor","l":"ILightSensor"},{"p":"com.technototes.library.hardware.sensor","l":"IMU"},{"p":"com.technototes.library.hardware2","l":"IMUBuilder"},{"p":"com.technototes.library.util","l":"Integral"},{"p":"com.technototes.library.general","l":"Invertable"},{"p":"com.technototes.library.command","l":"IterativeCommand"},{"p":"com.technototes.library.logger","l":"Log"},{"p":"com.technototes.library.logger","l":"LogConfig"},{"p":"com.technototes.library.logger","l":"Loggable"},{"p":"com.technototes.library.logger","l":"Logger"},{"p":"com.technototes.library.logger","l":"Log.Logs"},{"p":"com.technototes.library.util","l":"MapUtils"},{"p":"com.technototes.library.util","l":"MathUtils"},{"p":"com.technototes.library.hardware.motor","l":"Motor"},{"p":"com.technototes.library.hardware2","l":"MotorBuilder"},{"p":"com.technototes.library.hardware.sensor.encoder","l":"MotorEncoder"},{"p":"com.technototes.library.hardware.motor","l":"MotorGroup"},{"p":"com.technototes.library.subsystem.motor","l":"MotorSubsystem"},{"p":"com.technototes.library.logger","l":"Log.Number"},{"p":"com.technototes.library.logger.entry","l":"NumberEntry"},{"p":"com.technototes.library.structure","l":"CommandOpMode.OpModeState"},{"p":"com.technototes.library.command","l":"ParallelCommandGroup"},{"p":"com.technototes.library.command","l":"ParallelDeadlineGroup"},{"p":"com.technototes.library.command","l":"ParallelRaceGroup"},{"p":"com.technototes.library.general","l":"Periodic"},{"p":"com.technototes.library.util","l":"Range"},{"p":"com.technototes.library.util","l":"Alliance.Red"},{"p":"com.technototes.library.hardware.sensor","l":"Rev2MDistanceSensor"},{"p":"com.technototes.library","l":"RobotLibrary"},{"p":"com.technototes.library.logger","l":"LogConfig.Run"},{"p":"com.technototes.library.util","l":"Alliance.Selector"},{"p":"com.technototes.library.hardware.sensor","l":"Sensor"},{"p":"com.technototes.library.hardware","l":"Sensored"},{"p":"com.technototes.library.command","l":"SequentialCommandGroup"},{"p":"com.technototes.library.hardware.servo","l":"Servo"},{"p":"com.technototes.library.hardware2","l":"ServoBuilder"},{"p":"com.technototes.library.hardware.servo","l":"ServoGroup"},{"p":"com.technototes.library.hardware.servo","l":"ServoProfiler"},{"p":"com.technototes.library.subsystem.servo","l":"ServoSubsystem"},{"p":"com.technototes.library.subsystem.drivebase","l":"SimpleMecanumDrivebaseSubsystem"},{"p":"com.technototes.library.util","l":"SmartConsumer"},{"p":"com.technototes.library.hardware","l":"Speaker"},{"p":"com.technototes.library.control","l":"Stick"},{"p":"com.technototes.library.logger.entry","l":"StringEntry"},{"p":"com.technototes.library.subsystem","l":"Subsystem"},{"p":"com.technototes.library.subsystem.drivebase","l":"TankDrivebaseSubsystem"},{"p":"com.technototes.library.control","l":"Binding.Type"},{"p":"com.technototes.library.command","l":"WaitCommand"}];updateSearchResults();
    \ No newline at end of file
    diff --git a/docs/Vision/allclasses-index.html b/docs/Vision/allclasses-index.html
    index b45450bf..71dfe5d5 100644
    --- a/docs/Vision/allclasses-index.html
    +++ b/docs/Vision/allclasses-index.html
    @@ -1,136 +1,84 @@
    -
    +
     
    -  
    -    
    -    All Classes and Interfaces (Vision API)
    -    
    -    
    -    
    -    
    -    
    -    
    -    
    -    
    -    
    -    
    -  
    -  
    -    
    -    
    -    
    - -
    -
    -
    -

    All Classes and Interfaces

    -
    -
    -
    Classes
    -
    -
    Class
    -
    Description
    -
    - Camera<T - extends org.openftc.easyopencv.OpenCvCamera,U - extends com.qualcomm.robotcore.hardware.HardwareDevice> -
    -
    -
    - This is an OpenCVCamera interface using the FTC SDK camera hardware -
    -
    - -
    -
    This is a Camera for use with a phone's internal camera
    -
    - -
    -
    - A vision streaming pipeline to enable vision processing during an opmode -
    -
    - -
    -
    - A webcam device interface that allows you to switch between multiple cameras! -
    -
    -
    - Webcam -
    -
    -
    Acquire webcamera is just a quit constructor away :)
    -
    -
    -
    -
    -
    -
    - + + +All Classes and Interfaces (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    All Classes and Interfaces

    +
    +
    +
    Classes
    +
    +
    Class
    +
    Description
    +
    Camera<T extends org.openftc.easyopencv.OpenCvCamera,U extends com.qualcomm.robotcore.hardware.HardwareDevice>
    +
    +
    This is an OpenCVCamera interface using the FTC SDK camera hardware
    +
    + +
    +
    This is a Camera for use with a phone's internal camera
    +
    + +
    +
    A vision streaming pipeline to enable vision processing during an opmode
    +
    + +
    +
    A webcam device interface that allows you to switch between multiple cameras!
    +
    + +
    +
    Acquire webcamera is just a quit constructor away :)
    +
    +
    +
    +
    +
    +
    + diff --git a/docs/Vision/allpackages-index.html b/docs/Vision/allpackages-index.html index 4bb32373..8d98dc33 100644 --- a/docs/Vision/allpackages-index.html +++ b/docs/Vision/allpackages-index.html @@ -1,80 +1,66 @@ - + - - - All Packages (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    All Packages

    -
    -
    Package Summary
    -
    -
    Package
    -
    Description
    - -
     
    - -
     
    -
    -
    -
    -
    - + + +All Packages (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    All Packages

    +
    +
    Package Summary
    + +
    +
    +
    + diff --git a/docs/Vision/deprecated-list.html b/docs/Vision/deprecated-list.html index f8cef183..86b1821d 100644 --- a/docs/Vision/deprecated-list.html +++ b/docs/Vision/deprecated-list.html @@ -1,84 +1,74 @@ - + - - - Deprecated List (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Deprecated API

    -

    Contents

    - -
    - -
    -
    -
    - + + +Deprecated List (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Deprecated API

    +

    Contents

    + +
    + +
    +
    +
    + diff --git a/docs/Vision/help-doc.html b/docs/Vision/help-doc.html index c5e91762..23a3c98b 100644 --- a/docs/Vision/help-doc.html +++ b/docs/Vision/help-doc.html @@ -1,261 +1,181 @@ - + - - - API Help (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -

    JavaDoc Help

    - -
    -
    -

    Navigation

    - Starting from the Overview page, you can browse the - documentation using the links in each page, and in the navigation bar at the top of each - page. The Index and Search box allow you to navigate to - specific declarations and summary pages, including: - All Packages, - All Classes and Interfaces - -
    -
    -
    -

    Kinds of Pages

    - The following sections describe the different kinds of pages in this collection. -
    -

    Overview

    -

    - The Overview page is the front page of this API document - and provides a list of all packages with a summary for each. This page can also - contain an overall description of the set of packages. -

    -
    -
    -

    Package

    -

    - Each package has a page that contains a list of its classes and interfaces, with a - summary for each. These pages may contain the following categories: -

    -
      -
    • Interfaces
    • -
    • Classes
    • -
    • Enum Classes
    • -
    • Exceptions
    • -
    • Errors
    • -
    • Annotation Interfaces
    • -
    -
    -
    -

    Class or Interface

    -

    - Each class, interface, nested class and nested interface has its own separate page. - Each of these pages has three sections consisting of a declaration and description, - member summary tables, and detailed member descriptions. Entries in each of these - sections are omitted if they are empty or not applicable. -

    -
      -
    • Class Inheritance Diagram
    • -
    • Direct Subclasses
    • -
    • All Known Subinterfaces
    • -
    • All Known Implementing Classes
    • -
    • Class or Interface Declaration
    • -
    • Class or Interface Description
    • -
    -
    -
      -
    • Nested Class Summary
    • -
    • Enum Constant Summary
    • -
    • Field Summary
    • -
    • Property Summary
    • -
    • Constructor Summary
    • -
    • Method Summary
    • -
    • Required Element Summary
    • -
    • Optional Element Summary
    • -
    -
    -
      -
    • Enum Constant Details
    • -
    • Field Details
    • -
    • Property Details
    • -
    • Constructor Details
    • -
    • Method Details
    • -
    • Element Details
    • -
    -

    - Note: Annotation interfaces have required and - optional elements, but not methods. Only enum classes have enum constants. The - components of a record class are displayed as part of the declaration of the record - class. Properties are a feature of JavaFX. -

    -

    - The summary entries are alphabetical, while the detailed descriptions are in the - order they appear in the source code. This preserves the logical groupings - established by the programmer. -

    -
    -
    -

    Other Files

    -

    - Packages and modules may contain pages with additional information related to the - declarations nearby. -

    -
    -
    -

    Tree (Class Hierarchy)

    -

    - There is a Class Hierarchy page for all packages, - plus a hierarchy for each package. Each hierarchy page contains a list of classes - and a list of interfaces. Classes are organized by inheritance structure starting - with java.lang.Object. Interfaces do not inherit from - java.lang.Object. -

    -
      -
    • - When viewing the Overview page, clicking on TREE displays the hierarchy for all - packages. -
    • -
    • - When viewing a particular package, class or interface page, clicking on TREE - displays the hierarchy for only that package. -
    • -
    -
    -
    -

    Deprecated API

    -

    - The Deprecated API page lists all of the API that - have been deprecated. A deprecated API is not recommended for use, generally due to - shortcomings, and a replacement API is usually given. Deprecated APIs may be removed - in future implementations. -

    -
    -
    -

    All Packages

    -

    - The All Packages page contains an alphabetic - index of all packages contained in the documentation. -

    -
    -
    -

    All Classes and Interfaces

    -

    - The All Classes and Interfaces page contains an - alphabetic index of all classes and interfaces contained in the documentation, - including annotation interfaces, enum classes, and record classes. -

    -
    -
    -

    Index

    -

    - The Index contains an alphabetic index of all classes, - interfaces, constructors, methods, and fields in the documentation, as well as - summary pages such as All Packages, - All Classes and Interfaces. -

    -
    -
    -
    - This help file applies to API documentation generated by the standard doclet. -
    -
    -
    - + + +API Help (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +

    JavaDoc Help

    + +
    +
    +

    Navigation

    +Starting from the Overview page, you can browse the documentation using the links in each page, and in the navigation bar at the top of each page. The Index and Search box allow you to navigate to specific declarations and summary pages, including: All Packages, All Classes and Interfaces + +
    +
    +
    +

    Kinds of Pages

    +The following sections describe the different kinds of pages in this collection. +
    +

    Overview

    +

    The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

    +
    +
    +

    Package

    +

    Each package has a page that contains a list of its classes and interfaces, with a summary for each. These pages may contain the following categories:

    +
      +
    • Interfaces
    • +
    • Classes
    • +
    • Enum Classes
    • +
    • Exceptions
    • +
    • Errors
    • +
    • Annotation Interfaces
    • +
    +
    +
    +

    Class or Interface

    +

    Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a declaration and description, member summary tables, and detailed member descriptions. Entries in each of these sections are omitted if they are empty or not applicable.

    +
      +
    • Class Inheritance Diagram
    • +
    • Direct Subclasses
    • +
    • All Known Subinterfaces
    • +
    • All Known Implementing Classes
    • +
    • Class or Interface Declaration
    • +
    • Class or Interface Description
    • +
    +
    +
      +
    • Nested Class Summary
    • +
    • Enum Constant Summary
    • +
    • Field Summary
    • +
    • Property Summary
    • +
    • Constructor Summary
    • +
    • Method Summary
    • +
    • Required Element Summary
    • +
    • Optional Element Summary
    • +
    +
    +
      +
    • Enum Constant Details
    • +
    • Field Details
    • +
    • Property Details
    • +
    • Constructor Details
    • +
    • Method Details
    • +
    • Element Details
    • +
    +

    Note: Annotation interfaces have required and optional elements, but not methods. Only enum classes have enum constants. The components of a record class are displayed as part of the declaration of the record class. Properties are a feature of JavaFX.

    +

    The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.

    +
    +
    +

    Other Files

    +

    Packages and modules may contain pages with additional information related to the declarations nearby.

    +
    +
    +

    Tree (Class Hierarchy)

    +

    There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. Classes are organized by inheritance structure starting with java.lang.Object. Interfaces do not inherit from java.lang.Object.

    +
      +
    • When viewing the Overview page, clicking on TREE displays the hierarchy for all packages.
    • +
    • When viewing a particular package, class or interface page, clicking on TREE displays the hierarchy for only that package.
    • +
    +
    +
    +

    Deprecated API

    +

    The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to shortcomings, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.

    +
    +
    +

    All Packages

    +

    The All Packages page contains an alphabetic index of all packages contained in the documentation.

    +
    +
    +

    All Classes and Interfaces

    +

    The All Classes and Interfaces page contains an alphabetic index of all classes and interfaces contained in the documentation, including annotation interfaces, enum classes, and record classes.

    +
    +
    +

    Index

    +

    The Index contains an alphabetic index of all classes, interfaces, constructors, methods, and fields in the documentation, as well as summary pages such as All Packages, All Classes and Interfaces.

    +
    +
    +
    +This help file applies to API documentation generated by the standard doclet.
    +
    +
    + diff --git a/docs/Vision/index-all.html b/docs/Vision/index-all.html index 09df77c7..f8693534 100644 --- a/docs/Vision/index-all.html +++ b/docs/Vision/index-all.html @@ -1,916 +1,262 @@ - + - - - Index (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Index

    -
    - C G I O P R S W 
    All Classes and Interfaces|All Packages -

    C

    -
    -
    - camera - - Variable in class com.technototes.vision.subsystem.PipelineSubsystem -
    -
    -
    The Camera object this subsystem is processing frames from
    -
    -
    - Camera<T - extends org.openftc.easyopencv.OpenCvCamera,U - extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in - com.technototes.vision.hardware -
    -
    -
    - This is an OpenCVCamera interface using the FTC SDK camera hardware -
    -
    -
    - Camera(String) - - Constructor for class com.technototes.vision.hardware.Camera -
    -
    -
    Create a Camera device from the HardwareDevice provided
    -
    -
    - Camera(U) - - Constructor for class com.technototes.vision.hardware.Camera -
    -
    -
    Create a Camera device from the HardwareDevice provided
    -
    -
    - closeCameraDevice() - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - closeCameraDeviceAsync(OpenCvCamera.AsyncCameraCloseListener) - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - com.technototes.vision.hardware - - package com.technototes.vision.hardware -
    -
     
    -
    - com.technototes.vision.subsystem - - package com.technototes.vision.subsystem -
    -
     
    -
    - createCamera() - - Method in class com.technototes.vision.hardware.InternalCamera -
    -
    -
    Create an OpenCvInternalCamera from this Camera
    -
    -
    - createCamera() - - Method in class com.technototes.vision.hardware.SwitchableWebcam -
    -
    -
    Get the switchable webcam object to use with your pipeline
    -
    -
    - createCamera() - - Method in class com.technototes.vision.hardware.Webcam -
    -
    -
    - Create an OpenCvWebcam, which can then be used in your vision pipeline -
    -
    -
    -

    G

    -
    -
    - getActiveCamera() - - Method in class com.technototes.vision.hardware.SwitchableWebcam -
    -
    -
    Get the currently selected camera
    -
    -
    - getCameraDirection() - - Method in class com.technototes.vision.hardware.InternalCamera -
    -
    -
    Get which internal camera is being used
    -
    -
    - getCurrentPipelineMaxFps() - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - getDevice() - - Method in class com.technototes.vision.subsystem.PipelineSubsystem -
    -
    -
    Get the Camera device that frames are being processed from
    -
    -
    - getFps() - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - getFrameBitmap(Continuation<? extends Consumer<Bitmap>>) - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - getFrameCount() - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - getOpenCvCamera() - - Method in class com.technototes.vision.hardware.Camera -
    -
    -
    get the camera created
    -
    -
    - getOverheadTimeMs() - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - getPipelineTimeMs() - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - getTotalFrameTimeMs() - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    -

    I

    -
    -
    - InternalCamera - - Class in - com.technototes.vision.hardware -
    -
    -
    This is a Camera for use with a phone's internal camera
    -
    -
    - InternalCamera() - - Constructor for class com.technototes.vision.hardware.InternalCamera -
    -
    -
    Create the front-facing internal camera
    -
    -
    - InternalCamera(OpenCvInternalCamera.CameraDirection) - - Constructor for class com.technototes.vision.hardware.InternalCamera -
    -
    -
    - Create a camera (using the one on the phone for the CameraDirection) -
    -
    -
    -

    O

    -
    -
    - openCameraDevice() - - Method in class com.technototes.vision.hardware.Camera -
    -
    -
    Deprecated.
    -
    -
    - openCameraDeviceAsync(Runnable) - - Method in class com.technototes.vision.hardware.Camera -
    -
    -
    - Invokes the Runnable's run() method when the camera has been opened. -
    -
    -
    - openCameraDeviceAsync(Runnable, IntConsumer) - - Method in class com.technototes.vision.hardware.Camera -
    -
    -
    - Invokes the Runnable's run() method when the camera has been opened, and calls the - IntConsumer's accept() method if an error occurs -
    -
    -
    - openCameraDeviceAsync(OpenCvCamera.AsyncCameraOpenListener) - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - openCvCamera - - Variable in class com.technototes.vision.hardware.Camera -
    -
    -
    This is the OpenCvCamera object created
    -
    -
    -

    P

    -
    -
    - pauseViewport() - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - PipelineSubsystem - - Class in - com.technototes.vision.subsystem -
    -
    -
    - A vision streaming pipeline to enable vision processing during an opmode -
    -
    -
    - PipelineSubsystem(Camera) - - Constructor for class com.technototes.vision.subsystem.PipelineSubsystem -
    -
    -
    Create the subsystem with the Camera provided
    -
    -
    -

    R

    -
    -
    - resumeViewport() - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    -

    S

    -
    -
    - setActiveCamera(Webcam) - - Method in class com.technototes.vision.hardware.SwitchableWebcam -
    -
    -
    Set the active camera (and return it!)
    -
    -
    - setActiveCamera(String) - - Method in class com.technototes.vision.hardware.SwitchableWebcam -
    -
    -
    Set the active camera (and return it!)
    -
    -
    - setActiveCamera(WebcamName) - - Method in class com.technototes.vision.hardware.SwitchableWebcam -
    -
    -
    Set the active camera (and return it!)
    -
    -
    - setPipeline(OpenCvPipeline) - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - setViewportRenderer(OpenCvCamera.ViewportRenderer) - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - setViewportRenderingPolicy(OpenCvCamera.ViewportRenderingPolicy) - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - showFpsMeterOnViewport(boolean) - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - startRecordingPipeline(PipelineRecordingParameters) - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - startStreaming(int, int) - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - startStreaming(int, int) - - Method in class com.technototes.vision.subsystem.PipelineSubsystem -
    -
    -
    This begins streaming frames from the camera
    -
    -
    - startStreaming(int, int, OpenCvCameraRotation) - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - startStreaming(int, int, OpenCvCameraRotation) - - Method in class com.technototes.vision.subsystem.PipelineSubsystem -
    -
    -
    This begins streaming frames from the camera
    -
    -
    - stopRecordingPipeline() - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - stopStreaming() - - Method in class com.technototes.vision.hardware.Camera -
    -
     
    -
    - stopStreaming() - - Method in class com.technototes.vision.subsystem.PipelineSubsystem -
    -
    -
    Stop frame processing
    -
    -
    - SwitchableWebcam - - Class in - com.technototes.vision.hardware -
    -
    -
    - A webcam device interface that allows you to switch between multiple cameras! -
    -
    -
    - SwitchableWebcam(Webcam...) - - Constructor for class com.technototes.vision.hardware.SwitchableWebcam -
    -
    -
    - Constructor that takes already-created Webcam's so they can be accessed through the - switchable interface -
    -
    -
    - SwitchableWebcam(String...) - - Constructor for class com.technototes.vision.hardware.SwitchableWebcam -
    -
    -
    Constructor to create the switchable webcam object
    -
    -
    - SwitchableWebcam(WebcamName...) - - Constructor for class com.technototes.vision.hardware.SwitchableWebcam -
    -
    -
    Constructor to create the switchable webcam object
    -
    -
    -

    W

    -
    -
    - Webcam - - Class in - com.technototes.vision.hardware -
    -
    -
    Acquire webcamera is just a quit constructor away :)
    -
    -
    - Webcam(String) - - Constructor for class com.technototes.vision.hardware.Webcam -
    -
    -
    - Create a webcam device configured on the device with the given name -
    -
    -
    - Webcam(WebcamName) - - Constructor for class com.technototes.vision.hardware.Webcam -
    -
    -
    TODO: I'm not sure where WebcamName comes from.
    -
    -
    - C G I O P R S W 
    All Classes and Interfaces|All Packages -
    -
    -
    - + + +Index (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Index

    +
    +C G I O P R S W 
    All Classes and Interfaces|All Packages +

    C

    +
    +
    camera - Variable in class com.technototes.vision.subsystem.PipelineSubsystem
    +
    +
    The Camera object this subsystem is processing frames from
    +
    +
    Camera<T extends org.openftc.easyopencv.OpenCvCamera,U extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in com.technototes.vision.hardware
    +
    +
    This is an OpenCVCamera interface using the FTC SDK camera hardware
    +
    +
    Camera(String) - Constructor for class com.technototes.vision.hardware.Camera
    +
    +
    Create a Camera device from the HardwareDevice provided
    +
    +
    Camera(U) - Constructor for class com.technototes.vision.hardware.Camera
    +
    +
    Create a Camera device from the HardwareDevice provided
    +
    +
    closeCameraDevice() - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    closeCameraDeviceAsync(OpenCvCamera.AsyncCameraCloseListener) - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    com.technototes.vision.hardware - package com.technototes.vision.hardware
    +
     
    +
    com.technototes.vision.subsystem - package com.technototes.vision.subsystem
    +
     
    +
    createCamera() - Method in class com.technototes.vision.hardware.InternalCamera
    +
    +
    Create an OpenCvInternalCamera from this Camera
    +
    +
    createCamera() - Method in class com.technototes.vision.hardware.SwitchableWebcam
    +
    +
    Get the switchable webcam object to use with your pipeline
    +
    +
    createCamera() - Method in class com.technototes.vision.hardware.Webcam
    +
    +
    Create an OpenCvWebcam, which can then be used in your vision pipeline
    +
    +
    +

    G

    +
    +
    getActiveCamera() - Method in class com.technototes.vision.hardware.SwitchableWebcam
    +
    +
    Get the currently selected camera
    +
    +
    getCameraDirection() - Method in class com.technototes.vision.hardware.InternalCamera
    +
    +
    Get which internal camera is being used
    +
    +
    getCurrentPipelineMaxFps() - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    getDevice() - Method in class com.technototes.vision.subsystem.PipelineSubsystem
    +
    +
    Get the Camera device that frames are being processed from
    +
    +
    getFps() - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    getFrameBitmap(Continuation<? extends Consumer<Bitmap>>) - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    getFrameCount() - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    getOpenCvCamera() - Method in class com.technototes.vision.hardware.Camera
    +
    +
    get the camera created
    +
    +
    getOverheadTimeMs() - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    getPipelineTimeMs() - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    getTotalFrameTimeMs() - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    +

    I

    +
    +
    InternalCamera - Class in com.technototes.vision.hardware
    +
    +
    This is a Camera for use with a phone's internal camera
    +
    +
    InternalCamera() - Constructor for class com.technototes.vision.hardware.InternalCamera
    +
    +
    Create the front-facing internal camera
    +
    +
    InternalCamera(OpenCvInternalCamera.CameraDirection) - Constructor for class com.technototes.vision.hardware.InternalCamera
    +
    +
    Create a camera (using the one on the phone for the CameraDirection)
    +
    +
    +

    O

    +
    +
    openCameraDevice() - Method in class com.technototes.vision.hardware.Camera
    +
    +
    Deprecated.
    +
    +
    openCameraDeviceAsync(Runnable) - Method in class com.technototes.vision.hardware.Camera
    +
    +
    Invokes the Runnable's run() method when the camera has been opened.
    +
    +
    openCameraDeviceAsync(Runnable, IntConsumer) - Method in class com.technototes.vision.hardware.Camera
    +
    +
    Invokes the Runnable's run() method when the camera has been opened, + and calls the IntConsumer's accept() method if an error occurs
    +
    +
    openCameraDeviceAsync(OpenCvCamera.AsyncCameraOpenListener) - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    openCvCamera - Variable in class com.technototes.vision.hardware.Camera
    +
    +
    This is the OpenCvCamera object created
    +
    +
    +

    P

    +
    +
    pauseViewport() - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    PipelineSubsystem - Class in com.technototes.vision.subsystem
    +
    +
    A vision streaming pipeline to enable vision processing during an opmode
    +
    +
    PipelineSubsystem(Camera) - Constructor for class com.technototes.vision.subsystem.PipelineSubsystem
    +
    +
    Create the subsystem with the Camera provided
    +
    +
    +

    R

    +
    +
    resumeViewport() - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    +

    S

    +
    +
    setActiveCamera(Webcam) - Method in class com.technototes.vision.hardware.SwitchableWebcam
    +
    +
    Set the active camera (and return it!)
    +
    +
    setActiveCamera(String) - Method in class com.technototes.vision.hardware.SwitchableWebcam
    +
    +
    Set the active camera (and return it!)
    +
    +
    setActiveCamera(WebcamName) - Method in class com.technototes.vision.hardware.SwitchableWebcam
    +
    +
    Set the active camera (and return it!)
    +
    +
    setPipeline(OpenCvPipeline) - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    setViewportRenderer(OpenCvCamera.ViewportRenderer) - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    setViewportRenderingPolicy(OpenCvCamera.ViewportRenderingPolicy) - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    showFpsMeterOnViewport(boolean) - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    startRecordingPipeline(PipelineRecordingParameters) - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    startStreaming(int, int) - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    startStreaming(int, int) - Method in class com.technototes.vision.subsystem.PipelineSubsystem
    +
    +
    This begins streaming frames from the camera
    +
    +
    startStreaming(int, int, OpenCvCameraRotation) - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    startStreaming(int, int, OpenCvCameraRotation) - Method in class com.technototes.vision.subsystem.PipelineSubsystem
    +
    +
    This begins streaming frames from the camera
    +
    +
    stopRecordingPipeline() - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    stopStreaming() - Method in class com.technototes.vision.hardware.Camera
    +
     
    +
    stopStreaming() - Method in class com.technototes.vision.subsystem.PipelineSubsystem
    +
    +
    Stop frame processing
    +
    +
    SwitchableWebcam - Class in com.technototes.vision.hardware
    +
    +
    A webcam device interface that allows you to switch between multiple cameras!
    +
    +
    SwitchableWebcam(Webcam...) - Constructor for class com.technototes.vision.hardware.SwitchableWebcam
    +
    +
    Constructor that takes already-created Webcam's so they can be accessed + through the switchable interface
    +
    +
    SwitchableWebcam(String...) - Constructor for class com.technototes.vision.hardware.SwitchableWebcam
    +
    +
    Constructor to create the switchable webcam object
    +
    +
    SwitchableWebcam(WebcamName...) - Constructor for class com.technototes.vision.hardware.SwitchableWebcam
    +
    +
    Constructor to create the switchable webcam object
    +
    +
    +

    W

    +
    +
    Webcam - Class in com.technototes.vision.hardware
    +
    +
    Acquire webcamera is just a quit constructor away :)
    +
    +
    Webcam(String) - Constructor for class com.technototes.vision.hardware.Webcam
    +
    +
    Create a webcam device configured on the device with the given name
    +
    +
    Webcam(WebcamName) - Constructor for class com.technototes.vision.hardware.Webcam
    +
    +
    TODO: I'm not sure where WebcamName comes from.
    +
    +
    +C G I O P R S W 
    All Classes and Interfaces|All Packages
    +
    +
    + diff --git a/docs/Vision/index.html b/docs/Vision/index.html index 70a53db1..3add7e80 100644 --- a/docs/Vision/index.html +++ b/docs/Vision/index.html @@ -1,86 +1,68 @@ - + - - - Overview (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Vision API

    -
    -
    -
    Packages
    -
    -
    Package
    -
    Description
    - -
    -   -
    - -
    -   -
    -
    -
    -
    -
    -
    - + + +Overview (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Vision API

    +
    +
    +
    Packages
    + +
    +
    +
    +
    + diff --git a/docs/Vision/jquery-ui.overrides.css b/docs/Vision/jquery-ui.overrides.css index bc437535..facf852c 100644 --- a/docs/Vision/jquery-ui.overrides.css +++ b/docs/Vision/jquery-ui.overrides.css @@ -29,7 +29,7 @@ a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover { - /* Overrides the color of selection used in jQuery UI */ - background: #f8981d; - border: 1px solid #f8981d; + /* Overrides the color of selection used in jQuery UI */ + background: #F8981D; + border: 1px solid #F8981D; } diff --git a/docs/Vision/member-search-index.js b/docs/Vision/member-search-index.js index f63548dc..c18770de 100644 --- a/docs/Vision/member-search-index.js +++ b/docs/Vision/member-search-index.js @@ -1,177 +1 @@ -memberSearchIndex = [ - { p: 'com.technototes.vision.subsystem', c: 'PipelineSubsystem', l: 'camera' }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'Camera(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'Camera(U)', u: '%3Cinit%3E(U)' }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'closeCameraDevice()' }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'closeCameraDeviceAsync(OpenCvCamera.AsyncCameraCloseListener)', - u: 'closeCameraDeviceAsync(org.openftc.easyopencv.OpenCvCamera.AsyncCameraCloseListener)', - }, - { p: 'com.technototes.vision.hardware', c: 'InternalCamera', l: 'createCamera()' }, - { p: 'com.technototes.vision.hardware', c: 'SwitchableWebcam', l: 'createCamera()' }, - { p: 'com.technototes.vision.hardware', c: 'Webcam', l: 'createCamera()' }, - { p: 'com.technototes.vision.hardware', c: 'SwitchableWebcam', l: 'getActiveCamera()' }, - { p: 'com.technototes.vision.hardware', c: 'InternalCamera', l: 'getCameraDirection()' }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getCurrentPipelineMaxFps()' }, - { p: 'com.technototes.vision.subsystem', c: 'PipelineSubsystem', l: 'getDevice()' }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getFps()' }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'getFrameBitmap(Continuation>)', - u: 'getFrameBitmap(org.firstinspires.ftc.robotcore.external.function.Continuation)', - }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getFrameCount()' }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getOpenCvCamera()' }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getOverheadTimeMs()' }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getPipelineTimeMs()' }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getTotalFrameTimeMs()' }, - { - p: 'com.technototes.vision.hardware', - c: 'InternalCamera', - l: 'InternalCamera()', - u: '%3Cinit%3E()', - }, - { - p: 'com.technototes.vision.hardware', - c: 'InternalCamera', - l: 'InternalCamera(OpenCvInternalCamera.CameraDirection)', - u: '%3Cinit%3E(org.openftc.easyopencv.OpenCvInternalCamera.CameraDirection)', - }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'openCameraDevice()' }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'openCameraDeviceAsync(OpenCvCamera.AsyncCameraOpenListener)', - u: 'openCameraDeviceAsync(org.openftc.easyopencv.OpenCvCamera.AsyncCameraOpenListener)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'openCameraDeviceAsync(Runnable)', - u: 'openCameraDeviceAsync(java.lang.Runnable)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'openCameraDeviceAsync(Runnable, IntConsumer)', - u: 'openCameraDeviceAsync(java.lang.Runnable,java.util.function.IntConsumer)', - }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'openCvCamera' }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'pauseViewport()' }, - { - p: 'com.technototes.vision.subsystem', - c: 'PipelineSubsystem', - l: 'PipelineSubsystem(Camera)', - u: '%3Cinit%3E(com.technototes.vision.hardware.Camera)', - }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'resumeViewport()' }, - { - p: 'com.technototes.vision.hardware', - c: 'SwitchableWebcam', - l: 'setActiveCamera(String)', - u: 'setActiveCamera(java.lang.String)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'SwitchableWebcam', - l: 'setActiveCamera(Webcam)', - u: 'setActiveCamera(com.technototes.vision.hardware.Webcam)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'SwitchableWebcam', - l: 'setActiveCamera(WebcamName)', - u: 'setActiveCamera(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'setPipeline(OpenCvPipeline)', - u: 'setPipeline(org.openftc.easyopencv.OpenCvPipeline)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'setViewportRenderer(OpenCvCamera.ViewportRenderer)', - u: 'setViewportRenderer(org.openftc.easyopencv.OpenCvCamera.ViewportRenderer)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'setViewportRenderingPolicy(OpenCvCamera.ViewportRenderingPolicy)', - u: 'setViewportRenderingPolicy(org.openftc.easyopencv.OpenCvCamera.ViewportRenderingPolicy)', - }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'showFpsMeterOnViewport(boolean)' }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'startRecordingPipeline(PipelineRecordingParameters)', - u: 'startRecordingPipeline(org.openftc.easyopencv.PipelineRecordingParameters)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'startStreaming(int, int)', - u: 'startStreaming(int,int)', - }, - { - p: 'com.technototes.vision.subsystem', - c: 'PipelineSubsystem', - l: 'startStreaming(int, int)', - u: 'startStreaming(int,int)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'Camera', - l: 'startStreaming(int, int, OpenCvCameraRotation)', - u: 'startStreaming(int,int,org.openftc.easyopencv.OpenCvCameraRotation)', - }, - { - p: 'com.technototes.vision.subsystem', - c: 'PipelineSubsystem', - l: 'startStreaming(int, int, OpenCvCameraRotation)', - u: 'startStreaming(int,int,org.openftc.easyopencv.OpenCvCameraRotation)', - }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'stopRecordingPipeline()' }, - { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'stopStreaming()' }, - { p: 'com.technototes.vision.subsystem', c: 'PipelineSubsystem', l: 'stopStreaming()' }, - { - p: 'com.technototes.vision.hardware', - c: 'SwitchableWebcam', - l: 'SwitchableWebcam(String...)', - u: '%3Cinit%3E(java.lang.String...)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'SwitchableWebcam', - l: 'SwitchableWebcam(Webcam...)', - u: '%3Cinit%3E(com.technototes.vision.hardware.Webcam...)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'SwitchableWebcam', - l: 'SwitchableWebcam(WebcamName...)', - u: '%3Cinit%3E(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName...)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'Webcam', - l: 'Webcam(String)', - u: '%3Cinit%3E(java.lang.String)', - }, - { - p: 'com.technototes.vision.hardware', - c: 'Webcam', - l: 'Webcam(WebcamName)', - u: '%3Cinit%3E(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName)', - }, -]; -updateSearchResults(); +memberSearchIndex = [{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"camera"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"Camera(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"Camera(U)","u":"%3Cinit%3E(U)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"closeCameraDevice()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"closeCameraDeviceAsync(OpenCvCamera.AsyncCameraCloseListener)","u":"closeCameraDeviceAsync(org.openftc.easyopencv.OpenCvCamera.AsyncCameraCloseListener)"},{"p":"com.technototes.vision.hardware","c":"InternalCamera","l":"createCamera()"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"createCamera()"},{"p":"com.technototes.vision.hardware","c":"Webcam","l":"createCamera()"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"getActiveCamera()"},{"p":"com.technototes.vision.hardware","c":"InternalCamera","l":"getCameraDirection()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getCurrentPipelineMaxFps()"},{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"getDevice()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getFps()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getFrameBitmap(Continuation>)","u":"getFrameBitmap(org.firstinspires.ftc.robotcore.external.function.Continuation)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getFrameCount()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getOpenCvCamera()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getOverheadTimeMs()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getPipelineTimeMs()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getTotalFrameTimeMs()"},{"p":"com.technototes.vision.hardware","c":"InternalCamera","l":"InternalCamera()","u":"%3Cinit%3E()"},{"p":"com.technototes.vision.hardware","c":"InternalCamera","l":"InternalCamera(OpenCvInternalCamera.CameraDirection)","u":"%3Cinit%3E(org.openftc.easyopencv.OpenCvInternalCamera.CameraDirection)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"openCameraDevice()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"openCameraDeviceAsync(OpenCvCamera.AsyncCameraOpenListener)","u":"openCameraDeviceAsync(org.openftc.easyopencv.OpenCvCamera.AsyncCameraOpenListener)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"openCameraDeviceAsync(Runnable)","u":"openCameraDeviceAsync(java.lang.Runnable)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"openCameraDeviceAsync(Runnable, IntConsumer)","u":"openCameraDeviceAsync(java.lang.Runnable,java.util.function.IntConsumer)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"openCvCamera"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"pauseViewport()"},{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"PipelineSubsystem(Camera)","u":"%3Cinit%3E(com.technototes.vision.hardware.Camera)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"resumeViewport()"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"setActiveCamera(String)","u":"setActiveCamera(java.lang.String)"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"setActiveCamera(Webcam)","u":"setActiveCamera(com.technototes.vision.hardware.Webcam)"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"setActiveCamera(WebcamName)","u":"setActiveCamera(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"setPipeline(OpenCvPipeline)","u":"setPipeline(org.openftc.easyopencv.OpenCvPipeline)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"setViewportRenderer(OpenCvCamera.ViewportRenderer)","u":"setViewportRenderer(org.openftc.easyopencv.OpenCvCamera.ViewportRenderer)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"setViewportRenderingPolicy(OpenCvCamera.ViewportRenderingPolicy)","u":"setViewportRenderingPolicy(org.openftc.easyopencv.OpenCvCamera.ViewportRenderingPolicy)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"showFpsMeterOnViewport(boolean)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"startRecordingPipeline(PipelineRecordingParameters)","u":"startRecordingPipeline(org.openftc.easyopencv.PipelineRecordingParameters)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"startStreaming(int, int)","u":"startStreaming(int,int)"},{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"startStreaming(int, int)","u":"startStreaming(int,int)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"startStreaming(int, int, OpenCvCameraRotation)","u":"startStreaming(int,int,org.openftc.easyopencv.OpenCvCameraRotation)"},{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"startStreaming(int, int, OpenCvCameraRotation)","u":"startStreaming(int,int,org.openftc.easyopencv.OpenCvCameraRotation)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"stopRecordingPipeline()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"stopStreaming()"},{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"stopStreaming()"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"SwitchableWebcam(String...)","u":"%3Cinit%3E(java.lang.String...)"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"SwitchableWebcam(Webcam...)","u":"%3Cinit%3E(com.technototes.vision.hardware.Webcam...)"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"SwitchableWebcam(WebcamName...)","u":"%3Cinit%3E(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName...)"},{"p":"com.technototes.vision.hardware","c":"Webcam","l":"Webcam(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.vision.hardware","c":"Webcam","l":"Webcam(WebcamName)","u":"%3Cinit%3E(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName)"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/Vision/module-search-index.js b/docs/Vision/module-search-index.js index a6f96499..0d59754f 100644 --- a/docs/Vision/module-search-index.js +++ b/docs/Vision/module-search-index.js @@ -1,2 +1 @@ -moduleSearchIndex = []; -updateSearchResults(); +moduleSearchIndex = [];updateSearchResults(); \ No newline at end of file diff --git a/docs/Vision/overview-summary.html b/docs/Vision/overview-summary.html index dcf83320..34041fef 100644 --- a/docs/Vision/overview-summary.html +++ b/docs/Vision/overview-summary.html @@ -1,27 +1,25 @@ - + - - - Vision API - - - - - - - - - - -
    - -

    index.html

    -
    - + + +Vision API + + + + + + + + + + +
    + +

    index.html

    +
    + diff --git a/docs/Vision/overview-tree.html b/docs/Vision/overview-tree.html index e677c81b..7d279c47 100644 --- a/docs/Vision/overview-tree.html +++ b/docs/Vision/overview-tree.html @@ -1,139 +1,83 @@ - + - - - Class Hierarchy (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Hierarchy For All Packages

    - Package Hierarchies: - -
    -
    -

    Class Hierarchy

    -
      -
    • - java.lang.Object -
        -
      • - com.technototes.library.hardware.HardwareDevice<T> -
          -
        • - com.technototes.vision.hardware.Camera<T,U> (implements org.openftc.easyopencv.OpenCvCamera) - -
        • -
        -
      • -
      • - com.technototes.vision.subsystem.PipelineSubsystem - (implements com.technototes.library.subsystem.Subsystem) -
      • -
      -
    • -
    -
    -
    -
    -
    - + + +Class Hierarchy (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Hierarchy For All Packages

    +Package Hierarchies: + +
    +
    +

    Class Hierarchy

    +
      +
    • java.lang.Object +
        +
      • com.technototes.library.hardware.HardwareDevice<T> +
          +
        • com.technototes.vision.hardware.Camera<T,U> (implements org.openftc.easyopencv.OpenCvCamera) + +
        • +
        +
      • +
      • com.technototes.vision.subsystem.PipelineSubsystem (implements com.technototes.library.subsystem.Subsystem)
      • +
      +
    • +
    +
    +
    +
    +
    + diff --git a/docs/Vision/package-search-index.js b/docs/Vision/package-search-index.js index d142fd68..8b461665 100644 --- a/docs/Vision/package-search-index.js +++ b/docs/Vision/package-search-index.js @@ -1,6 +1 @@ -packageSearchIndex = [ - { l: 'All Packages', u: 'allpackages-index.html' }, - { l: 'com.technototes.vision.hardware' }, - { l: 'com.technototes.vision.subsystem' }, -]; -updateSearchResults(); +packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"l":"com.technototes.vision.hardware"},{"l":"com.technototes.vision.subsystem"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/Vision/script.js b/docs/Vision/script.js index a6efd285..864989cf 100644 --- a/docs/Vision/script.js +++ b/docs/Vision/script.js @@ -29,106 +29,104 @@ var typeSearchIndex; var memberSearchIndex; var tagSearchIndex; function loadScripts(doc, tag) { - createElem(doc, tag, 'search.js'); + createElem(doc, tag, 'search.js'); - createElem(doc, tag, 'module-search-index.js'); - createElem(doc, tag, 'package-search-index.js'); - createElem(doc, tag, 'type-search-index.js'); - createElem(doc, tag, 'member-search-index.js'); - createElem(doc, tag, 'tag-search-index.js'); + createElem(doc, tag, 'module-search-index.js'); + createElem(doc, tag, 'package-search-index.js'); + createElem(doc, tag, 'type-search-index.js'); + createElem(doc, tag, 'member-search-index.js'); + createElem(doc, tag, 'tag-search-index.js'); } function createElem(doc, tag, path) { - var script = doc.createElement(tag); - var scriptElement = doc.getElementsByTagName(tag)[0]; - script.src = pathtoroot + path; - scriptElement.parentNode.insertBefore(script, scriptElement); + var script = doc.createElement(tag); + var scriptElement = doc.getElementsByTagName(tag)[0]; + script.src = pathtoroot + path; + scriptElement.parentNode.insertBefore(script, scriptElement); } function show(tableId, selected, columns) { - if (tableId !== selected) { - document - .querySelectorAll('div.' + tableId + ':not(.' + selected + ')') - .forEach(function (elem) { - elem.style.display = 'none'; - }); - } - document.querySelectorAll('div.' + selected).forEach(function (elem, index) { - elem.style.display = ''; - var isEvenRow = index % (columns * 2) < columns; - elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); - elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); - }); - updateTabs(tableId, selected); + if (tableId !== selected) { + document.querySelectorAll('div.' + tableId + ':not(.' + selected + ')') + .forEach(function(elem) { + elem.style.display = 'none'; + }); + } + document.querySelectorAll('div.' + selected) + .forEach(function(elem, index) { + elem.style.display = ''; + var isEvenRow = index % (columns * 2) < columns; + elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); + elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); + }); + updateTabs(tableId, selected); } function updateTabs(tableId, selected) { - document - .querySelector('div#' + tableId + ' .summary-table') - .setAttribute('aria-labelledby', selected); - document.querySelectorAll('button[id^="' + tableId + '"]').forEach(function (tab, index) { - if (selected === tab.id || (tableId === selected && index === 0)) { - tab.className = activeTableTab; - tab.setAttribute('aria-selected', true); - tab.setAttribute('tabindex', 0); - } else { - tab.className = tableTab; - tab.setAttribute('aria-selected', false); - tab.setAttribute('tabindex', -1); - } - }); + document.querySelector('div#' + tableId +' .summary-table') + .setAttribute('aria-labelledby', selected); + document.querySelectorAll('button[id^="' + tableId + '"]') + .forEach(function(tab, index) { + if (selected === tab.id || (tableId === selected && index === 0)) { + tab.className = activeTableTab; + tab.setAttribute('aria-selected', true); + tab.setAttribute('tabindex',0); + } else { + tab.className = tableTab; + tab.setAttribute('aria-selected', false); + tab.setAttribute('tabindex',-1); + } + }); } function switchTab(e) { - var selected = document.querySelector('[aria-selected=true]'); - if (selected) { - if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { - // left or up arrow key pressed: move focus to previous tab - selected.previousSibling.click(); - selected.previousSibling.focus(); - e.preventDefault(); - } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { - // right or down arrow key pressed: move focus to next tab - selected.nextSibling.click(); - selected.nextSibling.focus(); - e.preventDefault(); + var selected = document.querySelector('[aria-selected=true]'); + if (selected) { + if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { + // left or up arrow key pressed: move focus to previous tab + selected.previousSibling.click(); + selected.previousSibling.focus(); + e.preventDefault(); + } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { + // right or down arrow key pressed: move focus to next tab + selected.nextSibling.click(); + selected.nextSibling.focus(); + e.preventDefault(); + } } - } } -var updateSearchResults = function () {}; +var updateSearchResults = function() {}; function indexFilesLoaded() { - return ( - moduleSearchIndex && - packageSearchIndex && - typeSearchIndex && - memberSearchIndex && - tagSearchIndex - ); + return moduleSearchIndex + && packageSearchIndex + && typeSearchIndex + && memberSearchIndex + && tagSearchIndex; } // Workaround for scroll position not being included in browser history (8249133) -document.addEventListener('DOMContentLoaded', function (e) { - var contentDiv = document.querySelector('div.flex-content'); - window.addEventListener('popstate', function (e) { - if (e.state !== null) { - contentDiv.scrollTop = e.state; - } - }); - window.addEventListener('hashchange', function (e) { - history.replaceState(contentDiv.scrollTop, document.title); - }); - contentDiv.addEventListener('scroll', function (e) { - var timeoutID; - if (!timeoutID) { - timeoutID = setTimeout(function () { +document.addEventListener("DOMContentLoaded", function(e) { + var contentDiv = document.querySelector("div.flex-content"); + window.addEventListener("popstate", function(e) { + if (e.state !== null) { + contentDiv.scrollTop = e.state; + } + }); + window.addEventListener("hashchange", function(e) { + history.replaceState(contentDiv.scrollTop, document.title); + }); + contentDiv.addEventListener("scroll", function(e) { + var timeoutID; + if (!timeoutID) { + timeoutID = setTimeout(function() { + history.replaceState(contentDiv.scrollTop, document.title); + timeoutID = null; + }, 100); + } + }); + if (!location.hash) { history.replaceState(contentDiv.scrollTop, document.title); - timeoutID = null; - }, 100); } - }); - if (!location.hash) { - history.replaceState(contentDiv.scrollTop, document.title); - } }); diff --git a/docs/Vision/search.js b/docs/Vision/search.js index 3ba91721..db3b2f4a 100644 --- a/docs/Vision/search.js +++ b/docs/Vision/search.js @@ -23,354 +23,332 @@ * questions. */ -var noResult = { l: 'No results found' }; -var loading = { l: 'Loading search index...' }; -var catModules = 'Modules'; -var catPackages = 'Packages'; -var catTypes = 'Classes and Interfaces'; -var catMembers = 'Members'; -var catSearchTags = 'Search Tags'; -var highlight = '$&'; -var searchPattern = ''; -var fallbackPattern = ''; +var noResult = {l: "No results found"}; +var loading = {l: "Loading search index..."}; +var catModules = "Modules"; +var catPackages = "Packages"; +var catTypes = "Classes and Interfaces"; +var catMembers = "Members"; +var catSearchTags = "Search Tags"; +var highlight = "$&"; +var searchPattern = ""; +var fallbackPattern = ""; var RANKING_THRESHOLD = 2; var NO_MATCH = 0xffff; var MIN_RESULTS = 3; var MAX_RESULTS = 500; -var UNNAMED = ''; +var UNNAMED = ""; function escapeHtml(str) { - return str.replace(//g, '>'); + return str.replace(//g, ">"); } function getHighlightedText(item, matcher, fallbackMatcher) { - var escapedItem = escapeHtml(item); - var highlighted = escapedItem.replace(matcher, highlight); - if (highlighted === escapedItem) { - highlighted = escapedItem.replace(fallbackMatcher, highlight); - } - return highlighted; + var escapedItem = escapeHtml(item); + var highlighted = escapedItem.replace(matcher, highlight); + if (highlighted === escapedItem) { + highlighted = escapedItem.replace(fallbackMatcher, highlight) + } + return highlighted; } function getURLPrefix(ui) { - var urlPrefix = ''; - var slash = '/'; - if (ui.item.category === catModules) { - return ui.item.l + slash; - } else if (ui.item.category === catPackages && ui.item.m) { - return ui.item.m + slash; - } else if (ui.item.category === catTypes || ui.item.category === catMembers) { - if (ui.item.m) { - urlPrefix = ui.item.m + slash; - } else { - $.each(packageSearchIndex, function (index, item) { - if (item.m && ui.item.p === item.l) { - urlPrefix = item.m + slash; + var urlPrefix=""; + var slash = "/"; + if (ui.item.category === catModules) { + return ui.item.l + slash; + } else if (ui.item.category === catPackages && ui.item.m) { + return ui.item.m + slash; + } else if (ui.item.category === catTypes || ui.item.category === catMembers) { + if (ui.item.m) { + urlPrefix = ui.item.m + slash; + } else { + $.each(packageSearchIndex, function(index, item) { + if (item.m && ui.item.p === item.l) { + urlPrefix = item.m + slash; + } + }); } - }); } - } - return urlPrefix; + return urlPrefix; } function createSearchPattern(term) { - var pattern = ''; - var isWordToken = false; - term - .replace(/,\s*/g, ', ') - .trim() - .split(/\s+/) - .forEach(function (w, index) { - if (index > 0) { - // whitespace between identifiers is significant - pattern += isWordToken && /^\w/.test(w) ? '\\s+' : '\\s*'; - } - var tokens = w.split(/(?=[A-Z,.()<>[\/])/); - for (var i = 0; i < tokens.length; i++) { - var s = tokens[i]; - if (s === '') { - continue; + var pattern = ""; + var isWordToken = false; + term.replace(/,\s*/g, ", ").trim().split(/\s+/).forEach(function(w, index) { + if (index > 0) { + // whitespace between identifiers is significant + pattern += (isWordToken && /^\w/.test(w)) ? "\\s+" : "\\s*"; } - pattern += $.ui.autocomplete.escapeRegex(s); - isWordToken = /\w$/.test(s); - if (isWordToken) { - pattern += '([a-z0-9_$<>\\[\\]]*?)'; + var tokens = w.split(/(?=[A-Z,.()<>[\/])/); + for (var i = 0; i < tokens.length; i++) { + var s = tokens[i]; + if (s === "") { + continue; + } + pattern += $.ui.autocomplete.escapeRegex(s); + isWordToken = /\w$/.test(s); + if (isWordToken) { + pattern += "([a-z0-9_$<>\\[\\]]*?)"; + } } - } }); - return pattern; + return pattern; } function createMatcher(pattern, flags) { - var isCamelCase = /[A-Z]/.test(pattern); - return new RegExp(pattern, flags + (isCamelCase ? '' : 'i')); + var isCamelCase = /[A-Z]/.test(pattern); + return new RegExp(pattern, flags + (isCamelCase ? "" : "i")); } var watermark = 'Search'; -$(function () { - var search = $('#search-input'); - var reset = $('#reset-button'); - search.val(''); - search.prop('disabled', false); - reset.prop('disabled', false); - search.val(watermark).addClass('watermark'); - search.blur(function () { - if ($(this).val().length === 0) { - $(this).val(watermark).addClass('watermark'); - } - }); - search.on('click keydown paste', function () { - if ($(this).val() === watermark) { - $(this).val('').removeClass('watermark'); - } - }); - reset.click(function () { - search.val('').focus(); - }); - search.focus()[0].setSelectionRange(0, 0); -}); -$.widget('custom.catcomplete', $.ui.autocomplete, { - _create: function () { - this._super(); - this.widget().menu('option', 'items', '> :not(.ui-autocomplete-category)'); - }, - _renderMenu: function (ul, items) { - var rMenu = this; - var currentCategory = ''; - rMenu.menu.bindings = $(); - $.each(items, function (index, item) { - var li; - if (item.category && item.category !== currentCategory) { - ul.append('
  • ' + item.category + '
  • '); - currentCategory = item.category; - } - li = rMenu._renderItemData(ul, item); - if (item.category) { - li.attr('aria-label', item.category + ' : ' + item.l); - li.attr('class', 'result-item'); - } else { - li.attr('aria-label', item.l); - li.attr('class', 'result-item'); - } +$(function() { + var search = $("#search-input"); + var reset = $("#reset-button"); + search.val(''); + search.prop("disabled", false); + reset.prop("disabled", false); + search.val(watermark).addClass('watermark'); + search.blur(function() { + if ($(this).val().length === 0) { + $(this).val(watermark).addClass('watermark'); + } }); - }, - _renderItem: function (ul, item) { - var label = ''; - var matcher = createMatcher(escapeHtml(searchPattern), 'g'); - var fallbackMatcher = new RegExp(fallbackPattern, 'gi'); - if (item.category === catModules) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catPackages) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catTypes) { - label = - item.p && item.p !== UNNAMED - ? getHighlightedText(item.p + '.' + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catMembers) { - label = - item.p && item.p !== UNNAMED - ? getHighlightedText(item.p + '.' + item.c + '.' + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.c + '.' + item.l, matcher, fallbackMatcher); - } else if (item.category === catSearchTags) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else { - label = item.l; - } - var li = $('
  • ').appendTo(ul); - var div = $('
    ').appendTo(li); - if (item.category === catSearchTags && item.h) { - if (item.d) { - div.html( - label + - ' (' + - item.h + - ')
    ' + - item.d + - '
    ', - ); - } else { - div.html(label + ' (' + item.h + ')'); - } - } else { - if (item.m) { - div.html(item.m + '/' + label); - } else { - div.html(label); - } + search.on('click keydown paste', function() { + if ($(this).val() === watermark) { + $(this).val('').removeClass('watermark'); + } + }); + reset.click(function() { + search.val('').focus(); + }); + search.focus()[0].setSelectionRange(0, 0); +}); +$.widget("custom.catcomplete", $.ui.autocomplete, { + _create: function() { + this._super(); + this.widget().menu("option", "items", "> :not(.ui-autocomplete-category)"); + }, + _renderMenu: function(ul, items) { + var rMenu = this; + var currentCategory = ""; + rMenu.menu.bindings = $(); + $.each(items, function(index, item) { + var li; + if (item.category && item.category !== currentCategory) { + ul.append("
  • " + item.category + "
  • "); + currentCategory = item.category; + } + li = rMenu._renderItemData(ul, item); + if (item.category) { + li.attr("aria-label", item.category + " : " + item.l); + li.attr("class", "result-item"); + } else { + li.attr("aria-label", item.l); + li.attr("class", "result-item"); + } + }); + }, + _renderItem: function(ul, item) { + var label = ""; + var matcher = createMatcher(escapeHtml(searchPattern), "g"); + var fallbackMatcher = new RegExp(fallbackPattern, "gi") + if (item.category === catModules) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catPackages) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catTypes) { + label = (item.p && item.p !== UNNAMED) + ? getHighlightedText(item.p + "." + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catMembers) { + label = (item.p && item.p !== UNNAMED) + ? getHighlightedText(item.p + "." + item.c + "." + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.c + "." + item.l, matcher, fallbackMatcher); + } else if (item.category === catSearchTags) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else { + label = item.l; + } + var li = $("
  • ").appendTo(ul); + var div = $("
    ").appendTo(li); + if (item.category === catSearchTags && item.h) { + if (item.d) { + div.html(label + " (" + item.h + ")
    " + + item.d + "
    "); + } else { + div.html(label + " (" + item.h + ")"); + } + } else { + if (item.m) { + div.html(item.m + "/" + label); + } else { + div.html(label); + } + } + return li; } - return li; - }, }); function rankMatch(match, category) { - if (!match) { - return NO_MATCH; - } - var index = match.index; - var input = match.input; - var leftBoundaryMatch = 2; - var periferalMatch = 0; - // make sure match is anchored on a left word boundary - if (index === 0 || /\W/.test(input[index - 1]) || '_' === input[index]) { - leftBoundaryMatch = 0; - } else if ( - '_' === input[index - 1] || - (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input)) - ) { - leftBoundaryMatch = 1; - } - var matchEnd = index + match[0].length; - var leftParen = input.indexOf('('); - var endOfName = leftParen > -1 ? leftParen : input.length; - // exclude peripheral matches - if (category !== catModules && category !== catSearchTags) { - var delim = category === catPackages ? '/' : '.'; - if (leftParen > -1 && leftParen < index) { - periferalMatch += 2; - } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { - periferalMatch += 2; + if (!match) { + return NO_MATCH; + } + var index = match.index; + var input = match.input; + var leftBoundaryMatch = 2; + var periferalMatch = 0; + // make sure match is anchored on a left word boundary + if (index === 0 || /\W/.test(input[index - 1]) || "_" === input[index]) { + leftBoundaryMatch = 0; + } else if ("_" === input[index - 1] || (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input))) { + leftBoundaryMatch = 1; } - } - var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match - for (var i = 1; i < match.length; i++) { - // lower ranking if parts of the name are missing - if (match[i]) delta += match[i].length; - } - if (category === catTypes) { - // lower ranking if a type name contains unmatched camel-case parts - if (/[A-Z]/.test(input.substring(matchEnd))) delta += 5; - if (/[A-Z]/.test(input.substring(0, index))) delta += 5; - } - return leftBoundaryMatch + periferalMatch + delta / 200; + var matchEnd = index + match[0].length; + var leftParen = input.indexOf("("); + var endOfName = leftParen > -1 ? leftParen : input.length; + // exclude peripheral matches + if (category !== catModules && category !== catSearchTags) { + var delim = category === catPackages ? "/" : "."; + if (leftParen > -1 && leftParen < index) { + periferalMatch += 2; + } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { + periferalMatch += 2; + } + } + var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match + for (var i = 1; i < match.length; i++) { + // lower ranking if parts of the name are missing + if (match[i]) + delta += match[i].length; + } + if (category === catTypes) { + // lower ranking if a type name contains unmatched camel-case parts + if (/[A-Z]/.test(input.substring(matchEnd))) + delta += 5; + if (/[A-Z]/.test(input.substring(0, index))) + delta += 5; + } + return leftBoundaryMatch + periferalMatch + (delta / 200); + } function doSearch(request, response) { - var result = []; - searchPattern = createSearchPattern(request.term); - fallbackPattern = createSearchPattern(request.term.toLowerCase()); - if (searchPattern === '') { - return this.close(); - } - var camelCaseMatcher = createMatcher(searchPattern, ''); - var fallbackMatcher = new RegExp(fallbackPattern, 'i'); + var result = []; + searchPattern = createSearchPattern(request.term); + fallbackPattern = createSearchPattern(request.term.toLowerCase()); + if (searchPattern === "") { + return this.close(); + } + var camelCaseMatcher = createMatcher(searchPattern, ""); + var fallbackMatcher = new RegExp(fallbackPattern, "i"); - function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { - if (indexArray) { - var newResults = []; - $.each(indexArray, function (i, item) { - item.category = category; - var ranking = rankMatch(matcher.exec(nameFunc(item)), category); - if (ranking < RANKING_THRESHOLD) { - newResults.push({ ranking: ranking, item: item }); + function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { + if (indexArray) { + var newResults = []; + $.each(indexArray, function (i, item) { + item.category = category; + var ranking = rankMatch(matcher.exec(nameFunc(item)), category); + if (ranking < RANKING_THRESHOLD) { + newResults.push({ranking: ranking, item: item}); + } + return newResults.length <= MAX_RESULTS; + }); + return newResults.sort(function(e1, e2) { + return e1.ranking - e2.ranking; + }).map(function(e) { + return e.item; + }); } - return newResults.length <= MAX_RESULTS; - }); - return newResults - .sort(function (e1, e2) { - return e1.ranking - e2.ranking; - }) - .map(function (e) { - return e.item; - }); + return []; } - return []; - } - function searchIndex(indexArray, category, nameFunc) { - var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); - result = result.concat(primaryResults); - if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { - var secondaryResults = searchIndexWithMatcher( - indexArray, - fallbackMatcher, - category, - nameFunc, - ); - result = result.concat( - secondaryResults.filter(function (item) { - return primaryResults.indexOf(item) === -1; - }), - ); + function searchIndex(indexArray, category, nameFunc) { + var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); + result = result.concat(primaryResults); + if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { + var secondaryResults = searchIndexWithMatcher(indexArray, fallbackMatcher, category, nameFunc); + result = result.concat(secondaryResults.filter(function (item) { + return primaryResults.indexOf(item) === -1; + })); + } } - } - searchIndex(moduleSearchIndex, catModules, function (item) { - return item.l; - }); - searchIndex(packageSearchIndex, catPackages, function (item) { - return item.m && request.term.indexOf('/') > -1 ? item.m + '/' + item.l : item.l; - }); - searchIndex(typeSearchIndex, catTypes, function (item) { - return request.term.indexOf('.') > -1 ? item.p + '.' + item.l : item.l; - }); - searchIndex(memberSearchIndex, catMembers, function (item) { - return request.term.indexOf('.') > -1 ? item.p + '.' + item.c + '.' + item.l : item.l; - }); - searchIndex(tagSearchIndex, catSearchTags, function (item) { - return item.l; - }); + searchIndex(moduleSearchIndex, catModules, function(item) { return item.l; }); + searchIndex(packageSearchIndex, catPackages, function(item) { + return (item.m && request.term.indexOf("/") > -1) + ? (item.m + "/" + item.l) : item.l; + }); + searchIndex(typeSearchIndex, catTypes, function(item) { + return request.term.indexOf(".") > -1 ? item.p + "." + item.l : item.l; + }); + searchIndex(memberSearchIndex, catMembers, function(item) { + return request.term.indexOf(".") > -1 + ? item.p + "." + item.c + "." + item.l : item.l; + }); + searchIndex(tagSearchIndex, catSearchTags, function(item) { return item.l; }); - if (!indexFilesLoaded()) { - updateSearchResults = function () { - doSearch(request, response); - }; - result.unshift(loading); - } else { - updateSearchResults = function () {}; - } - response(result); -} -$(function () { - $('#search-input').catcomplete({ - minLength: 1, - delay: 300, - source: doSearch, - response: function (event, ui) { - if (!ui.content.length) { - ui.content.push(noResult); - } else { - $('#search-input').empty(); - } - }, - autoFocus: true, - focus: function (event, ui) { - return false; - }, - position: { - collision: 'flip', - }, - select: function (event, ui) { - if (ui.item.category) { - var url = getURLPrefix(ui); - if (ui.item.category === catModules) { - url += 'module-summary.html'; - } else if (ui.item.category === catPackages) { - if (ui.item.u) { - url = ui.item.u; - } else { - url += ui.item.l.replace(/\./g, '/') + '/package-summary.html'; - } - } else if (ui.item.category === catTypes) { - if (ui.item.u) { - url = ui.item.u; - } else if (ui.item.p === UNNAMED) { - url += ui.item.l + '.html'; - } else { - url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.l + '.html'; - } - } else if (ui.item.category === catMembers) { - if (ui.item.p === UNNAMED) { - url += ui.item.c + '.html' + '#'; - } else { - url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.c + '.html' + '#'; - } - if (ui.item.u) { - url += ui.item.u; - } else { - url += ui.item.l; - } - } else if (ui.item.category === catSearchTags) { - url += ui.item.u; + if (!indexFilesLoaded()) { + updateSearchResults = function() { + doSearch(request, response); } - if (top !== window) { - parent.classFrame.location = pathtoroot + url; - } else { - window.location.href = pathtoroot + url; + result.unshift(loading); + } else { + updateSearchResults = function() {}; + } + response(result); +} +$(function() { + $("#search-input").catcomplete({ + minLength: 1, + delay: 300, + source: doSearch, + response: function(event, ui) { + if (!ui.content.length) { + ui.content.push(noResult); + } else { + $("#search-input").empty(); + } + }, + autoFocus: true, + focus: function(event, ui) { + return false; + }, + position: { + collision: "flip" + }, + select: function(event, ui) { + if (ui.item.category) { + var url = getURLPrefix(ui); + if (ui.item.category === catModules) { + url += "module-summary.html"; + } else if (ui.item.category === catPackages) { + if (ui.item.u) { + url = ui.item.u; + } else { + url += ui.item.l.replace(/\./g, '/') + "/package-summary.html"; + } + } else if (ui.item.category === catTypes) { + if (ui.item.u) { + url = ui.item.u; + } else if (ui.item.p === UNNAMED) { + url += ui.item.l + ".html"; + } else { + url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.l + ".html"; + } + } else if (ui.item.category === catMembers) { + if (ui.item.p === UNNAMED) { + url += ui.item.c + ".html" + "#"; + } else { + url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.c + ".html" + "#"; + } + if (ui.item.u) { + url += ui.item.u; + } else { + url += ui.item.l; + } + } else if (ui.item.category === catSearchTags) { + url += ui.item.u; + } + if (top !== window) { + parent.classFrame.location = pathtoroot + url; + } else { + window.location.href = pathtoroot + url; + } + $("#search-input").focus(); + } } - $('#search-input').focus(); - } - }, - }); + }); }); diff --git a/docs/Vision/stylesheet.css b/docs/Vision/stylesheet.css index 236a306f..4a576bd2 100644 --- a/docs/Vision/stylesheet.css +++ b/docs/Vision/stylesheet.css @@ -12,89 +12,86 @@ */ body { - background-color: #ffffff; - color: #353833; - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size: 14px; - margin: 0; - padding: 0; - height: 100%; - width: 100%; + background-color:#ffffff; + color:#353833; + font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:14px; + margin:0; + padding:0; + height:100%; + width:100%; } iframe { - margin: 0; - padding: 0; - height: 100%; - width: 100%; - overflow-y: scroll; - border: none; -} -a:link, -a:visited { - text-decoration: none; - color: #4a6782; -} -a[href]:hover, -a[href]:focus { - text-decoration: none; - color: #bb7a2a; + margin:0; + padding:0; + height:100%; + width:100%; + overflow-y:scroll; + border:none; +} +a:link, a:visited { + text-decoration:none; + color:#4A6782; +} +a[href]:hover, a[href]:focus { + text-decoration:none; + color:#bb7a2a; } a[name] { - color: #353833; + color:#353833; } pre { - font-family: 'DejaVu Sans Mono', monospace; - font-size: 14px; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; } h1 { - font-size: 20px; + font-size:20px; } h2 { - font-size: 18px; + font-size:18px; } h3 { - font-size: 16px; + font-size:16px; } h4 { - font-size: 15px; + font-size:15px; } h5 { - font-size: 14px; + font-size:14px; } h6 { - font-size: 13px; + font-size:13px; } ul { - list-style-type: disc; + list-style-type:disc; } -code, -tt { - font-family: 'DejaVu Sans Mono', monospace; +code, tt { + font-family:'DejaVu Sans Mono', monospace; } :not(h1, h2, h3, h4, h5, h6) > code, :not(h1, h2, h3, h4, h5, h6) > tt { - font-size: 14px; - padding-top: 4px; - margin-top: 8px; - line-height: 1.4em; + font-size:14px; + padding-top:4px; + margin-top:8px; + line-height:1.4em; } dt code { - font-family: 'DejaVu Sans Mono', monospace; - font-size: 14px; - padding-top: 4px; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; } .summary-table dt code { - font-family: 'DejaVu Sans Mono', monospace; - font-size: 14px; - vertical-align: top; - padding-top: 4px; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + vertical-align:top; + padding-top:4px; } sup { - font-size: 8px; + font-size:8px; } button { - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size: 14px; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 14px; } /* * Styles for HTML generated by javadoc. @@ -106,654 +103,596 @@ button { * Styles for document title and copyright. */ .clear { - clear: both; - height: 0; - overflow: hidden; + clear:both; + height:0; + overflow:hidden; } .about-language { - float: right; - padding: 0 21px 8px 8px; - font-size: 11px; - margin-top: -9px; - height: 2.9em; + float:right; + padding:0 21px 8px 8px; + font-size:11px; + margin-top:-9px; + height:2.9em; } .legal-copy { - margin-left: 0.5em; + margin-left:.5em; } .tab { - background-color: #0066ff; - color: #ffffff; - padding: 8px; - width: 5em; - font-weight: bold; + background-color:#0066FF; + color:#ffffff; + padding:8px; + width:5em; + font-weight:bold; } /* * Styles for navigation bar. */ @media screen { - .flex-box { - position: fixed; - display: flex; - flex-direction: column; - height: 100%; - width: 100%; - } - .flex-header { - flex: 0 0 auto; - } - .flex-content { - flex: 1 1 auto; - overflow-y: auto; - } + .flex-box { + position:fixed; + display:flex; + flex-direction:column; + height: 100%; + width: 100%; + } + .flex-header { + flex: 0 0 auto; + } + .flex-content { + flex: 1 1 auto; + overflow-y: auto; + } } .top-nav { - background-color: #4d7a97; - color: #ffffff; - float: left; - padding: 0; - width: 100%; - clear: right; - min-height: 2.8em; - padding-top: 10px; - overflow: hidden; - font-size: 12px; + background-color:#4D7A97; + color:#FFFFFF; + float:left; + padding:0; + width:100%; + clear:right; + min-height:2.8em; + padding-top:10px; + overflow:hidden; + font-size:12px; } .sub-nav { - background-color: #dee3e9; - float: left; - width: 100%; - overflow: hidden; - font-size: 12px; + background-color:#dee3e9; + float:left; + width:100%; + overflow:hidden; + font-size:12px; } .sub-nav div { - clear: left; - float: left; - padding: 0 0 5px 6px; - text-transform: uppercase; + clear:left; + float:left; + padding:0 0 5px 6px; + text-transform:uppercase; } .sub-nav .nav-list { - padding-top: 5px; + padding-top:5px; } ul.nav-list { - display: block; - margin: 0 25px 0 0; - padding: 0; + display:block; + margin:0 25px 0 0; + padding:0; } ul.sub-nav-list { - float: left; - margin: 0 25px 0 0; - padding: 0; + float:left; + margin:0 25px 0 0; + padding:0; } ul.nav-list li { - list-style: none; - float: left; - padding: 5px 6px; - text-transform: uppercase; + list-style:none; + float:left; + padding: 5px 6px; + text-transform:uppercase; } .sub-nav .nav-list-search { - float: right; - margin: 0 0 0 0; - padding: 5px 6px; - clear: none; + float:right; + margin:0 0 0 0; + padding:5px 6px; + clear:none; } .nav-list-search label { - position: relative; - right: -16px; + position:relative; + right:-16px; } ul.sub-nav-list li { - list-style: none; - float: left; - padding-top: 10px; + list-style:none; + float:left; + padding-top:10px; } -.top-nav a:link, -.top-nav a:active, -.top-nav a:visited { - color: #ffffff; - text-decoration: none; - text-transform: uppercase; +.top-nav a:link, .top-nav a:active, .top-nav a:visited { + color:#FFFFFF; + text-decoration:none; + text-transform:uppercase; } .top-nav a:hover { - text-decoration: none; - color: #bb7a2a; - text-transform: uppercase; + text-decoration:none; + color:#bb7a2a; + text-transform:uppercase; } .nav-bar-cell1-rev { - background-color: #f8981d; - color: #253441; - margin: auto 5px; + background-color:#F8981D; + color:#253441; + margin: auto 5px; } .skip-nav { - position: absolute; - top: auto; - left: -9999px; - overflow: hidden; + position:absolute; + top:auto; + left:-9999px; + overflow:hidden; } /* * Hide navigation links and search box in print layout */ @media print { - ul.nav-list, - div.sub-nav { - display: none; - } + ul.nav-list, div.sub-nav { + display:none; + } } /* * Styles for page header and footer. */ .title { - color: #2c4557; - margin: 10px 0; + color:#2c4557; + margin:10px 0; } .sub-title { - margin: 5px 0 0 0; + margin:5px 0 0 0; } .header ul { - margin: 0 0 15px 0; - padding: 0; + margin:0 0 15px 0; + padding:0; } -.header ul li, -.footer ul li { - list-style: none; - font-size: 13px; +.header ul li, .footer ul li { + list-style:none; + font-size:13px; } /* * Styles for headings. */ body.class-declaration-page .summary h2, body.class-declaration-page .details h2, -body.class-use-page h2, -body.module-declaration-page .block-list h2 { - font-style: italic; - padding: 0; - margin: 15px 0; +body.class-use-page h2, +body.module-declaration-page .block-list h2 { + font-style: italic; + padding:0; + margin:15px 0; } body.class-declaration-page .summary h3, body.class-declaration-page .details h3, body.class-declaration-page .summary .inherited-list h2 { - background-color: #dee3e9; - border: 1px solid #d0d9e0; - margin: 0 0 6px -8px; - padding: 7px 5px; + background-color:#dee3e9; + border:1px solid #d0d9e0; + margin:0 0 6px -8px; + padding:7px 5px; } /* * Styles for page layout containers. */ main { - clear: both; - padding: 10px 20px; - position: relative; + clear:both; + padding:10px 20px; + position:relative; } dl.notes > dt { - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size: 12px; - font-weight: bold; - margin: 10px 0 0 0; - color: #4e4e4e; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:12px; + font-weight:bold; + margin:10px 0 0 0; + color:#4E4E4E; } dl.notes > dd { - margin: 5px 10px 10px 0; - font-size: 14px; - font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; + margin:5px 10px 10px 0; + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; } dl.name-value > dt { - margin-left: 1px; - font-size: 1.1em; - display: inline; - font-weight: bold; + margin-left:1px; + font-size:1.1em; + display:inline; + font-weight:bold; } dl.name-value > dd { - margin: 0 0 0 1px; - font-size: 1.1em; - display: inline; + margin:0 0 0 1px; + font-size:1.1em; + display:inline; } /* * Styles for lists. */ li.circle { - list-style: circle; + list-style:circle; } ul.horizontal li { - display: inline; - font-size: 0.9em; + display:inline; + font-size:0.9em; } div.inheritance { - margin: 0; - padding: 0; + margin:0; + padding:0; } div.inheritance div.inheritance { - margin-left: 2em; + margin-left:2em; } ul.block-list, ul.details-list, ul.member-list, ul.summary-list { - margin: 10px 0 10px 0; - padding: 0; + margin:10px 0 10px 0; + padding:0; } ul.block-list > li, ul.details-list > li, ul.member-list > li, ul.summary-list > li { - list-style: none; - margin-bottom: 15px; - line-height: 1.4; + list-style:none; + margin-bottom:15px; + line-height:1.4; } -.summary-table dl, -.summary-table dl dt, -.summary-table dl dd { - margin-top: 0; - margin-bottom: 1px; +.summary-table dl, .summary-table dl dt, .summary-table dl dd { + margin-top:0; + margin-bottom:1px; } -ul.see-list, -ul.see-list-long { - padding-left: 0; - list-style: none; +ul.see-list, ul.see-list-long { + padding-left: 0; + list-style: none; } ul.see-list li { - display: inline; + display: inline; } ul.see-list li:not(:last-child):after, ul.see-list-long li:not(:last-child):after { - content: ', '; - white-space: pre-wrap; + content: ", "; + white-space: pre-wrap; } /* * Styles for tables. */ -.summary-table, -.details-table { - width: 100%; - border-spacing: 0; - border-left: 1px solid #eee; - border-right: 1px solid #eee; - border-bottom: 1px solid #eee; - padding: 0; +.summary-table, .details-table { + width:100%; + border-spacing:0; + border-left:1px solid #EEE; + border-right:1px solid #EEE; + border-bottom:1px solid #EEE; + padding:0; } .caption { - position: relative; - text-align: left; - background-repeat: no-repeat; - color: #253441; - font-weight: bold; - clear: none; - overflow: hidden; - padding: 0; - padding-top: 10px; - padding-left: 1px; - margin: 0; - white-space: pre; -} -.caption a:link, -.caption a:visited { - color: #1f389c; + position:relative; + text-align:left; + background-repeat:no-repeat; + color:#253441; + font-weight:bold; + clear:none; + overflow:hidden; + padding:0; + padding-top:10px; + padding-left:1px; + margin:0; + white-space:pre; +} +.caption a:link, .caption a:visited { + color:#1f389c; } .caption a:hover, .caption a:active { - color: #ffffff; + color:#FFFFFF; } .caption span { - white-space: nowrap; - padding-top: 5px; - padding-left: 12px; - padding-right: 12px; - padding-bottom: 7px; - display: inline-block; - float: left; - background-color: #f8981d; - border: none; - height: 16px; + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + padding-bottom:7px; + display:inline-block; + float:left; + background-color:#F8981D; + border: none; + height:16px; } div.table-tabs { - padding: 10px 0 0 1px; - margin: 0; + padding:10px 0 0 1px; + margin:0; } div.table-tabs > button { - border: none; - cursor: pointer; - padding: 5px 12px 7px 12px; - font-weight: bold; - margin-right: 3px; + border: none; + cursor: pointer; + padding: 5px 12px 7px 12px; + font-weight: bold; + margin-right: 3px; } div.table-tabs > button.active-table-tab { - background: #f8981d; - color: #253441; + background: #F8981D; + color: #253441; } div.table-tabs > button.table-tab { - background: #4d7a97; - color: #ffffff; + background: #4D7A97; + color: #FFFFFF; } .two-column-summary { - display: grid; - grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); } .three-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); } .four-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax( - 10%, - auto - ); + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax(10%, auto); } @media screen and (max-width: 600px) { - .two-column-summary { - display: grid; - grid-template-columns: 1fr; - } + .two-column-summary { + display: grid; + grid-template-columns: 1fr; + } } @media screen and (max-width: 800px) { - .three-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(25%, auto); - } - .three-column-summary .col-last { - grid-column-end: span 2; - } + .three-column-summary { + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(25%, auto); + } + .three-column-summary .col-last { + grid-column-end: span 2; + } } @media screen and (max-width: 1000px) { - .four-column-summary { - display: grid; - grid-template-columns: minmax(15%, max-content) minmax(15%, auto); - } -} -.summary-table > div, -.details-table > div { - text-align: left; - padding: 8px 3px 3px 7px; -} -.col-first, -.col-second, -.col-last, -.col-constructor-name, -.col-summary-item-name { - vertical-align: top; - padding-right: 0; - padding-top: 8px; - padding-bottom: 3px; + .four-column-summary { + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + } +} +.summary-table > div, .details-table > div { + text-align:left; + padding: 8px 3px 3px 7px; +} +.col-first, .col-second, .col-last, .col-constructor-name, .col-summary-item-name { + vertical-align:top; + padding-right:0; + padding-top:8px; + padding-bottom:3px; } .table-header { - background: #dee3e9; - font-weight: bold; -} -.col-first, -.col-first { - font-size: 13px; -} -.col-second, -.col-second, -.col-last, -.col-constructor-name, -.col-summary-item-name, -.col-last { - font-size: 13px; + background:#dee3e9; + font-weight: bold; } -.col-first, -.col-second, -.col-constructor-name { - vertical-align: top; - overflow: auto; +.col-first, .col-first { + font-size:13px; +} +.col-second, .col-second, .col-last, .col-constructor-name, .col-summary-item-name, .col-last { + font-size:13px; +} +.col-first, .col-second, .col-constructor-name { + vertical-align:top; + overflow: auto; } .col-last { - white-space: normal; -} -.col-first a:link, -.col-first a:visited, -.col-second a:link, -.col-second a:visited, -.col-first a:link, -.col-first a:visited, -.col-second a:link, -.col-second a:visited, -.col-constructor-name a:link, -.col-constructor-name a:visited, -.col-summary-item-name a:link, -.col-summary-item-name a:visited, -.constant-values-container a:link, -.constant-values-container a:visited, -.all-classes-container a:link, -.all-classes-container a:visited, -.all-packages-container a:link, -.all-packages-container a:visited { - font-weight: bold; + white-space:normal; +} +.col-first a:link, .col-first a:visited, +.col-second a:link, .col-second a:visited, +.col-first a:link, .col-first a:visited, +.col-second a:link, .col-second a:visited, +.col-constructor-name a:link, .col-constructor-name a:visited, +.col-summary-item-name a:link, .col-summary-item-name a:visited, +.constant-values-container a:link, .constant-values-container a:visited, +.all-classes-container a:link, .all-classes-container a:visited, +.all-packages-container a:link, .all-packages-container a:visited { + font-weight:bold; } .table-sub-heading-color { - background-color: #eeeeff; + background-color:#EEEEFF; } -.even-row-color, -.even-row-color .table-header { - background-color: #ffffff; +.even-row-color, .even-row-color .table-header { + background-color:#FFFFFF; } -.odd-row-color, -.odd-row-color .table-header { - background-color: #eeeeef; +.odd-row-color, .odd-row-color .table-header { + background-color:#EEEEEF; } /* * Styles for contents. */ .deprecated-content { - margin: 0; - padding: 10px 0; + margin:0; + padding:10px 0; } div.block { - font-size: 14px; - font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; } .col-last div { - padding-top: 0; + padding-top:0; } .col-last a { - padding-bottom: 3px; + padding-bottom:3px; } .module-signature, .package-signature, .type-signature, .member-signature { - font-family: 'DejaVu Sans Mono', monospace; - font-size: 14px; - margin: 14px 0; - white-space: pre-wrap; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + margin:14px 0; + white-space: pre-wrap; } .module-signature, .package-signature, .type-signature { - margin-top: 0; + margin-top: 0; } .member-signature .type-parameters-long, .member-signature .parameters, .member-signature .exceptions { - display: inline-block; - vertical-align: top; - white-space: pre; + display: inline-block; + vertical-align: top; + white-space: pre; } .member-signature .type-parameters { - white-space: normal; + white-space: normal; } /* * Styles for formatting effect. */ .source-line-no { - color: green; - padding: 0 30px 0 0; + color:green; + padding:0 30px 0 0; } h1.hidden { - visibility: hidden; - overflow: hidden; - font-size: 10px; + visibility:hidden; + overflow:hidden; + font-size:10px; } .block { - display: block; - margin: 0 10px 5px 0; - color: #474747; -} -.deprecated-label, -.descfrm-type-label, -.implementation-label, -.member-name-label, -.member-name-link, -.module-label-in-package, -.module-label-in-type, -.override-specify-label, -.package-label-in-type, -.package-hierarchy-label, -.type-name-label, -.type-name-link, -.search-tag-link, -.preview-label { - font-weight: bold; -} -.deprecation-comment, -.help-footnote, -.preview-comment { - font-style: italic; + display:block; + margin:0 10px 5px 0; + color:#474747; +} +.deprecated-label, .descfrm-type-label, .implementation-label, .member-name-label, .member-name-link, +.module-label-in-package, .module-label-in-type, .override-specify-label, .package-label-in-type, +.package-hierarchy-label, .type-name-label, .type-name-link, .search-tag-link, .preview-label { + font-weight:bold; +} +.deprecation-comment, .help-footnote, .preview-comment { + font-style:italic; } .deprecation-block { - font-size: 14px; - font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; - border-style: solid; - border-width: thin; - border-radius: 10px; - padding: 10px; - margin-bottom: 10px; - margin-right: 10px; - display: inline-block; + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + border-style:solid; + border-width:thin; + border-radius:10px; + padding:10px; + margin-bottom:10px; + margin-right:10px; + display:inline-block; } .preview-block { - font-size: 14px; - font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; - border-style: solid; - border-width: thin; - border-radius: 10px; - padding: 10px; - margin-bottom: 10px; - margin-right: 10px; - display: inline-block; + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + border-style:solid; + border-width:thin; + border-radius:10px; + padding:10px; + margin-bottom:10px; + margin-right:10px; + display:inline-block; } div.block div.deprecation-comment { - font-style: normal; + font-style:normal; } /* * Styles specific to HTML5 elements. */ -main, -nav, -header, -footer, -section { - display: block; +main, nav, header, footer, section { + display:block; } /* * Styles for javadoc search. */ .ui-autocomplete-category { - font-weight: bold; - font-size: 15px; - padding: 7px 0 7px 3px; - background-color: #4d7a97; - color: #ffffff; + font-weight:bold; + font-size:15px; + padding:7px 0 7px 3px; + background-color:#4D7A97; + color:#FFFFFF; } .result-item { - font-size: 13px; + font-size:13px; } .ui-autocomplete { - max-height: 85%; - max-width: 65%; - overflow-y: scroll; - overflow-x: scroll; - white-space: nowrap; - box-shadow: - 0 3px 6px rgba(0, 0, 0, 0.16), - 0 3px 6px rgba(0, 0, 0, 0.23); + max-height:85%; + max-width:65%; + overflow-y:scroll; + overflow-x:scroll; + white-space:nowrap; + box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23); } ul.ui-autocomplete { - position: fixed; - z-index: 999999; - background-color: #ffffff; + position:fixed; + z-index:999999; + background-color: #FFFFFF; } -ul.ui-autocomplete li { - float: left; - clear: both; - width: 100%; +ul.ui-autocomplete li { + float:left; + clear:both; + width:100%; } .result-highlight { - font-weight: bold; + font-weight:bold; } .ui-autocomplete .result-item { - font-size: inherit; + font-size: inherit; } #search-input { - background-image: url('resources/glass.png'); - background-size: 13px; - background-repeat: no-repeat; - background-position: 2px 3px; - padding-left: 20px; - position: relative; - right: -18px; - width: 400px; + background-image:url('resources/glass.png'); + background-size:13px; + background-repeat:no-repeat; + background-position:2px 3px; + padding-left:20px; + position:relative; + right:-18px; + width:400px; } #reset-button { - background-color: rgb(255, 255, 255); - background-image: url('resources/x.png'); - background-position: center; - background-repeat: no-repeat; - background-size: 12px; - border: 0 none; - width: 16px; - height: 16px; - position: relative; - left: -4px; - top: -4px; - font-size: 0px; + background-color: rgb(255,255,255); + background-image:url('resources/x.png'); + background-position:center; + background-repeat:no-repeat; + background-size:12px; + border:0 none; + width:16px; + height:16px; + position:relative; + left:-4px; + top:-4px; + font-size:0px; } .watermark { - color: #545454; + color:#545454; } .search-tag-desc-result { - font-style: italic; - font-size: 11px; + font-style:italic; + font-size:11px; } .search-tag-holder-result { - font-style: italic; - font-size: 12px; + font-style:italic; + font-size:12px; } .search-tag-result:target { - background-color: yellow; + background-color:yellow; } .module-graph span { - display: none; - position: absolute; + display:none; + position:absolute; } .module-graph:hover span { - display: block; - margin: -100px 0 0 100px; - z-index: 1; + display:block; + margin: -100px 0 0 100px; + z-index: 1; } .inherited-list { - margin: 10px 0 10px 0; + margin: 10px 0 10px 0; } section.class-description { - line-height: 1.4; -} -.summary section[class$='-summary'], -.details section[class$='-details'], -.class-uses .detail, -.serialized-class-details { - padding: 0px 20px 5px 10px; - border: 1px solid #ededed; - background-color: #f8f8f8; -} -.inherited-list, -section[class$='-details'] .detail { - padding: 0 0 5px 8px; - background-color: #ffffff; - border: none; + line-height: 1.4; +} +.summary section[class$="-summary"], .details section[class$="-details"], +.class-uses .detail, .serialized-class-details { + padding: 0px 20px 5px 10px; + border: 1px solid #ededed; + background-color: #f8f8f8; +} +.inherited-list, section[class$="-details"] .detail { + padding:0 0 5px 8px; + background-color:#ffffff; + border:none; } .vertical-separator { - padding: 0 5px; + padding: 0 5px; } ul.help-section-list { - margin: 0; + margin: 0; } ul.help-subtoc > li { display: inline-block; @@ -761,34 +700,32 @@ ul.help-subtoc > li { font-size: smaller; } ul.help-subtoc > li::before { - content: '\2022'; - padding-right: 2px; + content: "\2022" ; + padding-right:2px; } span.help-note { - font-style: italic; + font-style: italic; } /* * Indicator icon for external links. */ -main a[href*="://"]::after -{ - content: ''; - display: inline-block; - background-image: url('data:image/svg+xml; utf8, \ +main a[href*="://"]::after { + content:""; + display:inline-block; + background-image:url('data:image/svg+xml; utf8, \ \ \ '); - background-size: 100% 100%; - width: 7px; - height: 7px; - margin-left: 2px; - margin-bottom: 4px; + background-size:100% 100%; + width:7px; + height:7px; + margin-left:2px; + margin-bottom:4px; } main a[href*="://"]:hover::after, -main a[href*="://"]:focus::after -{ - background-image: url('data:image/svg+xml; utf8, \ +main a[href*="://"]:focus::after { + background-image:url('data:image/svg+xml; utf8, \ \ \ @@ -817,135 +754,116 @@ main a[href*="://"]:focus::after table.borderless, table.plain, table.striped { - margin-top: 10px; - margin-bottom: 10px; + margin-top: 10px; + margin-bottom: 10px; } table.borderless > caption, table.plain > caption, table.striped > caption { - font-weight: bold; - font-size: smaller; + font-weight: bold; + font-size: smaller; } -table.borderless th, -table.borderless td, -table.plain th, -table.plain td, -table.striped th, -table.striped td { - padding: 2px 5px; +table.borderless th, table.borderless td, +table.plain th, table.plain td, +table.striped th, table.striped td { + padding: 2px 5px; } table.borderless, -table.borderless > thead > tr > th, -table.borderless > tbody > tr > th, -table.borderless > tr > th, -table.borderless > thead > tr > td, -table.borderless > tbody > tr > td, -table.borderless > tr > td { - border: none; -} -table.borderless > thead > tr, -table.borderless > tbody > tr, -table.borderless > tr { - background-color: transparent; +table.borderless > thead > tr > th, table.borderless > tbody > tr > th, table.borderless > tr > th, +table.borderless > thead > tr > td, table.borderless > tbody > tr > td, table.borderless > tr > td { + border: none; +} +table.borderless > thead > tr, table.borderless > tbody > tr, table.borderless > tr { + background-color: transparent; } table.plain { - border-collapse: collapse; - border: 1px solid black; -} -table.plain > thead > tr, -table.plain > tbody tr, -table.plain > tr { - background-color: transparent; -} -table.plain > thead > tr > th, -table.plain > tbody > tr > th, -table.plain > tr > th, -table.plain > thead > tr > td, -table.plain > tbody > tr > td, -table.plain > tr > td { - border: 1px solid black; + border-collapse: collapse; + border: 1px solid black; +} +table.plain > thead > tr, table.plain > tbody tr, table.plain > tr { + background-color: transparent; +} +table.plain > thead > tr > th, table.plain > tbody > tr > th, table.plain > tr > th, +table.plain > thead > tr > td, table.plain > tbody > tr > td, table.plain > tr > td { + border: 1px solid black; } table.striped { - border-collapse: collapse; - border: 1px solid black; + border-collapse: collapse; + border: 1px solid black; } table.striped > thead { - background-color: #e3e3e3; + background-color: #E3E3E3; } -table.striped > thead > tr > th, -table.striped > thead > tr > td { - border: 1px solid black; +table.striped > thead > tr > th, table.striped > thead > tr > td { + border: 1px solid black; } table.striped > tbody > tr:nth-child(even) { - background-color: #eee; + background-color: #EEE } table.striped > tbody > tr:nth-child(odd) { - background-color: #fff; + background-color: #FFF } -table.striped > tbody > tr > th, -table.striped > tbody > tr > td { - border-left: 1px solid black; - border-right: 1px solid black; +table.striped > tbody > tr > th, table.striped > tbody > tr > td { + border-left: 1px solid black; + border-right: 1px solid black; } table.striped > tbody > tr > th { - font-weight: normal; + font-weight: normal; } /** * Tweak font sizes and paddings for small screens. */ @media screen and (max-width: 1050px) { - #search-input { - width: 300px; - } + #search-input { + width: 300px; + } } @media screen and (max-width: 800px) { - #search-input { - width: 200px; - } - .top-nav, - .bottom-nav { - font-size: 11px; - padding-top: 6px; - } - .sub-nav { - font-size: 11px; - } - .about-language { - padding-right: 16px; - } - ul.nav-list li, - .sub-nav .nav-list-search { - padding: 6px; - } - ul.sub-nav-list li { - padding-top: 5px; - } - main { - padding: 10px; - } - .summary section[class$='-summary'], - .details section[class$='-details'], - .class-uses .detail, - .serialized-class-details { - padding: 0 8px 5px 8px; - } - body { - -webkit-text-size-adjust: none; - } + #search-input { + width: 200px; + } + .top-nav, + .bottom-nav { + font-size: 11px; + padding-top: 6px; + } + .sub-nav { + font-size: 11px; + } + .about-language { + padding-right: 16px; + } + ul.nav-list li, + .sub-nav .nav-list-search { + padding: 6px; + } + ul.sub-nav-list li { + padding-top: 5px; + } + main { + padding: 10px; + } + .summary section[class$="-summary"], .details section[class$="-details"], + .class-uses .detail, .serialized-class-details { + padding: 0 8px 5px 8px; + } + body { + -webkit-text-size-adjust: none; + } } @media screen and (max-width: 500px) { - #search-input { - width: 150px; - } - .top-nav, - .bottom-nav { - font-size: 10px; - } - .sub-nav { - font-size: 10px; - } - .about-language { - font-size: 10px; - padding-right: 12px; - } + #search-input { + width: 150px; + } + .top-nav, + .bottom-nav { + font-size: 10px; + } + .sub-nav { + font-size: 10px; + } + .about-language { + font-size: 10px; + padding-right: 12px; + } } diff --git a/docs/Vision/tag-search-index.js b/docs/Vision/tag-search-index.js index 8f19e1f9..0367dae6 100644 --- a/docs/Vision/tag-search-index.js +++ b/docs/Vision/tag-search-index.js @@ -1,2 +1 @@ -tagSearchIndex = []; -updateSearchResults(); +tagSearchIndex = [];updateSearchResults(); \ No newline at end of file diff --git a/docs/Vision/type-search-index.js b/docs/Vision/type-search-index.js index 7b85e10a..f0bb9b4c 100644 --- a/docs/Vision/type-search-index.js +++ b/docs/Vision/type-search-index.js @@ -1,9 +1 @@ -typeSearchIndex = [ - { l: 'All Classes and Interfaces', u: 'allclasses-index.html' }, - { p: 'com.technototes.vision.hardware', l: 'Camera' }, - { p: 'com.technototes.vision.hardware', l: 'InternalCamera' }, - { p: 'com.technototes.vision.subsystem', l: 'PipelineSubsystem' }, - { p: 'com.technototes.vision.hardware', l: 'SwitchableWebcam' }, - { p: 'com.technototes.vision.hardware', l: 'Webcam' }, -]; -updateSearchResults(); +typeSearchIndex = [{"l":"All Classes and Interfaces","u":"allclasses-index.html"},{"p":"com.technototes.vision.hardware","l":"Camera"},{"p":"com.technototes.vision.hardware","l":"InternalCamera"},{"p":"com.technototes.vision.subsystem","l":"PipelineSubsystem"},{"p":"com.technototes.vision.hardware","l":"SwitchableWebcam"},{"p":"com.technototes.vision.hardware","l":"Webcam"}];updateSearchResults(); \ No newline at end of file From 5d778db7773f91b5e7e02a86c6a804bc6e4be185 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 19 Nov 2023 11:02:34 -0800 Subject: [PATCH 06/34] Updated prettier, formatted stuff --- .../com/technototes/library/logger/Log.java | 1 - .../technototes/library/logger/Logger.java | 15 +- .../library/logger/entry/BooleanEntry.java | 8 +- .../library/logger/entry/NumberEntry.java | 1 - docs/Path/allclasses-index.html | 1248 +- docs/Path/allpackages-index.html | 170 +- docs/Path/help-doc.html | 437 +- docs/Path/index-all.html | 7753 ++++++- docs/Path/index.html | 189 +- docs/Path/jquery-ui.overrides.css | 6 +- docs/Path/member-search-index.js | 1564 +- docs/Path/module-search-index.js | 3 +- docs/Path/overview-summary.html | 48 +- docs/Path/overview-tree.html | 1421 +- docs/Path/package-search-index.js | 11 +- docs/Path/script.js | 156 +- docs/Path/search.js | 608 +- docs/Path/serialized-form.html | 227 +- docs/Path/stylesheet.css | 1092 +- docs/Path/tag-search-index.js | 3 +- docs/Path/type-search-index.js | 89 +- docs/TechnoLib/allclasses-index.html | 1939 +- docs/TechnoLib/allpackages-index.html | 268 +- docs/TechnoLib/constant-values.html | 349 +- docs/TechnoLib/deprecated-list.html | 311 +- docs/TechnoLib/help-doc.html | 451 +- docs/TechnoLib/index-all.html | 17322 +++++++++++++--- docs/TechnoLib/index.html | 308 +- docs/TechnoLib/jquery-ui.overrides.css | 6 +- docs/TechnoLib/member-search-index.js | 2291 +- docs/TechnoLib/module-search-index.js | 3 +- docs/TechnoLib/overview-summary.html | 48 +- docs/TechnoLib/overview-tree.html | 1752 +- docs/TechnoLib/package-search-index.js | 23 +- docs/TechnoLib/script.js | 156 +- docs/TechnoLib/search.js | 608 +- docs/TechnoLib/stylesheet.css | 1092 +- docs/TechnoLib/tag-search-index.js | 3 +- docs/TechnoLib/type-search-index.js | 115 +- docs/Vision/allclasses-index.html | 216 +- docs/Vision/allpackages-index.html | 142 +- docs/Vision/deprecated-list.html | 154 +- docs/Vision/help-doc.html | 438 +- docs/Vision/index-all.html | 1174 +- docs/Vision/index.html | 150 +- docs/Vision/jquery-ui.overrides.css | 6 +- docs/Vision/member-search-index.js | 178 +- docs/Vision/module-search-index.js | 3 +- docs/Vision/overview-summary.html | 48 +- docs/Vision/overview-tree.html | 218 +- docs/Vision/package-search-index.js | 7 +- docs/Vision/script.js | 156 +- docs/Vision/search.js | 608 +- docs/Vision/stylesheet.css | 1092 +- docs/Vision/tag-search-index.js | 3 +- docs/Vision/type-search-index.js | 10 +- package.json | 2 +- 57 files changed, 36391 insertions(+), 10309 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java b/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java index 67d61546..d734833d 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/Log.java @@ -107,6 +107,5 @@ * @return The name as a string */ String name() default ""; - } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java index 693fabee..9bfef275 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java @@ -181,21 +181,10 @@ private void set(Annotation[] a, Supplier m) { Entry e = null; for (Annotation as : a) { if (as instanceof Log.Number) { - e = - new NumberEntry( - ((Log.Number) as).name(), - (Supplier) m, - ((Log.Number) as).index() - ); + e = new NumberEntry(((Log.Number) as).name(), (Supplier) m, ((Log.Number) as).index()); e.setPriority(((Log.Number) as).priority()); } else if (as instanceof Log) { - e = - new StringEntry( - ((Log) as).name(), - (Supplier) m, - ((Log) as).index(), - ((Log) as).format() - ); + e = new StringEntry(((Log) as).name(), (Supplier) m, ((Log) as).index(), ((Log) as).format()); e.setPriority(((Log) as).priority()); } else if (as instanceof Log.Boolean) { e = diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java index e6521b76..4a221789 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/BooleanEntry.java @@ -7,13 +7,7 @@ public class BooleanEntry extends Entry { private String trueEntry, falseEntry; - public BooleanEntry( - String n, - Supplier s, - int index, - String wt, - String wf - ) { + public BooleanEntry(String n, Supplier s, int index, String wt, String wf) { super(n, s, index); trueEntry = wt; falseEntry = wf; diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberEntry.java b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberEntry.java index 72b01293..b08f1f1f 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberEntry.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/entry/NumberEntry.java @@ -11,7 +11,6 @@ public NumberEntry(String n, Supplier s, int x) { super(n, s, x); } - @Override public String toString() { return numberColor.format(get()); diff --git a/docs/Path/allclasses-index.html b/docs/Path/allclasses-index.html index 3a2573d4..6a44fed8 100644 --- a/docs/Path/allclasses-index.html +++ b/docs/Path/allclasses-index.html @@ -1,257 +1,995 @@ - + - - -All Classes and Interfaces (Path API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    All Classes and Interfaces

    -
    -
    -
    -
    -
    -
    Class
    -
    Description
    - -
    -
    IMU axes signs in the order XYZ (after remapping).
    -
    - -
    -
    Various utility functions for the BNO055 IMU.
    -
    - -
     
    - -
     
    - -
     
    - -
    -
    Set of helper functions for drawing Road Runner paths and trajectories on dashboard canvases.
    -
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
    -
    Utility functions for log files.
    -
    - -
    -
    Collection of utilites for interacting with Lynx modules.
    -
    - -
    -
    Parsed representation of a Lynx module firmware version.
    -
    - -
    -
    Exception indicating an outdated Lynx firmware version.
    -
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
    -
    Various regression utilities.
    -
    - -
    -
    Feedforward parameter estimates from the ramp regression and additional summary statistics
    -
    - -
    -
    Feedforward parameter estimates from the ramp regression and additional summary statistics
    -
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    - -
     
    -
    -
    -
    -
    -
    -
    - + + + All Classes and Interfaces (Path API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    All Classes and Interfaces

    +
    +
    +
    + +
    +
    +
    +
    Class
    +
    Description
    +
    + AxesSigns +
    +
    +
    IMU axes signs in the order XYZ (after remapping).
    +
    + +
    +
    Various utility functions for the BNO055 IMU.
    +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +
    + Set of helper functions for drawing Road Runner paths and trajectories on + dashboard canvases. +
    +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +
    Utility functions for log files.
    +
    + +
    +
    Collection of utilites for interacting with Lynx modules.
    +
    + +
    +
    Parsed representation of a Lynx module firmware version.
    +
    + +
    +
    Exception indicating an outdated Lynx firmware version.
    +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +
    Various regression utilities.
    +
    + +
    +
    + Feedforward parameter estimates from the ramp regression and additional summary + statistics +
    +
    + +
    +
    + Feedforward parameter estimates from the ramp regression and additional summary + statistics +
    +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    + +
    +   +
    +
    +
    +
    +
    +
    +
    + diff --git a/docs/Path/allpackages-index.html b/docs/Path/allpackages-index.html index 387f5c74..18ff0e7a 100644 --- a/docs/Path/allpackages-index.html +++ b/docs/Path/allpackages-index.html @@ -1,73 +1,101 @@ - + - - -All Packages (Path API) - - - - - - - - - - - - - - -
    - - -
    - + + + All Packages (Path API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    All Packages

    +
    +
    Package Summary
    + +
    +
    +
    + diff --git a/docs/Path/help-doc.html b/docs/Path/help-doc.html index a2e7a2eb..5d7423c3 100644 --- a/docs/Path/help-doc.html +++ b/docs/Path/help-doc.html @@ -1,180 +1,261 @@ - + - - -API Help (Path API) - - - - - - - - - - - - - - -
    - -
    -
    -

    JavaDoc Help

    - -
    -
    -

    Navigation

    -Starting from the Overview page, you can browse the documentation using the links in each page, and in the navigation bar at the top of each page. The Index and Search box allow you to navigate to specific declarations and summary pages, including: All Packages, All Classes and Interfaces - -
    -
    -
    -

    Kinds of Pages

    -The following sections describe the different kinds of pages in this collection. -
    -

    Overview

    -

    The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

    -
    -
    -

    Package

    -

    Each package has a page that contains a list of its classes and interfaces, with a summary for each. These pages may contain the following categories:

    -
      -
    • Interfaces
    • -
    • Classes
    • -
    • Enum Classes
    • -
    • Exceptions
    • -
    • Errors
    • -
    • Annotation Interfaces
    • -
    -
    -
    -

    Class or Interface

    -

    Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a declaration and description, member summary tables, and detailed member descriptions. Entries in each of these sections are omitted if they are empty or not applicable.

    -
      -
    • Class Inheritance Diagram
    • -
    • Direct Subclasses
    • -
    • All Known Subinterfaces
    • -
    • All Known Implementing Classes
    • -
    • Class or Interface Declaration
    • -
    • Class or Interface Description
    • -
    -
    -
      -
    • Nested Class Summary
    • -
    • Enum Constant Summary
    • -
    • Field Summary
    • -
    • Property Summary
    • -
    • Constructor Summary
    • -
    • Method Summary
    • -
    • Required Element Summary
    • -
    • Optional Element Summary
    • -
    -
    -
      -
    • Enum Constant Details
    • -
    • Field Details
    • -
    • Property Details
    • -
    • Constructor Details
    • -
    • Method Details
    • -
    • Element Details
    • -
    -

    Note: Annotation interfaces have required and optional elements, but not methods. Only enum classes have enum constants. The components of a record class are displayed as part of the declaration of the record class. Properties are a feature of JavaFX.

    -

    The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.

    -
    -
    -

    Other Files

    -

    Packages and modules may contain pages with additional information related to the declarations nearby.

    -
    -
    -

    Tree (Class Hierarchy)

    -

    There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. Classes are organized by inheritance structure starting with java.lang.Object. Interfaces do not inherit from java.lang.Object.

    -
      -
    • When viewing the Overview page, clicking on TREE displays the hierarchy for all packages.
    • -
    • When viewing a particular package, class or interface page, clicking on TREE displays the hierarchy for only that package.
    • -
    -
    -
    -

    Serialized Form

    -

    Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to those who implement rather than use the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See Also" section of the class description.

    -
    -
    -

    All Packages

    -

    The All Packages page contains an alphabetic index of all packages contained in the documentation.

    -
    -
    -

    All Classes and Interfaces

    -

    The All Classes and Interfaces page contains an alphabetic index of all classes and interfaces contained in the documentation, including annotation interfaces, enum classes, and record classes.

    -
    -
    -

    Index

    -

    The Index contains an alphabetic index of all classes, interfaces, constructors, methods, and fields in the documentation, as well as summary pages such as All Packages, All Classes and Interfaces.

    -
    -
    -
    -This help file applies to API documentation generated by the standard doclet.
    -
    -
    - + + + API Help (Path API) + + + + + + + + + + + + + + +
    + +
    +
    +

    JavaDoc Help

    + +
    +
    +

    Navigation

    + Starting from the Overview page, you can browse the + documentation using the links in each page, and in the navigation bar at the top of each + page. The Index and Search box allow you to navigate to + specific declarations and summary pages, including: + All Packages, + All Classes and Interfaces + +
    +
    +
    +

    Kinds of Pages

    + The following sections describe the different kinds of pages in this collection. +
    +

    Overview

    +

    + The Overview page is the front page of this API document + and provides a list of all packages with a summary for each. This page can also + contain an overall description of the set of packages. +

    +
    +
    +

    Package

    +

    + Each package has a page that contains a list of its classes and interfaces, with a + summary for each. These pages may contain the following categories: +

    +
      +
    • Interfaces
    • +
    • Classes
    • +
    • Enum Classes
    • +
    • Exceptions
    • +
    • Errors
    • +
    • Annotation Interfaces
    • +
    +
    +
    +

    Class or Interface

    +

    + Each class, interface, nested class and nested interface has its own separate page. + Each of these pages has three sections consisting of a declaration and description, + member summary tables, and detailed member descriptions. Entries in each of these + sections are omitted if they are empty or not applicable. +

    +
      +
    • Class Inheritance Diagram
    • +
    • Direct Subclasses
    • +
    • All Known Subinterfaces
    • +
    • All Known Implementing Classes
    • +
    • Class or Interface Declaration
    • +
    • Class or Interface Description
    • +
    +
    +
      +
    • Nested Class Summary
    • +
    • Enum Constant Summary
    • +
    • Field Summary
    • +
    • Property Summary
    • +
    • Constructor Summary
    • +
    • Method Summary
    • +
    • Required Element Summary
    • +
    • Optional Element Summary
    • +
    +
    +
      +
    • Enum Constant Details
    • +
    • Field Details
    • +
    • Property Details
    • +
    • Constructor Details
    • +
    • Method Details
    • +
    • Element Details
    • +
    +

    + Note: Annotation interfaces have required and + optional elements, but not methods. Only enum classes have enum constants. The + components of a record class are displayed as part of the declaration of the record + class. Properties are a feature of JavaFX. +

    +

    + The summary entries are alphabetical, while the detailed descriptions are in the + order they appear in the source code. This preserves the logical groupings + established by the programmer. +

    +
    +
    +

    Other Files

    +

    + Packages and modules may contain pages with additional information related to the + declarations nearby. +

    +
    +
    +

    Tree (Class Hierarchy)

    +

    + There is a Class Hierarchy page for all packages, + plus a hierarchy for each package. Each hierarchy page contains a list of classes + and a list of interfaces. Classes are organized by inheritance structure starting + with java.lang.Object. Interfaces do not inherit from + java.lang.Object. +

    +
      +
    • + When viewing the Overview page, clicking on TREE displays the hierarchy for all + packages. +
    • +
    • + When viewing a particular package, class or interface page, clicking on TREE + displays the hierarchy for only that package. +
    • +
    +
    +
    +

    Serialized Form

    +

    + Each serializable or externalizable class has a description of its serialization + fields and methods. This information is of interest to those who implement rather + than use the API. While there is no link in the navigation bar, you can get to this + information by going to any serialized class and clicking "Serialized Form" in the + "See Also" section of the class description. +

    +
    +
    +

    All Packages

    +

    + The All Packages page contains an alphabetic + index of all packages contained in the documentation. +

    +
    +
    +

    All Classes and Interfaces

    +

    + The All Classes and Interfaces page contains an + alphabetic index of all classes and interfaces contained in the documentation, + including annotation interfaces, enum classes, and record classes. +

    +
    +
    +

    Index

    +

    + The Index contains an alphabetic index of all classes, + interfaces, constructors, methods, and fields in the documentation, as well as + summary pages such as All Packages, + All Classes and Interfaces. +

    +
    +
    +
    + This help file applies to API documentation generated by the standard doclet. +
    +
    +
    + diff --git a/docs/Path/index-all.html b/docs/Path/index-all.html index d31da351..d3ff9630 100644 --- a/docs/Path/index-all.html +++ b/docs/Path/index-all.html @@ -1,1155 +1,6602 @@ - + - - -Index (Path API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Index

    -
    -A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Serialized Form -

    A

    -
    -
    AccelResult(double, double) - Constructor for class com.technototes.path.util.RegressionUtil.AccelResult
    -
     
    -
    addDisplacementMarker(double, double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    addDisplacementMarker(double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    addDisplacementMarker(DisplacementProducer, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    addDisplacementMarker(MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    addSpatialMarker(Vector2d, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    addTemporalMarker(double, double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    addTemporalMarker(double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    addTemporalMarker(MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    addTemporalMarker(TimeProducer, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    addTrajectory(Trajectory) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    AxesSigns - Enum Class in com.technototes.path.util
    -
    -
    IMU axes signs in the order XYZ (after remapping).
    -
    -
    AXIAL_PID - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    -

    B

    -
    -
    back(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    back(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    batteryVoltageSensor - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    BNO055IMUUtil - Class in com.technototes.path.util
    -
    -
    Various utility functions for the BNO055 IMU.
    -
    -
    BNO055IMUUtil() - Constructor for class com.technototes.path.util.BNO055IMUUtil
    -
     
    -
    build() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    bVal - Variable in enum class com.technototes.path.util.AxesSigns
    -
     
    -
    -

    C

    -
    -
    COLOR_ACTIVE_TRAJECTORY - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    COLOR_ACTIVE_TURN - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    COLOR_ACTIVE_WAIT - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    COLOR_INACTIVE_TRAJECTORY - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    COLOR_INACTIVE_TURN - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    COLOR_INACTIVE_WAIT - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    com.technototes.path.command - package com.technototes.path.command
    -
     
    -
    com.technototes.path.geometry - package com.technototes.path.geometry
    -
     
    -
    com.technototes.path.subsystem - package com.technototes.path.subsystem
    -
     
    -
    com.technototes.path.trajectorysequence - package com.technototes.path.trajectorysequence
    -
     
    -
    com.technototes.path.trajectorysequence.sequencesegment - package com.technototes.path.trajectorysequence.sequencesegment
    -
     
    -
    com.technototes.path.util - package com.technototes.path.util
    -
     
    -
    compareTo(LynxModuleUtil.LynxFirmwareVersion) - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    -
     
    -
    ConfigurablePose - Class in com.technototes.path.geometry
    -
     
    -
    ConfigurablePose() - Constructor for class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    ConfigurablePose(double, double) - Constructor for class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    ConfigurablePose(double, double, double) - Constructor for class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    ConfigurablePose(Pose2d) - Constructor for class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    ConfigurablePose(Vector2d) - Constructor for class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    ConfigurablePose(Vector2d, double) - Constructor for class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    ConfigurablePoseD - Class in com.technototes.path.geometry
    -
     
    -
    ConfigurablePoseD() - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    ConfigurablePoseD(double, double) - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    ConfigurablePoseD(double, double, double) - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    ConfigurablePoseD(Pose2d) - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    ConfigurablePoseD(Vector2d) - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    ConfigurablePoseD(Vector2d, double) - Constructor for class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    ConfigurableVector - Class in com.technototes.path.geometry
    -
     
    -
    ConfigurableVector() - Constructor for class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    ConfigurableVector(double, double) - Constructor for class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    ConfigurableVector(Vector2d) - Constructor for class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    CROSS_TRACK_PID - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    -

    D

    -
    -
    DashboardUtil - Class in com.technototes.path.util
    -
    -
    Set of helper functions for drawing Road Runner paths and trajectories on dashboard canvases.
    -
    -
    DashboardUtil() - Constructor for class com.technototes.path.util.DashboardUtil
    -
     
    -
    DeadWheelConstants - Interface in com.technototes.path.subsystem
    -
     
    -
    DeadWheelConstants.EncoderOverflow - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    DeadWheelConstants.ForwardOffset - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    DeadWheelConstants.GearRatio - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    DeadWheelConstants.LateralDistance - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    DeadWheelConstants.TicksPerRev - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    DeadWheelConstants.WheelRadius - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    DistanceSensorLocalizer - Class in com.technototes.path.subsystem
    -
     
    -
    DistanceSensorLocalizer(IGyro, Map<IDistanceSensor, Pose2d>) - Constructor for class com.technototes.path.subsystem.DistanceSensorLocalizer
    -
     
    -
    DO_DASH - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    drawPoseHistory(Canvas, List<Pose2d>) - Static method in class com.technototes.path.util.DashboardUtil
    -
     
    -
    drawRobot(Canvas, Pose2d) - Static method in class com.technototes.path.util.DashboardUtil
    -
     
    -
    drawSampledPath(Canvas, Path) - Static method in class com.technototes.path.util.DashboardUtil
    -
     
    -
    drawSampledPath(Canvas, Path, double) - Static method in class com.technototes.path.util.DashboardUtil
    -
     
    -
    duration() - Method in class com.technototes.path.trajectorysequence.TrajectorySequence
    -
     
    -
    -

    E

    -
    -
    EmptySequenceException - Exception in com.technototes.path.trajectorysequence
    -
     
    -
    EmptySequenceException() - Constructor for exception com.technototes.path.trajectorysequence.EmptySequenceException
    -
     
    -
    encoderOverflow - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    encoderTicksToInches(double) - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    encoderTicksToInches(double, double, double, double) - Static method in interface com.technototes.path.subsystem.DeadWheelConstants
    -
     
    -
    encoderTicksToInches(double, double, double, double) - Static method in interface com.technototes.path.subsystem.MecanumConstants
    -
     
    -
    encoderTicksToInches(double, double, double, double) - Static method in interface com.technototes.path.subsystem.TankConstants
    -
     
    -
    end() - Method in class com.technototes.path.trajectorysequence.TrajectorySequence
    -
     
    -
    end(boolean) - Method in class com.technototes.path.command.MecanumDriveCommand
    -
     
    -
    end(boolean) - Method in class com.technototes.path.command.TrajectoryCommand
    -
     
    -
    end(boolean) - Method in class com.technototes.path.command.TrajectorySequenceCommand
    -
     
    -
    eng - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    -
     
    -
    ensureMinimumFirmwareVersion(HardwareMap) - Static method in class com.technototes.path.util.LynxModuleUtil
    -
    -
    Ensure all of the Lynx modules attached to the robot satisfy the minimum requirement.
    -
    -
    equals(Object) - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    -
     
    -
    execute() - Method in class com.technototes.path.command.MecanumDriveCommand
    -
     
    -
    execute() - Method in class com.technototes.path.command.ResetGyroCommand
    -
     
    -
    execute() - Method in class com.technototes.path.command.TrajectoryCommand
    -
     
    -
    execute() - Method in class com.technototes.path.command.TrajectorySequenceCommand
    -
     
    -
    -

    F

    -
    -
    fitAccelData(List<Double>, List<Double>, List<Double>, RegressionUtil.RampResult, File) - Static method in class com.technototes.path.util.RegressionUtil
    -
    -
    Run regression to compute acceleration feedforward.
    -
    -
    fitRampData(List<Double>, List<Double>, List<Double>, boolean, File) - Static method in class com.technototes.path.util.RegressionUtil
    -
    -
    Run regression to compute velocity and static feedforward from ramp test data.
    -
    -
    FOLLOW_TRAJECTORY - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode
    -
     
    -
    followTrajectory(Trajectory) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    followTrajectory(Trajectory) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    followTrajectoryAsync(Trajectory) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    followTrajectoryAsync(Trajectory) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    followTrajectorySequence(TrajectorySequence) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    followTrajectorySequence(TrajectorySequence) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    followTrajectorySequenceAsync(TrajectorySequence) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    followTrajectorySequenceAsync(TrajectorySequence) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    followTrajectorySequenceAsync(TrajectorySequence) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    forward(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    forward(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    forwardOffset - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    frontEncoder - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    -

    G

    -
    -
    GEAR_RATIO - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    GEAR_RATIO - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    gearRatio - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    get(int) - Method in class com.technototes.path.trajectorysequence.TrajectorySequence
    -
     
    -
    getAccelerationConstraint(double) - Static method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    getAccelerationConstraint(double) - Static method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    getBoolean(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.DeadWheelConstants
    -
     
    -
    getBoolean(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.MecanumConstants
    -
     
    -
    getBoolean(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.TankConstants
    -
     
    -
    getConstant() - Method in interface com.technototes.path.subsystem.DeadWheelConstants
    -
     
    -
    getConstant() - Method in interface com.technototes.path.subsystem.MecanumConstants
    -
     
    -
    getConstant() - Method in interface com.technototes.path.subsystem.TankConstants
    -
     
    -
    getDouble(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.DeadWheelConstants
    -
     
    -
    getDouble(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.MecanumConstants
    -
     
    -
    getDouble(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.TankConstants
    -
     
    -
    getDuration() - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment
    -
     
    -
    getEndPose() - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment
    -
     
    -
    getExternalHeadingVelocity() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    getExternalHeadingVelocity() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    getFirmwareVersion(LynxModule) - Static method in class com.technototes.path.util.LynxModuleUtil
    -
    -
    Retrieve and parse Lynx module firmware version.
    -
    -
    getGearRatio() - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    getHeading() - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    getHeading() - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    getHeading() - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    -
     
    -
    getInt(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.MecanumConstants
    -
     
    -
    getInt(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.TankConstants
    -
     
    -
    getLastError() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    getLastError() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    getLastPoseError() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    getLogFile(String) - Static method in class com.technototes.path.util.LoggingUtil
    -
    -
    Obtain a log file with the provided name
    -
    -
    getMarkers() - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment
    -
     
    -
    getMotionProfile() - Method in class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment
    -
     
    -
    getMotorVelocityF(double) - Static method in interface com.technototes.path.subsystem.DeadWheelConstants
    -
     
    -
    getMotorVelocityF(double) - Static method in interface com.technototes.path.subsystem.MecanumConstants
    -
     
    -
    getMotorVelocityF(double) - Static method in interface com.technototes.path.subsystem.TankConstants
    -
     
    -
    getPID(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.MecanumConstants
    -
     
    -
    getPID(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.TankConstants
    -
     
    -
    getPIDF(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.MecanumConstants
    -
     
    -
    getPIDF(Class<? extends Annotation>) - Method in interface com.technototes.path.subsystem.TankConstants
    -
     
    -
    getPoseEstimate() - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    -
     
    -
    getPoseVelocity() - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    -
     
    -
    getRadians() - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    getRawExternalHeading() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    getRawExternalHeading() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    getStartPose() - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment
    -
     
    -
    getTicksPerRev() - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    getTotalRotation() - Method in class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment
    -
     
    -
    getTrajectory() - Method in class com.technototes.path.trajectorysequence.sequencesegment.TrajectorySegment
    -
     
    -
    getVelocityConstraint(double, double, double) - Static method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    getVelocityConstraint(double, double, double) - Static method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    getWheelPositions() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    getWheelPositions() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    getWheelPositions() - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    getWheelRadius() - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    getWheelVelocities() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    getWheelVelocities() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    getWheelVelocities() - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    getX() - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    getY() - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    gyroOffset - Variable in class com.technototes.path.subsystem.DistanceSensorLocalizer
    -
     
    -
    -

    H

    -
    -
    heading - Variable in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    heading - Variable in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    HEADING_PID - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    HEADING_PID - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    -

    I

    -
    -
    IDLE - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode
    -
     
    -
    imu - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    initialize() - Method in class com.technototes.path.command.RegenerativeTrajectoryCommand
    -
     
    -
    initialize() - Method in class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    -
     
    -
    initialize() - Method in class com.technototes.path.command.TrajectoryCommand
    -
     
    -
    initialize() - Method in class com.technototes.path.command.TrajectorySequenceCommand
    -
     
    -
    isBusy() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    isBusy() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    isBusy() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    isFinished() - Method in class com.technototes.path.command.MecanumDriveCommand
    -
     
    -
    isFinished() - Method in class com.technototes.path.command.TrajectoryCommand
    -
     
    -
    isFinished() - Method in class com.technototes.path.command.TrajectorySequenceCommand
    -
     
    -
    -

    K

    -
    -
    kA - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    kA - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    kA - Variable in class com.technototes.path.util.RegressionUtil.AccelResult
    -
     
    -
    kStatic - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    kStatic - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    kStatic - Variable in class com.technototes.path.util.RegressionUtil.RampResult
    -
     
    -
    kV - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    kV - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    kV - Variable in class com.technototes.path.util.RegressionUtil.RampResult
    -
     
    -
    -

    L

    -
    -
    LATERAL_MULTIPLIER - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    LATERAL_MULTIPLIER - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    lateralDistance - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    leftEncoder - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    leftFront - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    leftRear - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    lineTo(Vector2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    lineTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    lineToConstantHeading(Vector2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    lineToConstantHeading(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    lineToLinearHeading(Pose2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    lineToLinearHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    lineToSplineHeading(Pose2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    lineToSplineHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    LoggingUtil - Class in com.technototes.path.util
    -
    -
    Utility functions for log files.
    -
    -
    LoggingUtil() - Constructor for class com.technototes.path.util.LoggingUtil
    -
     
    -
    LynxFirmwareVersion(int, int, int) - Constructor for class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    -
     
    -
    LynxFirmwareVersionException(String) - Constructor for exception com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersionException
    -
     
    -
    LynxModuleUtil - Class in com.technototes.path.util
    -
    -
    Collection of utilites for interacting with Lynx modules.
    -
    -
    LynxModuleUtil() - Constructor for class com.technototes.path.util.LynxModuleUtil
    -
     
    -
    LynxModuleUtil.LynxFirmwareVersion - Class in com.technototes.path.util
    -
    -
    Parsed representation of a Lynx module firmware version.
    -
    -
    LynxModuleUtil.LynxFirmwareVersionException - Exception in com.technototes.path.util
    -
    -
    Exception indicating an outdated Lynx firmware version.
    -
    -
    -

    M

    -
    -
    major - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    -
     
    -
    mapPose(Function<Pose2d, T>) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    mapPose(Function<Pose2d, T>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    mapVec(Function<Vector2d, T>) - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    mapX(Function<Double, T>) - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    mapY(Function<Double, T>) - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    MAX_ACCEL - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    MAX_ACCEL - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    MAX_ANG_ACCEL - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    MAX_ANG_ACCEL - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    MAX_ANG_VEL - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    MAX_ANG_VEL - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    MAX_RPM - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    MAX_RPM - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    MAX_VEL - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    MAX_VEL - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    MecanumConstants - Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.GearRatio - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.HeadPID - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.KA - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.KStatic - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.KV - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.LateralMult - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.MaxAccel - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.MaxAngleAccel - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.MaxAngleVelo - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.MaxRPM - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.MaxVelo - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.MotorVeloPID - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.OmegaWeight - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.PoseLimit - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.TicksPerRev - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.TrackWidth - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.TransPID - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.UseDriveEncoder - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.VXWeight - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.VYWeight - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.WheelBase - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumConstants.WheelRadius - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    MecanumDriveCommand - Class in com.technototes.path.command
    -
     
    -
    MecanumDriveCommand(PathingMecanumDrivebaseSubsystem, DoubleSupplier, DoubleSupplier, DoubleSupplier) - Constructor for class com.technototes.path.command.MecanumDriveCommand
    -
     
    -
    minor - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    -
     
    -
    mirrorOverX(Pose2d) - Static method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    mirrorOverX(Pose2d) - Static method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    mirrorOverY(Pose2d) - Static method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    mirrorOverY(Pose2d) - Static method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    MOTOR_VELO_PID - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    MOTOR_VELO_PID - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    motors - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    mutateHeading(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    mutateHeading(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    mutatePose(UnaryOperator<Pose2d>) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    mutatePose(UnaryOperator<Pose2d>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    mutateVec(UnaryOperator<Vector2d>) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    mutateVec(UnaryOperator<Vector2d>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    mutateVec(UnaryOperator<Vector2d>) - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    mutateX(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    mutateX(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    mutateX(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    mutateY(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    mutateY(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    mutateY(UnaryOperator<Double>) - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    -

    N

    -
    -
    NNN - Enum constant in enum class com.technototes.path.util.AxesSigns
    -
     
    -
    NNP - Enum constant in enum class com.technototes.path.util.AxesSigns
    -
     
    -
    NPN - Enum constant in enum class com.technototes.path.util.AxesSigns
    -
     
    -
    NPP - Enum constant in enum class com.technototes.path.util.AxesSigns
    -
     
    -
    -

    O

    -
    -
    OMEGA_WEIGHT - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    OMEGA_WEIGHT - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    -

    P

    -
    -
    PathingMecanumDrivebaseSubsystem - Class in com.technototes.path.subsystem
    -
     
    -
    PathingMecanumDrivebaseSubsystem(EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, IMU, MecanumConstants) - Constructor for class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    PathingMecanumDrivebaseSubsystem(EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, IMU, MecanumConstants, Localizer) - Constructor for class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    PathingMecanumDrivebaseSubsystem.Mode - Enum Class in com.technototes.path.subsystem
    -
     
    -
    PNN - Enum constant in enum class com.technototes.path.util.AxesSigns
    -
     
    -
    PNP - Enum constant in enum class com.technototes.path.util.AxesSigns
    -
     
    -
    POSE_HISTORY_LIMIT - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    POSE_HISTORY_LIMIT - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    POSE_HISTORY_LIMIT - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    PPN - Enum constant in enum class com.technototes.path.util.AxesSigns
    -
     
    -
    PPP - Enum constant in enum class com.technototes.path.util.AxesSigns
    -
     
    -
    -

    R

    -
    -
    r - Variable in class com.technototes.path.command.MecanumDriveCommand
    -
     
    -
    RampResult(double, double, double) - Constructor for class com.technototes.path.util.RegressionUtil.RampResult
    -
     
    -
    RegenerativeTrajectoryCommand - Class in com.technototes.path.command
    -
     
    -
    RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction<Function<Pose2d, TrajectoryBuilder>, T, Trajectory>, T) - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand
    -
     
    -
    RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<Function<Pose2d, TrajectoryBuilder>, Trajectory>) - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand
    -
     
    -
    RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<T, Trajectory>, T) - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand
    -
     
    -
    RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier<Trajectory>) - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand
    -
     
    -
    RegenerativeTrajectorySequenceCommand - Class in com.technototes.path.command
    -
     
    -
    RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction<Function<Pose2d, TrajectorySequenceBuilder>, T, TrajectorySequence>, T) - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    -
     
    -
    RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function<Function<Pose2d, TrajectorySequenceBuilder>, TrajectorySequence>) - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    -
     
    -
    RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function<T, TrajectorySequence>, T) - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    -
     
    -
    RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier<TrajectorySequence>) - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    -
     
    -
    RegressionUtil - Class in com.technototes.path.util
    -
    -
    Various regression utilities.
    -
    -
    RegressionUtil() - Constructor for class com.technototes.path.util.RegressionUtil
    -
     
    -
    RegressionUtil.AccelResult - Class in com.technototes.path.util
    -
    -
    Feedforward parameter estimates from the ramp regression and additional summary statistics
    -
    -
    RegressionUtil.RampResult - Class in com.technototes.path.util
    -
    -
    Feedforward parameter estimates from the ramp regression and additional summary statistics
    -
    -
    remapAxes(BNO055IMU, AxesOrder, AxesSigns) - Static method in class com.technototes.path.util.BNO055IMUUtil
    -
    -
    Remap BNO055 IMU axes and signs.
    -
    -
    resetAccelConstraint() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    resetConstraints() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    ResetGyroCommand - Class in com.technototes.path.command
    -
     
    -
    ResetGyroCommand(PathingMecanumDrivebaseSubsystem) - Constructor for class com.technototes.path.command.ResetGyroCommand
    -
     
    -
    resetTurnConstraint() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    resetVelConstraint() - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    rightEncoder - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    rightFront - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    rightRear - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    ROAD_RUNNER_FOLDER - Static variable in class com.technototes.path.util.LoggingUtil
    -
     
    -
    rpmToVelocity(double, double, double) - Static method in interface com.technototes.path.subsystem.DeadWheelConstants
    -
     
    -
    rpmToVelocity(double, double, double) - Static method in interface com.technototes.path.subsystem.MecanumConstants
    -
     
    -
    rpmToVelocity(double, double, double) - Static method in interface com.technototes.path.subsystem.TankConstants
    -
     
    -
    rSquare - Variable in class com.technototes.path.util.RegressionUtil.AccelResult
    -
     
    -
    rSquare - Variable in class com.technototes.path.util.RegressionUtil.RampResult
    -
     
    -
    RUN_USING_ENCODER - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    RUN_USING_ENCODER - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    -

    S

    -
    -
    SequenceSegment - Class in com.technototes.path.trajectorysequence.sequencesegment
    -
     
    -
    SequenceSegment(double, Pose2d, Pose2d, List<TrajectoryMarker>) - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment
    -
     
    -
    set(double, double) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    set(double, double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    set(double, double) - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    set(double, double, double) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    set(double, double, double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    set(Pose2d) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    set(Pose2d) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    set(Vector2d) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    set(Vector2d) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    set(Vector2d) - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    set(Vector2d, double) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    set(Vector2d, double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    setAccelConstraint(TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    setConstraints(TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    setGyroOffset(double) - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    -
     
    -
    setHeading(double) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    setHeading(double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    setMode(DcMotor.RunMode) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    setMode(DcMotor.RunMode) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    setMotorPowers(double, double) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    setMotorPowers(double, double, double, double) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    setPoseEstimate(Pose2d) - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    -
     
    -
    setReversed(boolean) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    setTangent(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    setTurnConstraint(double, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    setVelConstraint(TrajectoryVelocityConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    setWeightedDrivePower(Pose2d) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    setWeightedDrivePower(Pose2d) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    setX(double) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    setX(double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    setX(double) - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    setY(double) - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    setY(double) - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    setY(double) - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    setZeroPowerBehavior(DcMotor.ZeroPowerBehavior) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    setZeroPowerBehavior(DcMotor.ZeroPowerBehavior) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    size() - Method in class com.technototes.path.trajectorysequence.TrajectorySequence
    -
     
    -
    speed - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    splineTo(Vector2d, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    splineTo(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    splineToConstantHeading(Vector2d, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    splineToConstantHeading(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    splineToLinearHeading(Pose2d, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    splineToLinearHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    splineToSplineHeading(Pose2d, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    splineToSplineHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    start() - Method in class com.technototes.path.trajectorysequence.TrajectorySequence
    -
     
    -
    stop() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    strafeLeft(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    strafeLeft(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    strafeRight(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    strafeRight(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    strafeTo(Vector2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    strafeTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    subsystem - Variable in class com.technototes.path.command.MecanumDriveCommand
    -
     
    -
    subsystem - Variable in class com.technototes.path.command.ResetGyroCommand
    -
     
    -
    subsystem - Variable in class com.technototes.path.command.TrajectoryCommand
    -
     
    -
    subsystem - Variable in class com.technototes.path.command.TrajectorySequenceCommand
    -
     
    -
    -

    T

    -
    -
    TankConstants - Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.AxialPID - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.CrossPID - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.GearRatio - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.HeadPID - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.KA - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.KStatic - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.KV - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.LateralMult - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.MaxAccel - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.MaxAngleAccel - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.MaxAngleVelo - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.MaxRPM - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.MaxVelo - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.MotorVeloPID - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.OmegaWeight - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.PoseLimit - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.TicksPerRev - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.TrackWidth - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.UseDriveEncoder - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.VXWeight - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankConstants.WheelRadius - Annotation Interface in com.technototes.path.subsystem
    -
     
    -
    TankDrivebaseSubsystem - Class in com.technototes.path.subsystem
    -
     
    -
    TankDrivebaseSubsystem(EncodedMotorGroup<DcMotorEx>, EncodedMotorGroup<DcMotorEx>, IMU, TankConstants, Localizer) - Constructor for class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    ThreeDeadWheelLocalizer - Class in com.technototes.path.subsystem
    -
     
    -
    ThreeDeadWheelLocalizer(MotorEncoder, MotorEncoder, MotorEncoder, DeadWheelConstants) - Constructor for class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    TICKS_PER_REV - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    TICKS_PER_REV - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    ticksPerRev - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    toPose() - Method in class com.technototes.path.geometry.ConfigurablePose
    -
     
    -
    toPose() - Method in class com.technototes.path.geometry.ConfigurablePoseD
    -
     
    -
    toString() - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion
    -
     
    -
    toVec() - Method in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    TRACK_WIDTH - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    TRACK_WIDTH - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    trajectory - Variable in class com.technototes.path.command.TrajectoryCommand
    -
     
    -
    trajectory - Variable in class com.technototes.path.command.TrajectorySequenceCommand
    -
     
    -
    trajectoryBuilder(Pose2d) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    trajectoryBuilder(Pose2d) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    trajectoryBuilder(Pose2d, boolean) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    trajectoryBuilder(Pose2d, boolean) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    trajectoryBuilder(Pose2d, double) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    trajectoryBuilder(Pose2d, double) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    TrajectoryCommand - Class in com.technototes.path.command
    -
     
    -
    TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Trajectory) - Constructor for class com.technototes.path.command.TrajectoryCommand
    -
     
    -
    TrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction<Function<Pose2d, TrajectoryBuilder>, T, Trajectory>, T) - Constructor for class com.technototes.path.command.TrajectoryCommand
    -
     
    -
    TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<Function<Pose2d, TrajectoryBuilder>, Trajectory>) - Constructor for class com.technototes.path.command.TrajectoryCommand
    -
     
    -
    TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<T, Trajectory>, T) - Constructor for class com.technototes.path.command.TrajectoryCommand
    -
     
    -
    TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier<Trajectory>) - Constructor for class com.technototes.path.command.TrajectoryCommand
    -
     
    -
    TrajectorySegment - Class in com.technototes.path.trajectorysequence.sequencesegment
    -
     
    -
    TrajectorySegment(Trajectory) - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.TrajectorySegment
    -
     
    -
    TrajectorySequence - Class in com.technototes.path.trajectorysequence
    -
     
    -
    TrajectorySequence(List<SequenceSegment>) - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequence
    -
     
    -
    trajectorySequenceBuilder() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    trajectorySequenceBuilder(Pose2d) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    trajectorySequenceBuilder(Pose2d) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    TrajectorySequenceBuilder - Class in com.technototes.path.trajectorysequence
    -
     
    -
    TrajectorySequenceBuilder(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double) - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    TrajectorySequenceBuilder(Pose2d, Double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double) - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    TrajectorySequenceCommand - Class in com.technototes.path.command
    -
     
    -
    TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, TrajectorySequence) - Constructor for class com.technototes.path.command.TrajectorySequenceCommand
    -
     
    -
    TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction<Function<Pose2d, TrajectorySequenceBuilder>, T, TrajectorySequence>, T) - Constructor for class com.technototes.path.command.TrajectorySequenceCommand
    -
     
    -
    TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function<Function<Pose2d, TrajectorySequenceBuilder>, TrajectorySequence>) - Constructor for class com.technototes.path.command.TrajectorySequenceCommand
    -
     
    -
    TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function<T, TrajectorySequence>, T) - Constructor for class com.technototes.path.command.TrajectorySequenceCommand
    -
     
    -
    TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier<TrajectorySequence>) - Constructor for class com.technototes.path.command.TrajectorySequenceCommand
    -
     
    -
    TrajectorySequenceRunner - Class in com.technototes.path.trajectorysequence
    -
     
    -
    TrajectorySequenceRunner(TrajectoryFollower, PIDCoefficients) - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    trajFunc - Variable in class com.technototes.path.command.RegenerativeTrajectoryCommand
    -
     
    -
    trajFunc - Variable in class com.technototes.path.command.RegenerativeTrajectorySequenceCommand
    -
     
    -
    TRANSLATIONAL_PID - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    turn(double) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    turn(double) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    turn(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    turn(double, double, double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    TURN - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode
    -
     
    -
    turnAsync(double) - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    turnAsync(double) - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    TurnSegment - Class in com.technototes.path.trajectorysequence.sequencesegment
    -
     
    -
    TurnSegment(Pose2d, double, MotionProfile, List<TrajectoryMarker>) - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment
    -
     
    -
    -

    U

    -
    -
    UNSTABLE_addDisplacementMarkerOffset(double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    UNSTABLE_addTemporalMarkerOffset(double, MarkerCallback) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    update() - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    -
     
    -
    update() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    update() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    update(Pose2d) - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer
    -
     
    -
    update(Pose2d, Pose2d) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner
    -
     
    -
    -

    V

    -
    -
    valueOf(String) - Static method in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    valueOf(String) - Static method in enum class com.technototes.path.util.AxesSigns
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    values() - Static method in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    values() - Static method in enum class com.technototes.path.util.AxesSigns
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    VX_WEIGHT - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    VX_WEIGHT - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    VY_WEIGHT - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    -

    W

    -
    -
    waitForIdle() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    waitForIdle() - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    waitSeconds(double) - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder
    -
     
    -
    WaitSegment - Class in com.technototes.path.trajectorysequence.sequencesegment
    -
     
    -
    WaitSegment(Pose2d, double, List<TrajectoryMarker>) - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.WaitSegment
    -
     
    -
    WHEEL_BASE - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    WHEEL_RADIUS - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    WHEEL_RADIUS - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem
    -
     
    -
    wheelRadius - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer
    -
     
    -
    -

    X

    -
    -
    x - Variable in class com.technototes.path.command.MecanumDriveCommand
    -
     
    -
    x - Variable in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    -

    Y

    -
    -
    y - Variable in class com.technototes.path.command.MecanumDriveCommand
    -
     
    -
    y - Variable in class com.technototes.path.geometry.ConfigurableVector
    -
     
    -
    -

    Z

    -
    -
    zeroExternalHeading() - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem
    -
     
    -
    -A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Serialized Form
    -
    -
    - + + + Index (Path API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Index

    +
    + A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Serialized Form +

    A

    +
    +
    + AccelResult(double, double) + - Constructor for class com.technototes.path.util.RegressionUtil.AccelResult +
    +
     
    +
    + addDisplacementMarker(double, double, MarkerCallback) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + addDisplacementMarker(double, MarkerCallback) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + addDisplacementMarker(DisplacementProducer, MarkerCallback) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + addDisplacementMarker(MarkerCallback) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + addSpatialMarker(Vector2d, MarkerCallback) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + addTemporalMarker(double, double, MarkerCallback) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + addTemporalMarker(double, MarkerCallback) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + addTemporalMarker(MarkerCallback) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + addTemporalMarker(TimeProducer, MarkerCallback) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + addTrajectory(Trajectory) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + AxesSigns + - Enum Class in + com.technototes.path.util +
    +
    +
    IMU axes signs in the order XYZ (after remapping).
    +
    +
    + AXIAL_PID + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    +

    B

    +
    +
    + back(double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + back(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + batteryVoltageSensor + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + BNO055IMUUtil + - Class in + com.technototes.path.util +
    +
    +
    Various utility functions for the BNO055 IMU.
    +
    +
    + BNO055IMUUtil() + - Constructor for class com.technototes.path.util.BNO055IMUUtil +
    +
     
    +
    + build() + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + bVal + - Variable in enum class com.technototes.path.util.AxesSigns +
    +
     
    +
    +

    C

    +
    +
    + COLOR_ACTIVE_TRAJECTORY + - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + COLOR_ACTIVE_TURN + - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + COLOR_ACTIVE_WAIT + - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + COLOR_INACTIVE_TRAJECTORY + - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + COLOR_INACTIVE_TURN + - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + COLOR_INACTIVE_WAIT + - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + com.technototes.path.command + - package com.technototes.path.command +
    +
     
    +
    + com.technototes.path.geometry + - package com.technototes.path.geometry +
    +
     
    +
    + com.technototes.path.subsystem + - package com.technototes.path.subsystem +
    +
     
    +
    + com.technototes.path.trajectorysequence + - package com.technototes.path.trajectorysequence +
    +
     
    +
    + com.technototes.path.trajectorysequence.sequencesegment + - package com.technototes.path.trajectorysequence.sequencesegment +
    +
     
    +
    + com.technototes.path.util + - package com.technototes.path.util +
    +
     
    +
    + compareTo(LynxModuleUtil.LynxFirmwareVersion) + - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion +
    +
     
    +
    + ConfigurablePose + - Class in + com.technototes.path.geometry +
    +
     
    +
    + ConfigurablePose() + - Constructor for class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + ConfigurablePose(double, double) + - Constructor for class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + ConfigurablePose(double, double, double) + - Constructor for class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + ConfigurablePose(Pose2d) + - Constructor for class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + ConfigurablePose(Vector2d) + - Constructor for class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + ConfigurablePose(Vector2d, double) + - Constructor for class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + ConfigurablePoseD + - Class in + com.technototes.path.geometry +
    +
     
    +
    + ConfigurablePoseD() + - Constructor for class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + ConfigurablePoseD(double, double) + - Constructor for class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + ConfigurablePoseD(double, double, double) + - Constructor for class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + ConfigurablePoseD(Pose2d) + - Constructor for class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + ConfigurablePoseD(Vector2d) + - Constructor for class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + ConfigurablePoseD(Vector2d, double) + - Constructor for class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + ConfigurableVector + - Class in + com.technototes.path.geometry +
    +
     
    +
    + ConfigurableVector() + - Constructor for class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + ConfigurableVector(double, double) + - Constructor for class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + ConfigurableVector(Vector2d) + - Constructor for class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + CROSS_TRACK_PID + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    +

    D

    +
    +
    + DashboardUtil + - Class in + com.technototes.path.util +
    +
    +
    + Set of helper functions for drawing Road Runner paths and trajectories on dashboard + canvases. +
    +
    +
    + DashboardUtil() + - Constructor for class com.technototes.path.util.DashboardUtil +
    +
     
    +
    + DeadWheelConstants + - Interface in + com.technototes.path.subsystem +
    +
     
    +
    + DeadWheelConstants.EncoderOverflow + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + DeadWheelConstants.ForwardOffset + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + DeadWheelConstants.GearRatio + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + DeadWheelConstants.LateralDistance + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + DeadWheelConstants.TicksPerRev + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + DeadWheelConstants.WheelRadius + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + DistanceSensorLocalizer + - Class in + com.technototes.path.subsystem +
    +
     
    +
    + DistanceSensorLocalizer(IGyro, Map<IDistanceSensor, Pose2d>) + - Constructor for class com.technototes.path.subsystem.DistanceSensorLocalizer +
    +
     
    +
    + DO_DASH + - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + drawPoseHistory(Canvas, List<Pose2d>) + - Static method in class com.technototes.path.util.DashboardUtil +
    +
     
    +
    + drawRobot(Canvas, Pose2d) + - Static method in class com.technototes.path.util.DashboardUtil +
    +
     
    +
    + drawSampledPath(Canvas, Path) + - Static method in class com.technototes.path.util.DashboardUtil +
    +
     
    +
    + drawSampledPath(Canvas, Path, double) + - Static method in class com.technototes.path.util.DashboardUtil +
    +
     
    +
    + duration() + - Method in class com.technototes.path.trajectorysequence.TrajectorySequence +
    +
     
    +
    +

    E

    +
    +
    + EmptySequenceException + - Exception in + com.technototes.path.trajectorysequence +
    +
     
    +
    + EmptySequenceException() + - Constructor for exception com.technototes.path.trajectorysequence.EmptySequenceException +
    +
     
    +
    + encoderOverflow + - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + encoderTicksToInches(double) + - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + encoderTicksToInches(double, double, double, double) + - Static method in interface com.technototes.path.subsystem.DeadWheelConstants +
    +
     
    +
    + encoderTicksToInches(double, double, double, double) + - Static method in interface com.technototes.path.subsystem.MecanumConstants +
    +
     
    +
    + encoderTicksToInches(double, double, double, double) + - Static method in interface com.technototes.path.subsystem.TankConstants +
    +
     
    +
    + end() + - Method in class com.technototes.path.trajectorysequence.TrajectorySequence +
    +
     
    +
    + end(boolean) + - Method in class com.technototes.path.command.MecanumDriveCommand +
    +
     
    +
    + end(boolean) + - Method in class com.technototes.path.command.TrajectoryCommand +
    +
     
    +
    + end(boolean) + - Method in class com.technototes.path.command.TrajectorySequenceCommand +
    +
     
    +
    + eng + - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion +
    +
     
    +
    + ensureMinimumFirmwareVersion(HardwareMap) + - Static method in class com.technototes.path.util.LynxModuleUtil +
    +
    +
    + Ensure all of the Lynx modules attached to the robot satisfy the minimum + requirement. +
    +
    +
    + equals(Object) + - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion +
    +
     
    +
    + execute() + - Method in class com.technototes.path.command.MecanumDriveCommand +
    +
     
    +
    + execute() + - Method in class com.technototes.path.command.ResetGyroCommand +
    +
     
    +
    + execute() + - Method in class com.technototes.path.command.TrajectoryCommand +
    +
     
    +
    + execute() + - Method in class com.technototes.path.command.TrajectorySequenceCommand +
    +
     
    +
    +

    F

    +
    +
    + fitAccelData(List<Double>, List<Double>, List<Double>, + RegressionUtil.RampResult, File) + - Static method in class com.technototes.path.util.RegressionUtil +
    +
    +
    Run regression to compute acceleration feedforward.
    +
    +
    + fitRampData(List<Double>, List<Double>, List<Double>, boolean, + File) + - Static method in class com.technototes.path.util.RegressionUtil +
    +
    +
    + Run regression to compute velocity and static feedforward from ramp test data. +
    +
    +
    + FOLLOW_TRAJECTORY + - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode +
    +
     
    +
    + followTrajectory(Trajectory) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + followTrajectory(Trajectory) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + followTrajectoryAsync(Trajectory) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + followTrajectoryAsync(Trajectory) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + followTrajectorySequence(TrajectorySequence) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + followTrajectorySequence(TrajectorySequence) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + followTrajectorySequenceAsync(TrajectorySequence) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + followTrajectorySequenceAsync(TrajectorySequence) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + followTrajectorySequenceAsync(TrajectorySequence) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + forward(double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + forward(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + forwardOffset + - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + frontEncoder + - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    +

    G

    +
    +
    + GEAR_RATIO + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + GEAR_RATIO + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + gearRatio + - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + get(int) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequence +
    +
     
    +
    + getAccelerationConstraint(double) + - Static method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + getAccelerationConstraint(double) + - Static method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + getBoolean(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.DeadWheelConstants +
    +
     
    +
    + getBoolean(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.MecanumConstants +
    +
     
    +
    + getBoolean(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.TankConstants +
    +
     
    +
    + getConstant() + - Method in interface com.technototes.path.subsystem.DeadWheelConstants +
    +
     
    +
    + getConstant() + - Method in interface com.technototes.path.subsystem.MecanumConstants +
    +
     
    +
    + getConstant() + - Method in interface com.technototes.path.subsystem.TankConstants +
    +
     
    +
    + getDouble(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.DeadWheelConstants +
    +
     
    +
    + getDouble(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.MecanumConstants +
    +
     
    +
    + getDouble(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.TankConstants +
    +
     
    +
    + getDuration() + - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment +
    +
     
    +
    + getEndPose() + - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment +
    +
     
    +
    + getExternalHeadingVelocity() + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + getExternalHeadingVelocity() + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + getFirmwareVersion(LynxModule) + - Static method in class com.technototes.path.util.LynxModuleUtil +
    +
    +
    Retrieve and parse Lynx module firmware version.
    +
    +
    + getGearRatio() + - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + getHeading() + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + getHeading() + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + getHeading() + - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer +
    +
     
    +
    + getInt(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.MecanumConstants +
    +
     
    +
    + getInt(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.TankConstants +
    +
     
    +
    + getLastError() + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + getLastError() + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + getLastPoseError() + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + getLogFile(String) + - Static method in class com.technototes.path.util.LoggingUtil +
    +
    +
    Obtain a log file with the provided name
    +
    +
    + getMarkers() + - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment +
    +
     
    +
    + getMotionProfile() + - Method in class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment +
    +
     
    +
    + getMotorVelocityF(double) + - Static method in interface com.technototes.path.subsystem.DeadWheelConstants +
    +
     
    +
    + getMotorVelocityF(double) + - Static method in interface com.technototes.path.subsystem.MecanumConstants +
    +
     
    +
    + getMotorVelocityF(double) + - Static method in interface com.technototes.path.subsystem.TankConstants +
    +
     
    +
    + getPID(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.MecanumConstants +
    +
     
    +
    + getPID(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.TankConstants +
    +
     
    +
    + getPIDF(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.MecanumConstants +
    +
     
    +
    + getPIDF(Class<? extends Annotation>) + - Method in interface com.technototes.path.subsystem.TankConstants +
    +
     
    +
    + getPoseEstimate() + - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer +
    +
     
    +
    + getPoseVelocity() + - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer +
    +
     
    +
    + getRadians() + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + getRawExternalHeading() + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + getRawExternalHeading() + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + getStartPose() + - Method in class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment +
    +
     
    +
    + getTicksPerRev() + - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + getTotalRotation() + - Method in class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment +
    +
     
    +
    + getTrajectory() + - Method in class com.technototes.path.trajectorysequence.sequencesegment.TrajectorySegment +
    +
     
    +
    + getVelocityConstraint(double, double, double) + - Static method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + getVelocityConstraint(double, double, double) + - Static method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + getWheelPositions() + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + getWheelPositions() + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + getWheelPositions() + - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + getWheelRadius() + - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + getWheelVelocities() + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + getWheelVelocities() + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + getWheelVelocities() + - Method in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + getX() + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + getY() + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + gyroOffset + - Variable in class com.technototes.path.subsystem.DistanceSensorLocalizer +
    +
     
    +
    +

    H

    +
    +
    + heading + - Variable in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + heading + - Variable in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + HEADING_PID + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + HEADING_PID + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    +

    I

    +
    +
    + IDLE + - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode +
    +
     
    +
    + imu + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + initialize() + - Method in class com.technototes.path.command.RegenerativeTrajectoryCommand +
    +
     
    +
    + initialize() + - Method in class com.technototes.path.command.RegenerativeTrajectorySequenceCommand +
    +
     
    +
    + initialize() + - Method in class com.technototes.path.command.TrajectoryCommand +
    +
     
    +
    + initialize() + - Method in class com.technototes.path.command.TrajectorySequenceCommand +
    +
     
    +
    + isBusy() + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + isBusy() + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + isBusy() + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + isFinished() + - Method in class com.technototes.path.command.MecanumDriveCommand +
    +
     
    +
    + isFinished() + - Method in class com.technototes.path.command.TrajectoryCommand +
    +
     
    +
    + isFinished() + - Method in class com.technototes.path.command.TrajectorySequenceCommand +
    +
     
    +
    +

    K

    +
    +
    + kA + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + kA + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + kA + - Variable in class com.technototes.path.util.RegressionUtil.AccelResult +
    +
     
    +
    + kStatic + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + kStatic + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + kStatic + - Variable in class com.technototes.path.util.RegressionUtil.RampResult +
    +
     
    +
    + kV + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + kV + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + kV + - Variable in class com.technototes.path.util.RegressionUtil.RampResult +
    +
     
    +
    +

    L

    +
    +
    + LATERAL_MULTIPLIER + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + LATERAL_MULTIPLIER + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + lateralDistance + - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + leftEncoder + - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + leftFront + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + leftRear + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + lineTo(Vector2d) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + lineTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + lineToConstantHeading(Vector2d) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + lineToConstantHeading(Vector2d, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + lineToLinearHeading(Pose2d) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + lineToLinearHeading(Pose2d, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + lineToSplineHeading(Pose2d) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + lineToSplineHeading(Pose2d, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + LoggingUtil + - Class in + com.technototes.path.util +
    +
    +
    Utility functions for log files.
    +
    +
    + LoggingUtil() + - Constructor for class com.technototes.path.util.LoggingUtil +
    +
     
    +
    + LynxFirmwareVersion(int, int, int) + - Constructor for class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion +
    +
     
    +
    + LynxFirmwareVersionException(String) + - Constructor for exception com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersionException +
    +
     
    +
    + LynxModuleUtil + - Class in + com.technototes.path.util +
    +
    +
    Collection of utilites for interacting with Lynx modules.
    +
    +
    + LynxModuleUtil() + - Constructor for class com.technototes.path.util.LynxModuleUtil +
    +
     
    +
    + LynxModuleUtil.LynxFirmwareVersion + - Class in + com.technototes.path.util +
    +
    +
    Parsed representation of a Lynx module firmware version.
    +
    +
    + LynxModuleUtil.LynxFirmwareVersionException + - Exception in + com.technototes.path.util +
    +
    +
    Exception indicating an outdated Lynx firmware version.
    +
    +
    +

    M

    +
    +
    + major + - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion +
    +
     
    +
    + mapPose(Function<Pose2d, T>) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + mapPose(Function<Pose2d, T>) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + mapVec(Function<Vector2d, T>) + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + mapX(Function<Double, T>) + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + mapY(Function<Double, T>) + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + MAX_ACCEL + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + MAX_ACCEL + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + MAX_ANG_ACCEL + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + MAX_ANG_ACCEL + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + MAX_ANG_VEL + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + MAX_ANG_VEL + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + MAX_RPM + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + MAX_RPM + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + MAX_VEL + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + MAX_VEL + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + MecanumConstants + - Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.GearRatio + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.HeadPID + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.KA + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.KStatic + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.KV + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.LateralMult + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.MaxAccel + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.MaxAngleAccel + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.MaxAngleVelo + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.MaxRPM + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.MaxVelo + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.MotorVeloPID + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.OmegaWeight + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.PoseLimit + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.TicksPerRev + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.TrackWidth + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.TransPID + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.UseDriveEncoder + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.VXWeight + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.VYWeight + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.WheelBase + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumConstants.WheelRadius + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + MecanumDriveCommand + - Class in + com.technototes.path.command +
    +
     
    +
    + MecanumDriveCommand(PathingMecanumDrivebaseSubsystem, DoubleSupplier, + DoubleSupplier, DoubleSupplier) + - Constructor for class com.technototes.path.command.MecanumDriveCommand +
    +
     
    +
    + minor + - Variable in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion +
    +
     
    +
    + mirrorOverX(Pose2d) + - Static method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + mirrorOverX(Pose2d) + - Static method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + mirrorOverY(Pose2d) + - Static method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + mirrorOverY(Pose2d) + - Static method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + MOTOR_VELO_PID + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + MOTOR_VELO_PID + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + motors + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + mutateHeading(UnaryOperator<Double>) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + mutateHeading(UnaryOperator<Double>) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + mutatePose(UnaryOperator<Pose2d>) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + mutatePose(UnaryOperator<Pose2d>) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + mutateVec(UnaryOperator<Vector2d>) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + mutateVec(UnaryOperator<Vector2d>) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + mutateVec(UnaryOperator<Vector2d>) + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + mutateX(UnaryOperator<Double>) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + mutateX(UnaryOperator<Double>) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + mutateX(UnaryOperator<Double>) + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + mutateY(UnaryOperator<Double>) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + mutateY(UnaryOperator<Double>) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + mutateY(UnaryOperator<Double>) + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    +

    N

    +
    +
    + NNN + - Enum constant in enum class com.technototes.path.util.AxesSigns +
    +
     
    +
    + NNP + - Enum constant in enum class com.technototes.path.util.AxesSigns +
    +
     
    +
    + NPN + - Enum constant in enum class com.technototes.path.util.AxesSigns +
    +
     
    +
    + NPP + - Enum constant in enum class com.technototes.path.util.AxesSigns +
    +
     
    +
    +

    O

    +
    +
    + OMEGA_WEIGHT + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + OMEGA_WEIGHT + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    +

    P

    +
    +
    + PathingMecanumDrivebaseSubsystem + - Class in + com.technototes.path.subsystem +
    +
     
    +
    + PathingMecanumDrivebaseSubsystem(EncodedMotor<DcMotorEx>, + EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, + EncodedMotor<DcMotorEx>, IMU, MecanumConstants) + - Constructor for class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + PathingMecanumDrivebaseSubsystem(EncodedMotor<DcMotorEx>, + EncodedMotor<DcMotorEx>, EncodedMotor<DcMotorEx>, + EncodedMotor<DcMotorEx>, IMU, MecanumConstants, Localizer) + - Constructor for class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + PathingMecanumDrivebaseSubsystem.Mode + - Enum Class in + com.technototes.path.subsystem +
    +
     
    +
    + PNN + - Enum constant in enum class com.technototes.path.util.AxesSigns +
    +
     
    +
    + PNP + - Enum constant in enum class com.technototes.path.util.AxesSigns +
    +
     
    +
    + POSE_HISTORY_LIMIT + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + POSE_HISTORY_LIMIT + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + POSE_HISTORY_LIMIT + - Static variable in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + PPN + - Enum constant in enum class com.technototes.path.util.AxesSigns +
    +
     
    +
    + PPP + - Enum constant in enum class com.technototes.path.util.AxesSigns +
    +
     
    +
    +

    R

    +
    +
    + r + - Variable in class com.technototes.path.command.MecanumDriveCommand +
    +
     
    +
    + RampResult(double, double, double) + - Constructor for class com.technototes.path.util.RegressionUtil.RampResult +
    +
     
    +
    + RegenerativeTrajectoryCommand + - Class in + com.technototes.path.command +
    +
     
    +
    + RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, + BiFunction<Function<Pose2d, TrajectoryBuilder>, T, Trajectory>, T) + - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand +
    +
     
    +
    + RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, + Function<Function<Pose2d, TrajectoryBuilder>, Trajectory>) + - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand +
    +
     
    +
    + RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<T, + Trajectory>, T) + - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand +
    +
     
    +
    + RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, + Supplier<Trajectory>) + - Constructor for class com.technototes.path.command.RegenerativeTrajectoryCommand +
    +
     
    +
    + RegenerativeTrajectorySequenceCommand + - Class in + com.technototes.path.command +
    +
     
    +
    + RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, + BiFunction<Function<Pose2d, TrajectorySequenceBuilder>, T, + TrajectorySequence>, T) + - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand +
    +
     
    +
    + RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, + Function<Function<Pose2d, TrajectorySequenceBuilder>, + TrajectorySequence>) + - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand +
    +
     
    +
    + RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, + Function<T, TrajectorySequence>, T) + - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand +
    +
     
    +
    + RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, + Supplier<TrajectorySequence>) + - Constructor for class com.technototes.path.command.RegenerativeTrajectorySequenceCommand +
    +
     
    +
    + RegressionUtil + - Class in + com.technototes.path.util +
    +
    +
    Various regression utilities.
    +
    +
    + RegressionUtil() + - Constructor for class com.technototes.path.util.RegressionUtil +
    +
     
    +
    + RegressionUtil.AccelResult + - Class in + com.technototes.path.util +
    +
    +
    + Feedforward parameter estimates from the ramp regression and additional summary + statistics +
    +
    +
    + RegressionUtil.RampResult + - Class in + com.technototes.path.util +
    +
    +
    + Feedforward parameter estimates from the ramp regression and additional summary + statistics +
    +
    +
    + remapAxes(BNO055IMU, AxesOrder, AxesSigns) + - Static method in class com.technototes.path.util.BNO055IMUUtil +
    +
    +
    Remap BNO055 IMU axes and signs.
    +
    +
    + resetAccelConstraint() + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + resetConstraints() + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + ResetGyroCommand + - Class in + com.technototes.path.command +
    +
     
    +
    + ResetGyroCommand(PathingMecanumDrivebaseSubsystem) + - Constructor for class com.technototes.path.command.ResetGyroCommand +
    +
     
    +
    + resetTurnConstraint() + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + resetVelConstraint() + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + rightEncoder + - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + rightFront + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + rightRear + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + ROAD_RUNNER_FOLDER + - Static variable in class com.technototes.path.util.LoggingUtil +
    +
     
    +
    + rpmToVelocity(double, double, double) + - Static method in interface com.technototes.path.subsystem.DeadWheelConstants +
    +
     
    +
    + rpmToVelocity(double, double, double) + - Static method in interface com.technototes.path.subsystem.MecanumConstants +
    +
     
    +
    + rpmToVelocity(double, double, double) + - Static method in interface com.technototes.path.subsystem.TankConstants +
    +
     
    +
    + rSquare + - Variable in class com.technototes.path.util.RegressionUtil.AccelResult +
    +
     
    +
    + rSquare + - Variable in class com.technototes.path.util.RegressionUtil.RampResult +
    +
     
    +
    + RUN_USING_ENCODER + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + RUN_USING_ENCODER + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    +

    S

    +
    +
    + SequenceSegment + - Class in + com.technototes.path.trajectorysequence.sequencesegment +
    +
     
    +
    + SequenceSegment(double, Pose2d, Pose2d, List<TrajectoryMarker>) + - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.SequenceSegment +
    +
     
    +
    + set(double, double) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + set(double, double) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + set(double, double) + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + set(double, double, double) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + set(double, double, double) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + set(Pose2d) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + set(Pose2d) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + set(Vector2d) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + set(Vector2d) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + set(Vector2d) + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + set(Vector2d, double) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + set(Vector2d, double) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + setAccelConstraint(TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + setConstraints(TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + setGyroOffset(double) + - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer +
    +
     
    +
    + setHeading(double) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + setHeading(double) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + setMode(DcMotor.RunMode) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + setMode(DcMotor.RunMode) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + setMotorPowers(double, double) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + setMotorPowers(double, double, double, double) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + setPoseEstimate(Pose2d) + - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer +
    +
     
    +
    + setReversed(boolean) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + setTangent(double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + setTurnConstraint(double, double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + setVelConstraint(TrajectoryVelocityConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + setWeightedDrivePower(Pose2d) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + setWeightedDrivePower(Pose2d) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + setX(double) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + setX(double) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + setX(double) + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + setY(double) + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + setY(double) + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + setY(double) + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + setZeroPowerBehavior(DcMotor.ZeroPowerBehavior) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + setZeroPowerBehavior(DcMotor.ZeroPowerBehavior) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + size() + - Method in class com.technototes.path.trajectorysequence.TrajectorySequence +
    +
     
    +
    + speed + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + splineTo(Vector2d, double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + splineTo(Vector2d, double, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + splineToConstantHeading(Vector2d, double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + splineToConstantHeading(Vector2d, double, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + splineToLinearHeading(Pose2d, double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + splineToLinearHeading(Pose2d, double, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + splineToSplineHeading(Pose2d, double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + splineToSplineHeading(Pose2d, double, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + start() + - Method in class com.technototes.path.trajectorysequence.TrajectorySequence +
    +
     
    +
    + stop() + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + strafeLeft(double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + strafeLeft(double, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + strafeRight(double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + strafeRight(double, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + strafeTo(Vector2d) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + strafeTo(Vector2d, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + subsystem + - Variable in class com.technototes.path.command.MecanumDriveCommand +
    +
     
    +
    + subsystem + - Variable in class com.technototes.path.command.ResetGyroCommand +
    +
     
    +
    + subsystem + - Variable in class com.technototes.path.command.TrajectoryCommand +
    +
     
    +
    + subsystem + - Variable in class com.technototes.path.command.TrajectorySequenceCommand +
    +
     
    +
    +

    T

    +
    +
    + TankConstants + - Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.AxialPID + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.CrossPID + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.GearRatio + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.HeadPID + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.KA + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.KStatic + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.KV + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.LateralMult + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.MaxAccel + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.MaxAngleAccel + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.MaxAngleVelo + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.MaxRPM + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.MaxVelo + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.MotorVeloPID + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.OmegaWeight + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.PoseLimit + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.TicksPerRev + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.TrackWidth + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.UseDriveEncoder + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.VXWeight + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankConstants.WheelRadius + - Annotation Interface in + com.technototes.path.subsystem +
    +
     
    +
    + TankDrivebaseSubsystem + - Class in + com.technototes.path.subsystem +
    +
     
    +
    + TankDrivebaseSubsystem(EncodedMotorGroup<DcMotorEx>, + EncodedMotorGroup<DcMotorEx>, IMU, TankConstants, Localizer) + - Constructor for class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + ThreeDeadWheelLocalizer + - Class in + com.technototes.path.subsystem +
    +
     
    +
    + ThreeDeadWheelLocalizer(MotorEncoder, MotorEncoder, MotorEncoder, + DeadWheelConstants) + - Constructor for class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + TICKS_PER_REV + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + TICKS_PER_REV + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + ticksPerRev + - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    + toPose() + - Method in class com.technototes.path.geometry.ConfigurablePose +
    +
     
    +
    + toPose() + - Method in class com.technototes.path.geometry.ConfigurablePoseD +
    +
     
    +
    + toString() + - Method in class com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion +
    +
     
    +
    + toVec() + - Method in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    + TRACK_WIDTH + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + TRACK_WIDTH + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + trajectory + - Variable in class com.technototes.path.command.TrajectoryCommand +
    +
     
    +
    + trajectory + - Variable in class com.technototes.path.command.TrajectorySequenceCommand +
    +
     
    +
    + trajectoryBuilder(Pose2d) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + trajectoryBuilder(Pose2d) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + trajectoryBuilder(Pose2d, boolean) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + trajectoryBuilder(Pose2d, boolean) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + trajectoryBuilder(Pose2d, double) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + trajectoryBuilder(Pose2d, double) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + TrajectoryCommand + - Class in + com.technototes.path.command +
    +
     
    +
    + TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Trajectory) + - Constructor for class com.technototes.path.command.TrajectoryCommand +
    +
     
    +
    + TrajectoryCommand(PathingMecanumDrivebaseSubsystem, + BiFunction<Function<Pose2d, TrajectoryBuilder>, T, Trajectory>, T) + - Constructor for class com.technototes.path.command.TrajectoryCommand +
    +
     
    +
    + TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<Function<Pose2d, + TrajectoryBuilder>, Trajectory>) + - Constructor for class com.technototes.path.command.TrajectoryCommand +
    +
     
    +
    + TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function<T, Trajectory>, + T) + - Constructor for class com.technototes.path.command.TrajectoryCommand +
    +
     
    +
    + TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier<Trajectory>) + - Constructor for class com.technototes.path.command.TrajectoryCommand +
    +
     
    +
    + TrajectorySegment + - Class in + com.technototes.path.trajectorysequence.sequencesegment +
    +
     
    +
    + TrajectorySegment(Trajectory) + - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.TrajectorySegment +
    +
     
    +
    + TrajectorySequence + - Class in + com.technototes.path.trajectorysequence +
    +
     
    +
    + TrajectorySequence(List<SequenceSegment>) + - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequence +
    +
     
    +
    + trajectorySequenceBuilder() + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + trajectorySequenceBuilder(Pose2d) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + trajectorySequenceBuilder(Pose2d) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + TrajectorySequenceBuilder + - Class in + com.technototes.path.trajectorysequence +
    +
     
    +
    + TrajectorySequenceBuilder(Pose2d, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint, double, double) + - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + TrajectorySequenceBuilder(Pose2d, Double, TrajectoryVelocityConstraint, + TrajectoryAccelerationConstraint, double, double) + - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + TrajectorySequenceCommand + - Class in + com.technototes.path.command +
    +
     
    +
    + TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, TrajectorySequence) + - Constructor for class com.technototes.path.command.TrajectorySequenceCommand +
    +
     
    +
    + TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, + BiFunction<Function<Pose2d, TrajectorySequenceBuilder>, T, + TrajectorySequence>, T) + - Constructor for class com.technototes.path.command.TrajectorySequenceCommand +
    +
     
    +
    + TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, + Function<Function<Pose2d, TrajectorySequenceBuilder>, + TrajectorySequence>) + - Constructor for class com.technototes.path.command.TrajectorySequenceCommand +
    +
     
    +
    + TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function<T, + TrajectorySequence>, T) + - Constructor for class com.technototes.path.command.TrajectorySequenceCommand +
    +
     
    +
    + TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, + Supplier<TrajectorySequence>) + - Constructor for class com.technototes.path.command.TrajectorySequenceCommand +
    +
     
    +
    + TrajectorySequenceRunner + - Class in + com.technototes.path.trajectorysequence +
    +
     
    +
    + TrajectorySequenceRunner(TrajectoryFollower, PIDCoefficients) + - Constructor for class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    + trajFunc + - Variable in class com.technototes.path.command.RegenerativeTrajectoryCommand +
    +
     
    +
    + trajFunc + - Variable in class com.technototes.path.command.RegenerativeTrajectorySequenceCommand +
    +
     
    +
    + TRANSLATIONAL_PID + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + turn(double) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + turn(double) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + turn(double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + turn(double, double, double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + TURN + - Enum constant in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode +
    +
     
    +
    + turnAsync(double) + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + turnAsync(double) + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + TurnSegment + - Class in + com.technototes.path.trajectorysequence.sequencesegment +
    +
     
    +
    + TurnSegment(Pose2d, double, MotionProfile, List<TrajectoryMarker>) + - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.TurnSegment +
    +
     
    +
    +

    U

    +
    +
    + UNSTABLE_addDisplacementMarkerOffset(double, MarkerCallback) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + UNSTABLE_addTemporalMarkerOffset(double, MarkerCallback) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + update() + - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer +
    +
     
    +
    + update() + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + update() + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + update(Pose2d) + - Method in class com.technototes.path.subsystem.DistanceSensorLocalizer +
    +
     
    +
    + update(Pose2d, Pose2d) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceRunner +
    +
     
    +
    +

    V

    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.path.util.AxesSigns +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + values() + - Static method in enum class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem.Mode +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + values() + - Static method in enum class com.technototes.path.util.AxesSigns +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + VX_WEIGHT + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + VX_WEIGHT + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + VY_WEIGHT + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    +

    W

    +
    +
    + waitForIdle() + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + waitForIdle() + - Method in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + waitSeconds(double) + - Method in class com.technototes.path.trajectorysequence.TrajectorySequenceBuilder +
    +
     
    +
    + WaitSegment + - Class in + com.technototes.path.trajectorysequence.sequencesegment +
    +
     
    +
    + WaitSegment(Pose2d, double, List<TrajectoryMarker>) + - Constructor for class com.technototes.path.trajectorysequence.sequencesegment.WaitSegment +
    +
     
    +
    + WHEEL_BASE + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + WHEEL_RADIUS + - Variable in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + WHEEL_RADIUS + - Variable in class com.technototes.path.subsystem.TankDrivebaseSubsystem +
    +
     
    +
    + wheelRadius + - Variable in class com.technototes.path.subsystem.ThreeDeadWheelLocalizer +
    +
     
    +
    +

    X

    +
    +
    + x + - Variable in class com.technototes.path.command.MecanumDriveCommand +
    +
     
    +
    + x + - Variable in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    +

    Y

    +
    +
    + y + - Variable in class com.technototes.path.command.MecanumDriveCommand +
    +
     
    +
    + y + - Variable in class com.technototes.path.geometry.ConfigurableVector +
    +
     
    +
    +

    Z

    +
    +
    + zeroExternalHeading() + - Method in class com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem +
    +
     
    +
    + A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Serialized Form +
    +
    +
    + diff --git a/docs/Path/index.html b/docs/Path/index.html index 3e24a800..eed71d00 100644 --- a/docs/Path/index.html +++ b/docs/Path/index.html @@ -1,75 +1,118 @@ - + - - -Overview (Path API) - - - - - - - - - - - - - - -
    - - -
    - + + + Overview (Path API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Path API

    +
    +
    +
    Packages
    + +
    +
    +
    +
    + diff --git a/docs/Path/jquery-ui.overrides.css b/docs/Path/jquery-ui.overrides.css index facf852c..bc437535 100644 --- a/docs/Path/jquery-ui.overrides.css +++ b/docs/Path/jquery-ui.overrides.css @@ -29,7 +29,7 @@ a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover { - /* Overrides the color of selection used in jQuery UI */ - background: #F8981D; - border: 1px solid #F8981D; + /* Overrides the color of selection used in jQuery UI */ + background: #f8981d; + border: 1px solid #f8981d; } diff --git a/docs/Path/member-search-index.js b/docs/Path/member-search-index.js index 7f6550ab..7cbacf96 100644 --- a/docs/Path/member-search-index.js +++ b/docs/Path/member-search-index.js @@ -1 +1,1563 @@ -memberSearchIndex = [{"p":"com.technototes.path.util","c":"RegressionUtil.AccelResult","l":"AccelResult(double, double)","u":"%3Cinit%3E(double,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addDisplacementMarker(DisplacementProducer, MarkerCallback)","u":"addDisplacementMarker(com.acmerobotics.roadrunner.trajectory.DisplacementProducer,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addDisplacementMarker(double, double, MarkerCallback)","u":"addDisplacementMarker(double,double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addDisplacementMarker(double, MarkerCallback)","u":"addDisplacementMarker(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addDisplacementMarker(MarkerCallback)","u":"addDisplacementMarker(com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addSpatialMarker(Vector2d, MarkerCallback)","u":"addSpatialMarker(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addTemporalMarker(double, double, MarkerCallback)","u":"addTemporalMarker(double,double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addTemporalMarker(double, MarkerCallback)","u":"addTemporalMarker(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addTemporalMarker(MarkerCallback)","u":"addTemporalMarker(com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addTemporalMarker(TimeProducer, MarkerCallback)","u":"addTemporalMarker(com.acmerobotics.roadrunner.trajectory.TimeProducer,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"addTrajectory(Trajectory)","u":"addTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"AXIAL_PID"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"back(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"back(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"back(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"batteryVoltageSensor"},{"p":"com.technototes.path.util","c":"BNO055IMUUtil","l":"BNO055IMUUtil()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"build()"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"bVal"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_ACTIVE_TRAJECTORY"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_ACTIVE_TURN"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_ACTIVE_WAIT"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_INACTIVE_TRAJECTORY"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_INACTIVE_TURN"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"COLOR_INACTIVE_WAIT"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"compareTo(LynxModuleUtil.LynxFirmwareVersion)","u":"compareTo(com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose(double, double)","u":"%3Cinit%3E(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose(double, double, double)","u":"%3Cinit%3E(double,double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose(Pose2d)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose(Vector2d)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"ConfigurablePose(Vector2d, double)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD(double, double)","u":"%3Cinit%3E(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD(double, double, double)","u":"%3Cinit%3E(double,double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD(Pose2d)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD(Vector2d)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"ConfigurablePoseD(Vector2d, double)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"ConfigurableVector()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"ConfigurableVector(double, double)","u":"%3Cinit%3E(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"ConfigurableVector(Vector2d)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"CROSS_TRACK_PID"},{"p":"com.technototes.path.util","c":"DashboardUtil","l":"DashboardUtil()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"DistanceSensorLocalizer(IGyro, Map)","u":"%3Cinit%3E(com.technototes.library.hardware.sensor.IGyro,java.util.Map)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"DO_DASH"},{"p":"com.technototes.path.util","c":"DashboardUtil","l":"drawPoseHistory(Canvas, List)","u":"drawPoseHistory(com.acmerobotics.dashboard.canvas.Canvas,java.util.List)"},{"p":"com.technototes.path.util","c":"DashboardUtil","l":"drawRobot(Canvas, Pose2d)","u":"drawRobot(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.util","c":"DashboardUtil","l":"drawSampledPath(Canvas, Path)","u":"drawSampledPath(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.path.Path)"},{"p":"com.technototes.path.util","c":"DashboardUtil","l":"drawSampledPath(Canvas, Path, double)","u":"drawSampledPath(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.path.Path,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"duration()"},{"p":"com.technototes.path.trajectorysequence","c":"EmptySequenceException","l":"EmptySequenceException()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"encoderOverflow"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"encoderTicksToInches(double)"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"encoderTicksToInches(double, double, double, double)","u":"encoderTicksToInches(double,double,double,double)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"encoderTicksToInches(double, double, double, double)","u":"encoderTicksToInches(double,double,double,double)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"encoderTicksToInches(double, double, double, double)","u":"encoderTicksToInches(double,double,double,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"end()"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"end(boolean)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"end(boolean)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"end(boolean)"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"eng"},{"p":"com.technototes.path.util","c":"LynxModuleUtil","l":"ensureMinimumFirmwareVersion(HardwareMap)","u":"ensureMinimumFirmwareVersion(com.qualcomm.robotcore.hardware.HardwareMap)"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"equals(Object)","u":"equals(java.lang.Object)"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"execute()"},{"p":"com.technototes.path.command","c":"ResetGyroCommand","l":"execute()"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"execute()"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"execute()"},{"p":"com.technototes.path.util","c":"RegressionUtil","l":"fitAccelData(List, List, List, RegressionUtil.RampResult, File)","u":"fitAccelData(java.util.List,java.util.List,java.util.List,com.technototes.path.util.RegressionUtil.RampResult,java.io.File)"},{"p":"com.technototes.path.util","c":"RegressionUtil","l":"fitRampData(List, List, List, boolean, File)","u":"fitRampData(java.util.List,java.util.List,java.util.List,boolean,java.io.File)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem.Mode","l":"FOLLOW_TRAJECTORY"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"followTrajectory(Trajectory)","u":"followTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"followTrajectory(Trajectory)","u":"followTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"followTrajectoryAsync(Trajectory)","u":"followTrajectoryAsync(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"followTrajectoryAsync(Trajectory)","u":"followTrajectoryAsync(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"followTrajectorySequence(TrajectorySequence)","u":"followTrajectorySequence(com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"followTrajectorySequence(TrajectorySequence)","u":"followTrajectorySequence(com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"followTrajectorySequenceAsync(TrajectorySequence)","u":"followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"followTrajectorySequenceAsync(TrajectorySequence)","u":"followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"followTrajectorySequenceAsync(TrajectorySequence)","u":"followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"forward(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"forward(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"forward(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"forwardOffset"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"frontEncoder"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"GEAR_RATIO"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"GEAR_RATIO"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"gearRatio"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"get(int)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getAccelerationConstraint(double)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getAccelerationConstraint(double)"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"getBoolean(Class)","u":"getBoolean(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getBoolean(Class)","u":"getBoolean(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getBoolean(Class)","u":"getBoolean(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"getConstant()"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getConstant()"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getConstant()"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"getDouble(Class)","u":"getDouble(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getDouble(Class)","u":"getDouble(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getDouble(Class)","u":"getDouble(java.lang.Class)"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"SequenceSegment","l":"getDuration()"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"SequenceSegment","l":"getEndPose()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getExternalHeadingVelocity()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getExternalHeadingVelocity()"},{"p":"com.technototes.path.util","c":"LynxModuleUtil","l":"getFirmwareVersion(LynxModule)","u":"getFirmwareVersion(com.qualcomm.hardware.lynx.LynxModule)"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"getGearRatio()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"getHeading()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"getHeading()"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"getHeading()"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getInt(Class)","u":"getInt(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getInt(Class)","u":"getInt(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getLastError()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getLastError()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"getLastPoseError()"},{"p":"com.technototes.path.util","c":"LoggingUtil","l":"getLogFile(String)","u":"getLogFile(java.lang.String)"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"SequenceSegment","l":"getMarkers()"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"TurnSegment","l":"getMotionProfile()"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"getMotorVelocityF(double)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getMotorVelocityF(double)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getMotorVelocityF(double)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getPID(Class)","u":"getPID(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getPID(Class)","u":"getPID(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"getPIDF(Class)","u":"getPIDF(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"getPIDF(Class)","u":"getPIDF(java.lang.Class)"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"getPoseEstimate()"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"getPoseVelocity()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"getRadians()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getRawExternalHeading()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getRawExternalHeading()"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"SequenceSegment","l":"getStartPose()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"getTicksPerRev()"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"TurnSegment","l":"getTotalRotation()"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"TrajectorySegment","l":"getTrajectory()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getVelocityConstraint(double, double, double)","u":"getVelocityConstraint(double,double,double)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getVelocityConstraint(double, double, double)","u":"getVelocityConstraint(double,double,double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getWheelPositions()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getWheelPositions()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"getWheelPositions()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"getWheelRadius()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"getWheelVelocities()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"getWheelVelocities()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"getWheelVelocities()"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"getX()"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"getY()"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"gyroOffset"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"heading"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"heading"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"HEADING_PID"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"HEADING_PID"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem.Mode","l":"IDLE"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"imu"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"initialize()"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"initialize()"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"initialize()"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"initialize()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"isBusy()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"isBusy()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"isBusy()"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"isFinished()"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"isFinished()"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"isFinished()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"kA"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"kA"},{"p":"com.technototes.path.util","c":"RegressionUtil.AccelResult","l":"kA"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"kStatic"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"kStatic"},{"p":"com.technototes.path.util","c":"RegressionUtil.RampResult","l":"kStatic"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"kV"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"kV"},{"p":"com.technototes.path.util","c":"RegressionUtil.RampResult","l":"kV"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"LATERAL_MULTIPLIER"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"LATERAL_MULTIPLIER"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"lateralDistance"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"leftEncoder"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"leftFront"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"leftRear"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineTo(Vector2d)","u":"lineTo(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"lineTo(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToConstantHeading(Vector2d)","u":"lineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToConstantHeading(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"lineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToLinearHeading(Pose2d)","u":"lineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToLinearHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"lineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToSplineHeading(Pose2d)","u":"lineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"lineToSplineHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"lineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.util","c":"LoggingUtil","l":"LoggingUtil()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"LynxFirmwareVersion(int, int, int)","u":"%3Cinit%3E(int,int,int)"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersionException","l":"LynxFirmwareVersionException(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.path.util","c":"LynxModuleUtil","l":"LynxModuleUtil()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"major"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mapPose(Function)","u":"mapPose(java.util.function.Function)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mapPose(Function)","u":"mapPose(java.util.function.Function)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mapVec(Function)","u":"mapVec(java.util.function.Function)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mapX(Function)","u":"mapX(java.util.function.Function)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mapY(Function)","u":"mapY(java.util.function.Function)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MAX_ACCEL"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MAX_ACCEL"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MAX_ANG_ACCEL"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MAX_ANG_ACCEL"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MAX_ANG_VEL"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MAX_ANG_VEL"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MAX_RPM"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MAX_RPM"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MAX_VEL"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MAX_VEL"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"MecanumDriveCommand(PathingMecanumDrivebaseSubsystem, DoubleSupplier, DoubleSupplier, DoubleSupplier)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.DoubleSupplier,java.util.function.DoubleSupplier,java.util.function.DoubleSupplier)"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"minor"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mirrorOverX(Pose2d)","u":"mirrorOverX(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mirrorOverX(Pose2d)","u":"mirrorOverX(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mirrorOverY(Pose2d)","u":"mirrorOverY(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mirrorOverY(Pose2d)","u":"mirrorOverY(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"MOTOR_VELO_PID"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"MOTOR_VELO_PID"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"motors"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mutateHeading(UnaryOperator)","u":"mutateHeading(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mutateHeading(UnaryOperator)","u":"mutateHeading(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mutatePose(UnaryOperator)","u":"mutatePose(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mutatePose(UnaryOperator)","u":"mutatePose(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mutateVec(UnaryOperator)","u":"mutateVec(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mutateVec(UnaryOperator)","u":"mutateVec(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mutateVec(UnaryOperator)","u":"mutateVec(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mutateX(UnaryOperator)","u":"mutateX(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mutateX(UnaryOperator)","u":"mutateX(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mutateX(UnaryOperator)","u":"mutateX(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"mutateY(UnaryOperator)","u":"mutateY(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"mutateY(UnaryOperator)","u":"mutateY(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"mutateY(UnaryOperator)","u":"mutateY(java.util.function.UnaryOperator)"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"NNN"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"NNP"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"NPN"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"NPP"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"OMEGA_WEIGHT"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"OMEGA_WEIGHT"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"PathingMecanumDrivebaseSubsystem(EncodedMotor, EncodedMotor, EncodedMotor, EncodedMotor, IMU, MecanumConstants)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.MecanumConstants)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"PathingMecanumDrivebaseSubsystem(EncodedMotor, EncodedMotor, EncodedMotor, EncodedMotor, IMU, MecanumConstants, Localizer)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.MecanumConstants,com.acmerobotics.roadrunner.localization.Localizer)"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"PNN"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"PNP"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"POSE_HISTORY_LIMIT"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"POSE_HISTORY_LIMIT"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"POSE_HISTORY_LIMIT"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"PPN"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"PPP"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"r"},{"p":"com.technototes.path.util","c":"RegressionUtil.RampResult","l":"RampResult(double, double, double)","u":"%3Cinit%3E(double,double,double)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, Trajectory>, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, Trajectory>)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, TrajectorySequence>, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, TrajectorySequence>)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)"},{"p":"com.technototes.path.util","c":"RegressionUtil","l":"RegressionUtil()","u":"%3Cinit%3E()"},{"p":"com.technototes.path.util","c":"BNO055IMUUtil","l":"remapAxes(BNO055IMU, AxesOrder, AxesSigns)","u":"remapAxes(com.qualcomm.hardware.bosch.BNO055IMU,org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.path.util.AxesSigns)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"resetAccelConstraint()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"resetConstraints()"},{"p":"com.technototes.path.command","c":"ResetGyroCommand","l":"ResetGyroCommand(PathingMecanumDrivebaseSubsystem)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"resetTurnConstraint()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"resetVelConstraint()"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"rightEncoder"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"rightFront"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"rightRear"},{"p":"com.technototes.path.util","c":"LoggingUtil","l":"ROAD_RUNNER_FOLDER"},{"p":"com.technototes.path.subsystem","c":"DeadWheelConstants","l":"rpmToVelocity(double, double, double)","u":"rpmToVelocity(double,double,double)"},{"p":"com.technototes.path.subsystem","c":"MecanumConstants","l":"rpmToVelocity(double, double, double)","u":"rpmToVelocity(double,double,double)"},{"p":"com.technototes.path.subsystem","c":"TankConstants","l":"rpmToVelocity(double, double, double)","u":"rpmToVelocity(double,double,double)"},{"p":"com.technototes.path.util","c":"RegressionUtil.AccelResult","l":"rSquare"},{"p":"com.technototes.path.util","c":"RegressionUtil.RampResult","l":"rSquare"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"RUN_USING_ENCODER"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"RUN_USING_ENCODER"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"SequenceSegment","l":"SequenceSegment(double, Pose2d, Pose2d, List)","u":"%3Cinit%3E(double,com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.geometry.Pose2d,java.util.List)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"set(double, double)","u":"set(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"set(double, double)","u":"set(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"set(double, double)","u":"set(double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"set(double, double, double)","u":"set(double,double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"set(double, double, double)","u":"set(double,double,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"set(Pose2d)","u":"set(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"set(Pose2d)","u":"set(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"set(Vector2d)","u":"set(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"set(Vector2d)","u":"set(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"set(Vector2d)","u":"set(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"set(Vector2d, double)","u":"set(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"set(Vector2d, double)","u":"set(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setAccelConstraint(TrajectoryAccelerationConstraint)","u":"setAccelConstraint(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setConstraints(TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"setConstraints(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"setGyroOffset(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"setHeading(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"setHeading(double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"setMode(DcMotor.RunMode)","u":"setMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"setMode(DcMotor.RunMode)","u":"setMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"setMotorPowers(double, double)","u":"setMotorPowers(double,double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"setMotorPowers(double, double, double, double)","u":"setMotorPowers(double,double,double,double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients)","u":"setPIDFCoefficients(com.qualcomm.robotcore.hardware.DcMotor.RunMode,com.qualcomm.robotcore.hardware.PIDFCoefficients)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients)","u":"setPIDFCoefficients(com.qualcomm.robotcore.hardware.DcMotor.RunMode,com.qualcomm.robotcore.hardware.PIDFCoefficients)"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"setPoseEstimate(Pose2d)","u":"setPoseEstimate(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setReversed(boolean)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setTangent(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setTurnConstraint(double, double)","u":"setTurnConstraint(double,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"setVelConstraint(TrajectoryVelocityConstraint)","u":"setVelConstraint(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"setWeightedDrivePower(Pose2d)","u":"setWeightedDrivePower(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"setWeightedDrivePower(Pose2d)","u":"setWeightedDrivePower(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"setX(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"setX(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"setX(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"setY(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"setY(double)"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"setY(double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"setZeroPowerBehavior(DcMotor.ZeroPowerBehavior)","u":"setZeroPowerBehavior(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"setZeroPowerBehavior(DcMotor.ZeroPowerBehavior)","u":"setZeroPowerBehavior(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"size()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"speed"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineTo(Vector2d, double)","u":"splineTo(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineTo(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"splineTo(com.acmerobotics.roadrunner.geometry.Vector2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToConstantHeading(Vector2d, double)","u":"splineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToConstantHeading(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"splineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToLinearHeading(Pose2d, double)","u":"splineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToLinearHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"splineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToSplineHeading(Pose2d, double)","u":"splineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"splineToSplineHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"splineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"start()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"stop()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeLeft(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeLeft(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"strafeLeft(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeRight(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeRight(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"strafeRight(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeTo(Vector2d)","u":"strafeTo(com.acmerobotics.roadrunner.geometry.Vector2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"strafeTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)","u":"strafeTo(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"subsystem"},{"p":"com.technototes.path.command","c":"ResetGyroCommand","l":"subsystem"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"subsystem"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"subsystem"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"TankDrivebaseSubsystem(EncodedMotorGroup, EncodedMotorGroup, IMU, TankConstants, Localizer)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotorGroup,com.technototes.library.hardware.motor.EncodedMotorGroup,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.TankConstants,com.acmerobotics.roadrunner.localization.Localizer)"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"ThreeDeadWheelLocalizer(MotorEncoder, MotorEncoder, MotorEncoder, DeadWheelConstants)","u":"%3Cinit%3E(com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.path.subsystem.DeadWheelConstants)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"TICKS_PER_REV"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"TICKS_PER_REV"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"ticksPerRev"},{"p":"com.technototes.path.geometry","c":"ConfigurablePose","l":"toPose()"},{"p":"com.technototes.path.geometry","c":"ConfigurablePoseD","l":"toPose()"},{"p":"com.technototes.path.util","c":"LynxModuleUtil.LynxFirmwareVersion","l":"toString()"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"toVec()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"TRACK_WIDTH"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"TRACK_WIDTH"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"trajectory"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"trajectory"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d, boolean)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,boolean)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d, boolean)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,boolean)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d, double)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,double)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"trajectoryBuilder(Pose2d, double)","u":"trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,double)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"TrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, Trajectory>, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, Trajectory>)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)"},{"p":"com.technototes.path.command","c":"TrajectoryCommand","l":"TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Trajectory)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"TrajectorySegment","l":"TrajectorySegment(Trajectory)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.trajectory.Trajectory)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequence","l":"TrajectorySequence(List)","u":"%3Cinit%3E(java.util.List)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"trajectorySequenceBuilder()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"trajectorySequenceBuilder(Pose2d)","u":"trajectorySequenceBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"trajectorySequenceBuilder(Pose2d)","u":"trajectorySequenceBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"TrajectorySequenceBuilder(Pose2d, Double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,java.lang.Double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint,double,double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"TrajectorySequenceBuilder(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint,double,double)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, TrajectorySequence>, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, TrajectorySequence>)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, T)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)"},{"p":"com.technototes.path.command","c":"TrajectorySequenceCommand","l":"TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, TrajectorySequence)","u":"%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,com.technototes.path.trajectorysequence.TrajectorySequence)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"TrajectorySequenceRunner(TrajectoryFollower, PIDCoefficients)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.followers.TrajectoryFollower,com.acmerobotics.roadrunner.control.PIDCoefficients)"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectoryCommand","l":"trajFunc"},{"p":"com.technototes.path.command","c":"RegenerativeTrajectorySequenceCommand","l":"trajFunc"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"TRANSLATIONAL_PID"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem.Mode","l":"TURN"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"turn(double)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"turn(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"turn(double)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"turn(double, double, double)","u":"turn(double,double,double)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"turnAsync(double)"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"turnAsync(double)"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"TurnSegment","l":"TurnSegment(Pose2d, double, MotionProfile, List)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.profile.MotionProfile,java.util.List)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"UNSTABLE_addDisplacementMarkerOffset(double, MarkerCallback)","u":"UNSTABLE_addDisplacementMarkerOffset(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"UNSTABLE_addTemporalMarkerOffset(double, MarkerCallback)","u":"UNSTABLE_addTemporalMarkerOffset(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"update()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"update()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"update()"},{"p":"com.technototes.path.subsystem","c":"DistanceSensorLocalizer","l":"update(Pose2d)","u":"update(com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceRunner","l":"update(Pose2d, Pose2d)","u":"update(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.geometry.Pose2d)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem.Mode","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem.Mode","l":"values()"},{"p":"com.technototes.path.util","c":"AxesSigns","l":"values()"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"VX_WEIGHT"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"VX_WEIGHT"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"VY_WEIGHT"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"waitForIdle()"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"waitForIdle()"},{"p":"com.technototes.path.trajectorysequence","c":"TrajectorySequenceBuilder","l":"waitSeconds(double)"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","c":"WaitSegment","l":"WaitSegment(Pose2d, double, List)","u":"%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,double,java.util.List)"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"WHEEL_BASE"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"WHEEL_RADIUS"},{"p":"com.technototes.path.subsystem","c":"TankDrivebaseSubsystem","l":"WHEEL_RADIUS"},{"p":"com.technototes.path.subsystem","c":"ThreeDeadWheelLocalizer","l":"wheelRadius"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"x"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"x"},{"p":"com.technototes.path.command","c":"MecanumDriveCommand","l":"y"},{"p":"com.technototes.path.geometry","c":"ConfigurableVector","l":"y"},{"p":"com.technototes.path.subsystem","c":"PathingMecanumDrivebaseSubsystem","l":"zeroExternalHeading()"}];updateSearchResults(); \ No newline at end of file +memberSearchIndex = [ + { + p: 'com.technototes.path.util', + c: 'RegressionUtil.AccelResult', + l: 'AccelResult(double, double)', + u: '%3Cinit%3E(double,double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'addDisplacementMarker(DisplacementProducer, MarkerCallback)', + u: 'addDisplacementMarker(com.acmerobotics.roadrunner.trajectory.DisplacementProducer,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'addDisplacementMarker(double, double, MarkerCallback)', + u: 'addDisplacementMarker(double,double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'addDisplacementMarker(double, MarkerCallback)', + u: 'addDisplacementMarker(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'addDisplacementMarker(MarkerCallback)', + u: 'addDisplacementMarker(com.acmerobotics.roadrunner.trajectory.MarkerCallback)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'addSpatialMarker(Vector2d, MarkerCallback)', + u: 'addSpatialMarker(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'addTemporalMarker(double, double, MarkerCallback)', + u: 'addTemporalMarker(double,double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'addTemporalMarker(double, MarkerCallback)', + u: 'addTemporalMarker(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'addTemporalMarker(MarkerCallback)', + u: 'addTemporalMarker(com.acmerobotics.roadrunner.trajectory.MarkerCallback)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'addTemporalMarker(TimeProducer, MarkerCallback)', + u: 'addTemporalMarker(com.acmerobotics.roadrunner.trajectory.TimeProducer,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'addTrajectory(Trajectory)', + u: 'addTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'AXIAL_PID' }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'back(double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'back(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'back(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'batteryVoltageSensor', + }, + { p: 'com.technototes.path.util', c: 'BNO055IMUUtil', l: 'BNO055IMUUtil()', u: '%3Cinit%3E()' }, + { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequenceBuilder', l: 'build()' }, + { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'bVal' }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceRunner', + l: 'COLOR_ACTIVE_TRAJECTORY', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceRunner', + l: 'COLOR_ACTIVE_TURN', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceRunner', + l: 'COLOR_ACTIVE_WAIT', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceRunner', + l: 'COLOR_INACTIVE_TRAJECTORY', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceRunner', + l: 'COLOR_INACTIVE_TURN', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceRunner', + l: 'COLOR_INACTIVE_WAIT', + }, + { + p: 'com.technototes.path.util', + c: 'LynxModuleUtil.LynxFirmwareVersion', + l: 'compareTo(LynxModuleUtil.LynxFirmwareVersion)', + u: 'compareTo(com.technototes.path.util.LynxModuleUtil.LynxFirmwareVersion)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'ConfigurablePose()', + u: '%3Cinit%3E()', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'ConfigurablePose(double, double)', + u: '%3Cinit%3E(double,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'ConfigurablePose(double, double, double)', + u: '%3Cinit%3E(double,double,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'ConfigurablePose(Pose2d)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'ConfigurablePose(Vector2d)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'ConfigurablePose(Vector2d, double)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'ConfigurablePoseD()', + u: '%3Cinit%3E()', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'ConfigurablePoseD(double, double)', + u: '%3Cinit%3E(double,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'ConfigurablePoseD(double, double, double)', + u: '%3Cinit%3E(double,double,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'ConfigurablePoseD(Pose2d)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'ConfigurablePoseD(Vector2d)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'ConfigurablePoseD(Vector2d, double)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurableVector', + l: 'ConfigurableVector()', + u: '%3Cinit%3E()', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurableVector', + l: 'ConfigurableVector(double, double)', + u: '%3Cinit%3E(double,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurableVector', + l: 'ConfigurableVector(Vector2d)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Vector2d)', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'CROSS_TRACK_PID' }, + { p: 'com.technototes.path.util', c: 'DashboardUtil', l: 'DashboardUtil()', u: '%3Cinit%3E()' }, + { + p: 'com.technototes.path.subsystem', + c: 'DistanceSensorLocalizer', + l: 'DistanceSensorLocalizer(IGyro, Map)', + u: '%3Cinit%3E(com.technototes.library.hardware.sensor.IGyro,java.util.Map)', + }, + { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequenceRunner', l: 'DO_DASH' }, + { + p: 'com.technototes.path.util', + c: 'DashboardUtil', + l: 'drawPoseHistory(Canvas, List)', + u: 'drawPoseHistory(com.acmerobotics.dashboard.canvas.Canvas,java.util.List)', + }, + { + p: 'com.technototes.path.util', + c: 'DashboardUtil', + l: 'drawRobot(Canvas, Pose2d)', + u: 'drawRobot(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.util', + c: 'DashboardUtil', + l: 'drawSampledPath(Canvas, Path)', + u: 'drawSampledPath(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.path.Path)', + }, + { + p: 'com.technototes.path.util', + c: 'DashboardUtil', + l: 'drawSampledPath(Canvas, Path, double)', + u: 'drawSampledPath(com.acmerobotics.dashboard.canvas.Canvas,com.acmerobotics.roadrunner.path.Path,double)', + }, + { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequence', l: 'duration()' }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'EmptySequenceException', + l: 'EmptySequenceException()', + u: '%3Cinit%3E()', + }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'encoderOverflow' }, + { + p: 'com.technototes.path.subsystem', + c: 'ThreeDeadWheelLocalizer', + l: 'encoderTicksToInches(double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'DeadWheelConstants', + l: 'encoderTicksToInches(double, double, double, double)', + u: 'encoderTicksToInches(double,double,double,double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'MecanumConstants', + l: 'encoderTicksToInches(double, double, double, double)', + u: 'encoderTicksToInches(double,double,double,double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankConstants', + l: 'encoderTicksToInches(double, double, double, double)', + u: 'encoderTicksToInches(double,double,double,double)', + }, + { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequence', l: 'end()' }, + { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'end(boolean)' }, + { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'end(boolean)' }, + { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'end(boolean)' }, + { p: 'com.technototes.path.util', c: 'LynxModuleUtil.LynxFirmwareVersion', l: 'eng' }, + { + p: 'com.technototes.path.util', + c: 'LynxModuleUtil', + l: 'ensureMinimumFirmwareVersion(HardwareMap)', + u: 'ensureMinimumFirmwareVersion(com.qualcomm.robotcore.hardware.HardwareMap)', + }, + { + p: 'com.technototes.path.util', + c: 'LynxModuleUtil.LynxFirmwareVersion', + l: 'equals(Object)', + u: 'equals(java.lang.Object)', + }, + { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'execute()' }, + { p: 'com.technototes.path.command', c: 'ResetGyroCommand', l: 'execute()' }, + { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'execute()' }, + { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'execute()' }, + { + p: 'com.technototes.path.util', + c: 'RegressionUtil', + l: 'fitAccelData(List, List, List, RegressionUtil.RampResult, File)', + u: 'fitAccelData(java.util.List,java.util.List,java.util.List,com.technototes.path.util.RegressionUtil.RampResult,java.io.File)', + }, + { + p: 'com.technototes.path.util', + c: 'RegressionUtil', + l: 'fitRampData(List, List, List, boolean, File)', + u: 'fitRampData(java.util.List,java.util.List,java.util.List,boolean,java.io.File)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem.Mode', + l: 'FOLLOW_TRAJECTORY', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'followTrajectory(Trajectory)', + u: 'followTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'followTrajectory(Trajectory)', + u: 'followTrajectory(com.acmerobotics.roadrunner.trajectory.Trajectory)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'followTrajectoryAsync(Trajectory)', + u: 'followTrajectoryAsync(com.acmerobotics.roadrunner.trajectory.Trajectory)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'followTrajectoryAsync(Trajectory)', + u: 'followTrajectoryAsync(com.acmerobotics.roadrunner.trajectory.Trajectory)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'followTrajectorySequence(TrajectorySequence)', + u: 'followTrajectorySequence(com.technototes.path.trajectorysequence.TrajectorySequence)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'followTrajectorySequence(TrajectorySequence)', + u: 'followTrajectorySequence(com.technototes.path.trajectorysequence.TrajectorySequence)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'followTrajectorySequenceAsync(TrajectorySequence)', + u: 'followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'followTrajectorySequenceAsync(TrajectorySequence)', + u: 'followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceRunner', + l: 'followTrajectorySequenceAsync(TrajectorySequence)', + u: 'followTrajectorySequenceAsync(com.technototes.path.trajectorysequence.TrajectorySequence)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'forward(double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'forward(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'forward(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'forwardOffset' }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'frontEncoder' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'GEAR_RATIO' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'GEAR_RATIO' }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'gearRatio' }, + { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequence', l: 'get(int)' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'getAccelerationConstraint(double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'getAccelerationConstraint(double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'DeadWheelConstants', + l: 'getBoolean(Class)', + u: 'getBoolean(java.lang.Class)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'MecanumConstants', + l: 'getBoolean(Class)', + u: 'getBoolean(java.lang.Class)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankConstants', + l: 'getBoolean(Class)', + u: 'getBoolean(java.lang.Class)', + }, + { p: 'com.technototes.path.subsystem', c: 'DeadWheelConstants', l: 'getConstant()' }, + { p: 'com.technototes.path.subsystem', c: 'MecanumConstants', l: 'getConstant()' }, + { p: 'com.technototes.path.subsystem', c: 'TankConstants', l: 'getConstant()' }, + { + p: 'com.technototes.path.subsystem', + c: 'DeadWheelConstants', + l: 'getDouble(Class)', + u: 'getDouble(java.lang.Class)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'MecanumConstants', + l: 'getDouble(Class)', + u: 'getDouble(java.lang.Class)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankConstants', + l: 'getDouble(Class)', + u: 'getDouble(java.lang.Class)', + }, + { + p: 'com.technototes.path.trajectorysequence.sequencesegment', + c: 'SequenceSegment', + l: 'getDuration()', + }, + { + p: 'com.technototes.path.trajectorysequence.sequencesegment', + c: 'SequenceSegment', + l: 'getEndPose()', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'getExternalHeadingVelocity()', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'getExternalHeadingVelocity()', + }, + { + p: 'com.technototes.path.util', + c: 'LynxModuleUtil', + l: 'getFirmwareVersion(LynxModule)', + u: 'getFirmwareVersion(com.qualcomm.hardware.lynx.LynxModule)', + }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'getGearRatio()' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'getHeading()' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'getHeading()' }, + { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'getHeading()' }, + { + p: 'com.technototes.path.subsystem', + c: 'MecanumConstants', + l: 'getInt(Class)', + u: 'getInt(java.lang.Class)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankConstants', + l: 'getInt(Class)', + u: 'getInt(java.lang.Class)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'getLastError()', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'getLastError()' }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceRunner', + l: 'getLastPoseError()', + }, + { + p: 'com.technototes.path.util', + c: 'LoggingUtil', + l: 'getLogFile(String)', + u: 'getLogFile(java.lang.String)', + }, + { + p: 'com.technototes.path.trajectorysequence.sequencesegment', + c: 'SequenceSegment', + l: 'getMarkers()', + }, + { + p: 'com.technototes.path.trajectorysequence.sequencesegment', + c: 'TurnSegment', + l: 'getMotionProfile()', + }, + { p: 'com.technototes.path.subsystem', c: 'DeadWheelConstants', l: 'getMotorVelocityF(double)' }, + { p: 'com.technototes.path.subsystem', c: 'MecanumConstants', l: 'getMotorVelocityF(double)' }, + { p: 'com.technototes.path.subsystem', c: 'TankConstants', l: 'getMotorVelocityF(double)' }, + { + p: 'com.technototes.path.subsystem', + c: 'MecanumConstants', + l: 'getPID(Class)', + u: 'getPID(java.lang.Class)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankConstants', + l: 'getPID(Class)', + u: 'getPID(java.lang.Class)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'MecanumConstants', + l: 'getPIDF(Class)', + u: 'getPIDF(java.lang.Class)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankConstants', + l: 'getPIDF(Class)', + u: 'getPIDF(java.lang.Class)', + }, + { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'getPoseEstimate()' }, + { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'getPoseVelocity()' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'getRadians()' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'getRawExternalHeading()', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'getRawExternalHeading()', + }, + { + p: 'com.technototes.path.trajectorysequence.sequencesegment', + c: 'SequenceSegment', + l: 'getStartPose()', + }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'getTicksPerRev()' }, + { + p: 'com.technototes.path.trajectorysequence.sequencesegment', + c: 'TurnSegment', + l: 'getTotalRotation()', + }, + { + p: 'com.technototes.path.trajectorysequence.sequencesegment', + c: 'TrajectorySegment', + l: 'getTrajectory()', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'getVelocityConstraint(double, double, double)', + u: 'getVelocityConstraint(double,double,double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'getVelocityConstraint(double, double, double)', + u: 'getVelocityConstraint(double,double,double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'getWheelPositions()', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'getWheelPositions()' }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'getWheelPositions()' }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'getWheelRadius()' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'getWheelVelocities()', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'getWheelVelocities()' }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'getWheelVelocities()' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'getX()' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'getY()' }, + { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'gyroOffset' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'heading' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'heading' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'HEADING_PID' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'HEADING_PID' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem.Mode', l: 'IDLE' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'imu' }, + { p: 'com.technototes.path.command', c: 'RegenerativeTrajectoryCommand', l: 'initialize()' }, + { + p: 'com.technototes.path.command', + c: 'RegenerativeTrajectorySequenceCommand', + l: 'initialize()', + }, + { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'initialize()' }, + { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'initialize()' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'isBusy()' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'isBusy()' }, + { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequenceRunner', l: 'isBusy()' }, + { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'isFinished()' }, + { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'isFinished()' }, + { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'isFinished()' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'kA' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'kA' }, + { p: 'com.technototes.path.util', c: 'RegressionUtil.AccelResult', l: 'kA' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'kStatic' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'kStatic' }, + { p: 'com.technototes.path.util', c: 'RegressionUtil.RampResult', l: 'kStatic' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'kV' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'kV' }, + { p: 'com.technototes.path.util', c: 'RegressionUtil.RampResult', l: 'kV' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'LATERAL_MULTIPLIER', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'LATERAL_MULTIPLIER' }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'lateralDistance' }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'leftEncoder' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'leftFront' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'leftRear' }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'lineTo(Vector2d)', + u: 'lineTo(com.acmerobotics.roadrunner.geometry.Vector2d)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'lineTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'lineTo(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'lineToConstantHeading(Vector2d)', + u: 'lineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'lineToConstantHeading(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'lineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'lineToLinearHeading(Pose2d)', + u: 'lineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'lineToLinearHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'lineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'lineToSplineHeading(Pose2d)', + u: 'lineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'lineToSplineHeading(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'lineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { p: 'com.technototes.path.util', c: 'LoggingUtil', l: 'LoggingUtil()', u: '%3Cinit%3E()' }, + { + p: 'com.technototes.path.util', + c: 'LynxModuleUtil.LynxFirmwareVersion', + l: 'LynxFirmwareVersion(int, int, int)', + u: '%3Cinit%3E(int,int,int)', + }, + { + p: 'com.technototes.path.util', + c: 'LynxModuleUtil.LynxFirmwareVersionException', + l: 'LynxFirmwareVersionException(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { p: 'com.technototes.path.util', c: 'LynxModuleUtil', l: 'LynxModuleUtil()', u: '%3Cinit%3E()' }, + { p: 'com.technototes.path.util', c: 'LynxModuleUtil.LynxFirmwareVersion', l: 'major' }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'mapPose(Function)', + u: 'mapPose(java.util.function.Function)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'mapPose(Function)', + u: 'mapPose(java.util.function.Function)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurableVector', + l: 'mapVec(Function)', + u: 'mapVec(java.util.function.Function)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurableVector', + l: 'mapX(Function)', + u: 'mapX(java.util.function.Function)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurableVector', + l: 'mapY(Function)', + u: 'mapY(java.util.function.Function)', + }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'MAX_ACCEL' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MAX_ACCEL' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'MAX_ANG_ACCEL', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MAX_ANG_ACCEL' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'MAX_ANG_VEL' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MAX_ANG_VEL' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'MAX_RPM' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MAX_RPM' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'MAX_VEL' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MAX_VEL' }, + { + p: 'com.technototes.path.command', + c: 'MecanumDriveCommand', + l: 'MecanumDriveCommand(PathingMecanumDrivebaseSubsystem, DoubleSupplier, DoubleSupplier, DoubleSupplier)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.DoubleSupplier,java.util.function.DoubleSupplier,java.util.function.DoubleSupplier)', + }, + { p: 'com.technototes.path.util', c: 'LynxModuleUtil.LynxFirmwareVersion', l: 'minor' }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'mirrorOverX(Pose2d)', + u: 'mirrorOverX(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'mirrorOverX(Pose2d)', + u: 'mirrorOverX(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'mirrorOverY(Pose2d)', + u: 'mirrorOverY(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'mirrorOverY(Pose2d)', + u: 'mirrorOverY(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'MOTOR_VELO_PID', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'MOTOR_VELO_PID' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'motors' }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'mutateHeading(UnaryOperator)', + u: 'mutateHeading(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'mutateHeading(UnaryOperator)', + u: 'mutateHeading(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'mutatePose(UnaryOperator)', + u: 'mutatePose(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'mutatePose(UnaryOperator)', + u: 'mutatePose(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'mutateVec(UnaryOperator)', + u: 'mutateVec(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'mutateVec(UnaryOperator)', + u: 'mutateVec(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurableVector', + l: 'mutateVec(UnaryOperator)', + u: 'mutateVec(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'mutateX(UnaryOperator)', + u: 'mutateX(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'mutateX(UnaryOperator)', + u: 'mutateX(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurableVector', + l: 'mutateX(UnaryOperator)', + u: 'mutateX(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'mutateY(UnaryOperator)', + u: 'mutateY(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'mutateY(UnaryOperator)', + u: 'mutateY(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurableVector', + l: 'mutateY(UnaryOperator)', + u: 'mutateY(java.util.function.UnaryOperator)', + }, + { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'NNN' }, + { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'NNP' }, + { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'NPN' }, + { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'NPP' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'OMEGA_WEIGHT' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'OMEGA_WEIGHT' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'PathingMecanumDrivebaseSubsystem(EncodedMotor, EncodedMotor, EncodedMotor, EncodedMotor, IMU, MecanumConstants)', + u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.MecanumConstants)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'PathingMecanumDrivebaseSubsystem(EncodedMotor, EncodedMotor, EncodedMotor, EncodedMotor, IMU, MecanumConstants, Localizer)', + u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.MecanumConstants,com.acmerobotics.roadrunner.localization.Localizer)', + }, + { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'PNN' }, + { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'PNP' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'POSE_HISTORY_LIMIT', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'POSE_HISTORY_LIMIT' }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceRunner', + l: 'POSE_HISTORY_LIMIT', + }, + { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'PPN' }, + { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'PPP' }, + { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'r' }, + { + p: 'com.technototes.path.util', + c: 'RegressionUtil.RampResult', + l: 'RampResult(double, double, double)', + u: '%3Cinit%3E(double,double,double)', + }, + { + p: 'com.technototes.path.command', + c: 'RegenerativeTrajectoryCommand', + l: 'RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, Trajectory>, T)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)', + }, + { + p: 'com.technototes.path.command', + c: 'RegenerativeTrajectoryCommand', + l: 'RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, Trajectory>)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)', + }, + { + p: 'com.technototes.path.command', + c: 'RegenerativeTrajectoryCommand', + l: 'RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, T)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)', + }, + { + p: 'com.technototes.path.command', + c: 'RegenerativeTrajectoryCommand', + l: 'RegenerativeTrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)', + }, + { + p: 'com.technototes.path.command', + c: 'RegenerativeTrajectorySequenceCommand', + l: 'RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, TrajectorySequence>, T)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)', + }, + { + p: 'com.technototes.path.command', + c: 'RegenerativeTrajectorySequenceCommand', + l: 'RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, TrajectorySequence>)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)', + }, + { + p: 'com.technototes.path.command', + c: 'RegenerativeTrajectorySequenceCommand', + l: 'RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, T)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)', + }, + { + p: 'com.technototes.path.command', + c: 'RegenerativeTrajectorySequenceCommand', + l: 'RegenerativeTrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)', + }, + { p: 'com.technototes.path.util', c: 'RegressionUtil', l: 'RegressionUtil()', u: '%3Cinit%3E()' }, + { + p: 'com.technototes.path.util', + c: 'BNO055IMUUtil', + l: 'remapAxes(BNO055IMU, AxesOrder, AxesSigns)', + u: 'remapAxes(com.qualcomm.hardware.bosch.BNO055IMU,org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.path.util.AxesSigns)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'resetAccelConstraint()', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'resetConstraints()', + }, + { + p: 'com.technototes.path.command', + c: 'ResetGyroCommand', + l: 'ResetGyroCommand(PathingMecanumDrivebaseSubsystem)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'resetTurnConstraint()', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'resetVelConstraint()', + }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'rightEncoder' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'rightFront' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'rightRear' }, + { p: 'com.technototes.path.util', c: 'LoggingUtil', l: 'ROAD_RUNNER_FOLDER' }, + { + p: 'com.technototes.path.subsystem', + c: 'DeadWheelConstants', + l: 'rpmToVelocity(double, double, double)', + u: 'rpmToVelocity(double,double,double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'MecanumConstants', + l: 'rpmToVelocity(double, double, double)', + u: 'rpmToVelocity(double,double,double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankConstants', + l: 'rpmToVelocity(double, double, double)', + u: 'rpmToVelocity(double,double,double)', + }, + { p: 'com.technototes.path.util', c: 'RegressionUtil.AccelResult', l: 'rSquare' }, + { p: 'com.technototes.path.util', c: 'RegressionUtil.RampResult', l: 'rSquare' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'RUN_USING_ENCODER', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'RUN_USING_ENCODER' }, + { + p: 'com.technototes.path.trajectorysequence.sequencesegment', + c: 'SequenceSegment', + l: 'SequenceSegment(double, Pose2d, Pose2d, List)', + u: '%3Cinit%3E(double,com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.geometry.Pose2d,java.util.List)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'set(double, double)', + u: 'set(double,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'set(double, double)', + u: 'set(double,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurableVector', + l: 'set(double, double)', + u: 'set(double,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'set(double, double, double)', + u: 'set(double,double,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'set(double, double, double)', + u: 'set(double,double,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'set(Pose2d)', + u: 'set(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'set(Pose2d)', + u: 'set(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'set(Vector2d)', + u: 'set(com.acmerobotics.roadrunner.geometry.Vector2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'set(Vector2d)', + u: 'set(com.acmerobotics.roadrunner.geometry.Vector2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurableVector', + l: 'set(Vector2d)', + u: 'set(com.acmerobotics.roadrunner.geometry.Vector2d)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePose', + l: 'set(Vector2d, double)', + u: 'set(com.acmerobotics.roadrunner.geometry.Vector2d,double)', + }, + { + p: 'com.technototes.path.geometry', + c: 'ConfigurablePoseD', + l: 'set(Vector2d, double)', + u: 'set(com.acmerobotics.roadrunner.geometry.Vector2d,double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'setAccelConstraint(TrajectoryAccelerationConstraint)', + u: 'setAccelConstraint(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'setConstraints(TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'setConstraints(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'setGyroOffset(double)' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'setHeading(double)' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'setHeading(double)' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'setMode(DcMotor.RunMode)', + u: 'setMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'setMode(DcMotor.RunMode)', + u: 'setMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'setMotorPowers(double, double)', + u: 'setMotorPowers(double,double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'setMotorPowers(double, double, double, double)', + u: 'setMotorPowers(double,double,double,double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients)', + u: 'setPIDFCoefficients(com.qualcomm.robotcore.hardware.DcMotor.RunMode,com.qualcomm.robotcore.hardware.PIDFCoefficients)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'setPIDFCoefficients(DcMotor.RunMode, PIDFCoefficients)', + u: 'setPIDFCoefficients(com.qualcomm.robotcore.hardware.DcMotor.RunMode,com.qualcomm.robotcore.hardware.PIDFCoefficients)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'DistanceSensorLocalizer', + l: 'setPoseEstimate(Pose2d)', + u: 'setPoseEstimate(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'setReversed(boolean)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'setTangent(double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'setTurnConstraint(double, double)', + u: 'setTurnConstraint(double,double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'setVelConstraint(TrajectoryVelocityConstraint)', + u: 'setVelConstraint(com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'setWeightedDrivePower(Pose2d)', + u: 'setWeightedDrivePower(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'setWeightedDrivePower(Pose2d)', + u: 'setWeightedDrivePower(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'setX(double)' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'setX(double)' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'setX(double)' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'setY(double)' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'setY(double)' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'setY(double)' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'setZeroPowerBehavior(DcMotor.ZeroPowerBehavior)', + u: 'setZeroPowerBehavior(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'setZeroPowerBehavior(DcMotor.ZeroPowerBehavior)', + u: 'setZeroPowerBehavior(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)', + }, + { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequence', l: 'size()' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'speed' }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'splineTo(Vector2d, double)', + u: 'splineTo(com.acmerobotics.roadrunner.geometry.Vector2d,double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'splineTo(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'splineTo(com.acmerobotics.roadrunner.geometry.Vector2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'splineToConstantHeading(Vector2d, double)', + u: 'splineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'splineToConstantHeading(Vector2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'splineToConstantHeading(com.acmerobotics.roadrunner.geometry.Vector2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'splineToLinearHeading(Pose2d, double)', + u: 'splineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'splineToLinearHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'splineToLinearHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'splineToSplineHeading(Pose2d, double)', + u: 'splineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'splineToSplineHeading(Pose2d, double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'splineToSplineHeading(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { p: 'com.technototes.path.trajectorysequence', c: 'TrajectorySequence', l: 'start()' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'stop()' }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'strafeLeft(double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'strafeLeft(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'strafeLeft(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'strafeRight(double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'strafeRight(double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'strafeRight(double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'strafeTo(Vector2d)', + u: 'strafeTo(com.acmerobotics.roadrunner.geometry.Vector2d)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'strafeTo(Vector2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint)', + u: 'strafeTo(com.acmerobotics.roadrunner.geometry.Vector2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint)', + }, + { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'subsystem' }, + { p: 'com.technototes.path.command', c: 'ResetGyroCommand', l: 'subsystem' }, + { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'subsystem' }, + { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'subsystem' }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'TankDrivebaseSubsystem(EncodedMotorGroup, EncodedMotorGroup, IMU, TankConstants, Localizer)', + u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotorGroup,com.technototes.library.hardware.motor.EncodedMotorGroup,com.technototes.library.hardware.sensor.IMU,com.technototes.path.subsystem.TankConstants,com.acmerobotics.roadrunner.localization.Localizer)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'ThreeDeadWheelLocalizer', + l: 'ThreeDeadWheelLocalizer(MotorEncoder, MotorEncoder, MotorEncoder, DeadWheelConstants)', + u: '%3Cinit%3E(com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.library.hardware.sensor.encoder.MotorEncoder,com.technototes.path.subsystem.DeadWheelConstants)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'TICKS_PER_REV', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'TICKS_PER_REV' }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'ticksPerRev' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePose', l: 'toPose()' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurablePoseD', l: 'toPose()' }, + { p: 'com.technototes.path.util', c: 'LynxModuleUtil.LynxFirmwareVersion', l: 'toString()' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'toVec()' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'TRACK_WIDTH' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'TRACK_WIDTH' }, + { p: 'com.technototes.path.command', c: 'TrajectoryCommand', l: 'trajectory' }, + { p: 'com.technototes.path.command', c: 'TrajectorySequenceCommand', l: 'trajectory' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'trajectoryBuilder(Pose2d)', + u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'trajectoryBuilder(Pose2d)', + u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'trajectoryBuilder(Pose2d, boolean)', + u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,boolean)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'trajectoryBuilder(Pose2d, boolean)', + u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,boolean)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'trajectoryBuilder(Pose2d, double)', + u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'trajectoryBuilder(Pose2d, double)', + u: 'trajectoryBuilder(com.acmerobotics.roadrunner.geometry.Pose2d,double)', + }, + { + p: 'com.technototes.path.command', + c: 'TrajectoryCommand', + l: 'TrajectoryCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, Trajectory>, T)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)', + }, + { + p: 'com.technototes.path.command', + c: 'TrajectoryCommand', + l: 'TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, Trajectory>)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)', + }, + { + p: 'com.technototes.path.command', + c: 'TrajectoryCommand', + l: 'TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Function, T)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)', + }, + { + p: 'com.technototes.path.command', + c: 'TrajectoryCommand', + l: 'TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Supplier)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)', + }, + { + p: 'com.technototes.path.command', + c: 'TrajectoryCommand', + l: 'TrajectoryCommand(PathingMecanumDrivebaseSubsystem, Trajectory)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,com.acmerobotics.roadrunner.trajectory.Trajectory)', + }, + { + p: 'com.technototes.path.trajectorysequence.sequencesegment', + c: 'TrajectorySegment', + l: 'TrajectorySegment(Trajectory)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.trajectory.Trajectory)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequence', + l: 'TrajectorySequence(List)', + u: '%3Cinit%3E(java.util.List)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'trajectorySequenceBuilder()', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'trajectorySequenceBuilder(Pose2d)', + u: 'trajectorySequenceBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'TankDrivebaseSubsystem', + l: 'trajectorySequenceBuilder(Pose2d)', + u: 'trajectorySequenceBuilder(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'TrajectorySequenceBuilder(Pose2d, Double, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,java.lang.Double,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint,double,double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'TrajectorySequenceBuilder(Pose2d, TrajectoryVelocityConstraint, TrajectoryAccelerationConstraint, double, double)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryVelocityConstraint,com.acmerobotics.roadrunner.trajectory.constraints.TrajectoryAccelerationConstraint,double,double)', + }, + { + p: 'com.technototes.path.command', + c: 'TrajectorySequenceCommand', + l: 'TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, BiFunction, T, TrajectorySequence>, T)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.BiFunction,T)', + }, + { + p: 'com.technototes.path.command', + c: 'TrajectorySequenceCommand', + l: 'TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, TrajectorySequence>)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function)', + }, + { + p: 'com.technototes.path.command', + c: 'TrajectorySequenceCommand', + l: 'TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Function, T)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Function,T)', + }, + { + p: 'com.technototes.path.command', + c: 'TrajectorySequenceCommand', + l: 'TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, Supplier)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,java.util.function.Supplier)', + }, + { + p: 'com.technototes.path.command', + c: 'TrajectorySequenceCommand', + l: 'TrajectorySequenceCommand(PathingMecanumDrivebaseSubsystem, TrajectorySequence)', + u: '%3Cinit%3E(com.technototes.path.subsystem.PathingMecanumDrivebaseSubsystem,com.technototes.path.trajectorysequence.TrajectorySequence)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceRunner', + l: 'TrajectorySequenceRunner(TrajectoryFollower, PIDCoefficients)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.followers.TrajectoryFollower,com.acmerobotics.roadrunner.control.PIDCoefficients)', + }, + { p: 'com.technototes.path.command', c: 'RegenerativeTrajectoryCommand', l: 'trajFunc' }, + { p: 'com.technototes.path.command', c: 'RegenerativeTrajectorySequenceCommand', l: 'trajFunc' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'TRANSLATIONAL_PID', + }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem.Mode', l: 'TURN' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'turn(double)' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'turn(double)' }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'turn(double)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'turn(double, double, double)', + u: 'turn(double,double,double)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'turnAsync(double)', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'turnAsync(double)' }, + { + p: 'com.technototes.path.trajectorysequence.sequencesegment', + c: 'TurnSegment', + l: 'TurnSegment(Pose2d, double, MotionProfile, List)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,double,com.acmerobotics.roadrunner.profile.MotionProfile,java.util.List)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'UNSTABLE_addDisplacementMarkerOffset(double, MarkerCallback)', + u: 'UNSTABLE_addDisplacementMarkerOffset(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'UNSTABLE_addTemporalMarkerOffset(double, MarkerCallback)', + u: 'UNSTABLE_addTemporalMarkerOffset(double,com.acmerobotics.roadrunner.trajectory.MarkerCallback)', + }, + { p: 'com.technototes.path.subsystem', c: 'DistanceSensorLocalizer', l: 'update()' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'update()' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'update()' }, + { + p: 'com.technototes.path.subsystem', + c: 'DistanceSensorLocalizer', + l: 'update(Pose2d)', + u: 'update(com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceRunner', + l: 'update(Pose2d, Pose2d)', + u: 'update(com.acmerobotics.roadrunner.geometry.Pose2d,com.acmerobotics.roadrunner.geometry.Pose2d)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem.Mode', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.path.util', + c: 'AxesSigns', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem.Mode', + l: 'values()', + }, + { p: 'com.technototes.path.util', c: 'AxesSigns', l: 'values()' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'VX_WEIGHT' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'VX_WEIGHT' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'VY_WEIGHT' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'waitForIdle()', + }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'waitForIdle()' }, + { + p: 'com.technototes.path.trajectorysequence', + c: 'TrajectorySequenceBuilder', + l: 'waitSeconds(double)', + }, + { + p: 'com.technototes.path.trajectorysequence.sequencesegment', + c: 'WaitSegment', + l: 'WaitSegment(Pose2d, double, List)', + u: '%3Cinit%3E(com.acmerobotics.roadrunner.geometry.Pose2d,double,java.util.List)', + }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'WHEEL_BASE' }, + { p: 'com.technototes.path.subsystem', c: 'PathingMecanumDrivebaseSubsystem', l: 'WHEEL_RADIUS' }, + { p: 'com.technototes.path.subsystem', c: 'TankDrivebaseSubsystem', l: 'WHEEL_RADIUS' }, + { p: 'com.technototes.path.subsystem', c: 'ThreeDeadWheelLocalizer', l: 'wheelRadius' }, + { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'x' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'x' }, + { p: 'com.technototes.path.command', c: 'MecanumDriveCommand', l: 'y' }, + { p: 'com.technototes.path.geometry', c: 'ConfigurableVector', l: 'y' }, + { + p: 'com.technototes.path.subsystem', + c: 'PathingMecanumDrivebaseSubsystem', + l: 'zeroExternalHeading()', + }, +]; +updateSearchResults(); diff --git a/docs/Path/module-search-index.js b/docs/Path/module-search-index.js index 0d59754f..a6f96499 100644 --- a/docs/Path/module-search-index.js +++ b/docs/Path/module-search-index.js @@ -1 +1,2 @@ -moduleSearchIndex = [];updateSearchResults(); \ No newline at end of file +moduleSearchIndex = []; +updateSearchResults(); diff --git a/docs/Path/overview-summary.html b/docs/Path/overview-summary.html index e4c41490..54ad7d37 100644 --- a/docs/Path/overview-summary.html +++ b/docs/Path/overview-summary.html @@ -1,25 +1,27 @@ - + - - -Path API - - - - - - - - - - -
    - -

    index.html

    -
    - + + + Path API + + + + + + + + + + +
    + +

    index.html

    +
    + diff --git a/docs/Path/overview-tree.html b/docs/Path/overview-tree.html index 11f1f087..8a2963f3 100644 --- a/docs/Path/overview-tree.html +++ b/docs/Path/overview-tree.html @@ -1,221 +1,1204 @@ - + - - -Class Hierarchy (Path API) - - - - - - - - - - - - - - -
    - -
    -
    - -
    -

    Class Hierarchy

    - -
    -
    -

    Interface Hierarchy

    - -
    -
    -

    Annotation Interface Hierarchy

    - -
    -
    -

    Enum Class Hierarchy

    - -
    -
    -
    -
    - + + + Class Hierarchy (Path API) + + + + + + + + + + + + + + +
    + +
    +
    + +
    +

    Class Hierarchy

    + +
    +
    +

    Interface Hierarchy

    + +
    +
    +

    Annotation Interface Hierarchy

    + +
    +
    +

    Enum Class Hierarchy

    + +
    +
    +
    +
    + diff --git a/docs/Path/package-search-index.js b/docs/Path/package-search-index.js index 8876cd3f..585beab9 100644 --- a/docs/Path/package-search-index.js +++ b/docs/Path/package-search-index.js @@ -1 +1,10 @@ -packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"l":"com.technototes.path.command"},{"l":"com.technototes.path.geometry"},{"l":"com.technototes.path.subsystem"},{"l":"com.technototes.path.trajectorysequence"},{"l":"com.technototes.path.trajectorysequence.sequencesegment"},{"l":"com.technototes.path.util"}];updateSearchResults(); \ No newline at end of file +packageSearchIndex = [ + { l: 'All Packages', u: 'allpackages-index.html' }, + { l: 'com.technototes.path.command' }, + { l: 'com.technototes.path.geometry' }, + { l: 'com.technototes.path.subsystem' }, + { l: 'com.technototes.path.trajectorysequence' }, + { l: 'com.technototes.path.trajectorysequence.sequencesegment' }, + { l: 'com.technototes.path.util' }, +]; +updateSearchResults(); diff --git a/docs/Path/script.js b/docs/Path/script.js index 864989cf..a6efd285 100644 --- a/docs/Path/script.js +++ b/docs/Path/script.js @@ -29,104 +29,106 @@ var typeSearchIndex; var memberSearchIndex; var tagSearchIndex; function loadScripts(doc, tag) { - createElem(doc, tag, 'search.js'); + createElem(doc, tag, 'search.js'); - createElem(doc, tag, 'module-search-index.js'); - createElem(doc, tag, 'package-search-index.js'); - createElem(doc, tag, 'type-search-index.js'); - createElem(doc, tag, 'member-search-index.js'); - createElem(doc, tag, 'tag-search-index.js'); + createElem(doc, tag, 'module-search-index.js'); + createElem(doc, tag, 'package-search-index.js'); + createElem(doc, tag, 'type-search-index.js'); + createElem(doc, tag, 'member-search-index.js'); + createElem(doc, tag, 'tag-search-index.js'); } function createElem(doc, tag, path) { - var script = doc.createElement(tag); - var scriptElement = doc.getElementsByTagName(tag)[0]; - script.src = pathtoroot + path; - scriptElement.parentNode.insertBefore(script, scriptElement); + var script = doc.createElement(tag); + var scriptElement = doc.getElementsByTagName(tag)[0]; + script.src = pathtoroot + path; + scriptElement.parentNode.insertBefore(script, scriptElement); } function show(tableId, selected, columns) { - if (tableId !== selected) { - document.querySelectorAll('div.' + tableId + ':not(.' + selected + ')') - .forEach(function(elem) { - elem.style.display = 'none'; - }); - } - document.querySelectorAll('div.' + selected) - .forEach(function(elem, index) { - elem.style.display = ''; - var isEvenRow = index % (columns * 2) < columns; - elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); - elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); - }); - updateTabs(tableId, selected); + if (tableId !== selected) { + document + .querySelectorAll('div.' + tableId + ':not(.' + selected + ')') + .forEach(function (elem) { + elem.style.display = 'none'; + }); + } + document.querySelectorAll('div.' + selected).forEach(function (elem, index) { + elem.style.display = ''; + var isEvenRow = index % (columns * 2) < columns; + elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); + elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); + }); + updateTabs(tableId, selected); } function updateTabs(tableId, selected) { - document.querySelector('div#' + tableId +' .summary-table') - .setAttribute('aria-labelledby', selected); - document.querySelectorAll('button[id^="' + tableId + '"]') - .forEach(function(tab, index) { - if (selected === tab.id || (tableId === selected && index === 0)) { - tab.className = activeTableTab; - tab.setAttribute('aria-selected', true); - tab.setAttribute('tabindex',0); - } else { - tab.className = tableTab; - tab.setAttribute('aria-selected', false); - tab.setAttribute('tabindex',-1); - } - }); + document + .querySelector('div#' + tableId + ' .summary-table') + .setAttribute('aria-labelledby', selected); + document.querySelectorAll('button[id^="' + tableId + '"]').forEach(function (tab, index) { + if (selected === tab.id || (tableId === selected && index === 0)) { + tab.className = activeTableTab; + tab.setAttribute('aria-selected', true); + tab.setAttribute('tabindex', 0); + } else { + tab.className = tableTab; + tab.setAttribute('aria-selected', false); + tab.setAttribute('tabindex', -1); + } + }); } function switchTab(e) { - var selected = document.querySelector('[aria-selected=true]'); - if (selected) { - if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { - // left or up arrow key pressed: move focus to previous tab - selected.previousSibling.click(); - selected.previousSibling.focus(); - e.preventDefault(); - } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { - // right or down arrow key pressed: move focus to next tab - selected.nextSibling.click(); - selected.nextSibling.focus(); - e.preventDefault(); - } + var selected = document.querySelector('[aria-selected=true]'); + if (selected) { + if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { + // left or up arrow key pressed: move focus to previous tab + selected.previousSibling.click(); + selected.previousSibling.focus(); + e.preventDefault(); + } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { + // right or down arrow key pressed: move focus to next tab + selected.nextSibling.click(); + selected.nextSibling.focus(); + e.preventDefault(); } + } } -var updateSearchResults = function() {}; +var updateSearchResults = function () {}; function indexFilesLoaded() { - return moduleSearchIndex - && packageSearchIndex - && typeSearchIndex - && memberSearchIndex - && tagSearchIndex; + return ( + moduleSearchIndex && + packageSearchIndex && + typeSearchIndex && + memberSearchIndex && + tagSearchIndex + ); } // Workaround for scroll position not being included in browser history (8249133) -document.addEventListener("DOMContentLoaded", function(e) { - var contentDiv = document.querySelector("div.flex-content"); - window.addEventListener("popstate", function(e) { - if (e.state !== null) { - contentDiv.scrollTop = e.state; - } - }); - window.addEventListener("hashchange", function(e) { - history.replaceState(contentDiv.scrollTop, document.title); - }); - contentDiv.addEventListener("scroll", function(e) { - var timeoutID; - if (!timeoutID) { - timeoutID = setTimeout(function() { - history.replaceState(contentDiv.scrollTop, document.title); - timeoutID = null; - }, 100); - } - }); - if (!location.hash) { +document.addEventListener('DOMContentLoaded', function (e) { + var contentDiv = document.querySelector('div.flex-content'); + window.addEventListener('popstate', function (e) { + if (e.state !== null) { + contentDiv.scrollTop = e.state; + } + }); + window.addEventListener('hashchange', function (e) { + history.replaceState(contentDiv.scrollTop, document.title); + }); + contentDiv.addEventListener('scroll', function (e) { + var timeoutID; + if (!timeoutID) { + timeoutID = setTimeout(function () { history.replaceState(contentDiv.scrollTop, document.title); + timeoutID = null; + }, 100); } + }); + if (!location.hash) { + history.replaceState(contentDiv.scrollTop, document.title); + } }); diff --git a/docs/Path/search.js b/docs/Path/search.js index db3b2f4a..3ba91721 100644 --- a/docs/Path/search.js +++ b/docs/Path/search.js @@ -23,332 +23,354 @@ * questions. */ -var noResult = {l: "No results found"}; -var loading = {l: "Loading search index..."}; -var catModules = "Modules"; -var catPackages = "Packages"; -var catTypes = "Classes and Interfaces"; -var catMembers = "Members"; -var catSearchTags = "Search Tags"; -var highlight = "$&"; -var searchPattern = ""; -var fallbackPattern = ""; +var noResult = { l: 'No results found' }; +var loading = { l: 'Loading search index...' }; +var catModules = 'Modules'; +var catPackages = 'Packages'; +var catTypes = 'Classes and Interfaces'; +var catMembers = 'Members'; +var catSearchTags = 'Search Tags'; +var highlight = '$&'; +var searchPattern = ''; +var fallbackPattern = ''; var RANKING_THRESHOLD = 2; var NO_MATCH = 0xffff; var MIN_RESULTS = 3; var MAX_RESULTS = 500; -var UNNAMED = ""; +var UNNAMED = ''; function escapeHtml(str) { - return str.replace(//g, ">"); + return str.replace(//g, '>'); } function getHighlightedText(item, matcher, fallbackMatcher) { - var escapedItem = escapeHtml(item); - var highlighted = escapedItem.replace(matcher, highlight); - if (highlighted === escapedItem) { - highlighted = escapedItem.replace(fallbackMatcher, highlight) - } - return highlighted; + var escapedItem = escapeHtml(item); + var highlighted = escapedItem.replace(matcher, highlight); + if (highlighted === escapedItem) { + highlighted = escapedItem.replace(fallbackMatcher, highlight); + } + return highlighted; } function getURLPrefix(ui) { - var urlPrefix=""; - var slash = "/"; - if (ui.item.category === catModules) { - return ui.item.l + slash; - } else if (ui.item.category === catPackages && ui.item.m) { - return ui.item.m + slash; - } else if (ui.item.category === catTypes || ui.item.category === catMembers) { - if (ui.item.m) { - urlPrefix = ui.item.m + slash; - } else { - $.each(packageSearchIndex, function(index, item) { - if (item.m && ui.item.p === item.l) { - urlPrefix = item.m + slash; - } - }); + var urlPrefix = ''; + var slash = '/'; + if (ui.item.category === catModules) { + return ui.item.l + slash; + } else if (ui.item.category === catPackages && ui.item.m) { + return ui.item.m + slash; + } else if (ui.item.category === catTypes || ui.item.category === catMembers) { + if (ui.item.m) { + urlPrefix = ui.item.m + slash; + } else { + $.each(packageSearchIndex, function (index, item) { + if (item.m && ui.item.p === item.l) { + urlPrefix = item.m + slash; } + }); } - return urlPrefix; + } + return urlPrefix; } function createSearchPattern(term) { - var pattern = ""; - var isWordToken = false; - term.replace(/,\s*/g, ", ").trim().split(/\s+/).forEach(function(w, index) { - if (index > 0) { - // whitespace between identifiers is significant - pattern += (isWordToken && /^\w/.test(w)) ? "\\s+" : "\\s*"; + var pattern = ''; + var isWordToken = false; + term + .replace(/,\s*/g, ', ') + .trim() + .split(/\s+/) + .forEach(function (w, index) { + if (index > 0) { + // whitespace between identifiers is significant + pattern += isWordToken && /^\w/.test(w) ? '\\s+' : '\\s*'; + } + var tokens = w.split(/(?=[A-Z,.()<>[\/])/); + for (var i = 0; i < tokens.length; i++) { + var s = tokens[i]; + if (s === '') { + continue; } - var tokens = w.split(/(?=[A-Z,.()<>[\/])/); - for (var i = 0; i < tokens.length; i++) { - var s = tokens[i]; - if (s === "") { - continue; - } - pattern += $.ui.autocomplete.escapeRegex(s); - isWordToken = /\w$/.test(s); - if (isWordToken) { - pattern += "([a-z0-9_$<>\\[\\]]*?)"; - } + pattern += $.ui.autocomplete.escapeRegex(s); + isWordToken = /\w$/.test(s); + if (isWordToken) { + pattern += '([a-z0-9_$<>\\[\\]]*?)'; } + } }); - return pattern; + return pattern; } function createMatcher(pattern, flags) { - var isCamelCase = /[A-Z]/.test(pattern); - return new RegExp(pattern, flags + (isCamelCase ? "" : "i")); + var isCamelCase = /[A-Z]/.test(pattern); + return new RegExp(pattern, flags + (isCamelCase ? '' : 'i')); } var watermark = 'Search'; -$(function() { - var search = $("#search-input"); - var reset = $("#reset-button"); - search.val(''); - search.prop("disabled", false); - reset.prop("disabled", false); - search.val(watermark).addClass('watermark'); - search.blur(function() { - if ($(this).val().length === 0) { - $(this).val(watermark).addClass('watermark'); - } - }); - search.on('click keydown paste', function() { - if ($(this).val() === watermark) { - $(this).val('').removeClass('watermark'); - } - }); - reset.click(function() { - search.val('').focus(); - }); - search.focus()[0].setSelectionRange(0, 0); -}); -$.widget("custom.catcomplete", $.ui.autocomplete, { - _create: function() { - this._super(); - this.widget().menu("option", "items", "> :not(.ui-autocomplete-category)"); - }, - _renderMenu: function(ul, items) { - var rMenu = this; - var currentCategory = ""; - rMenu.menu.bindings = $(); - $.each(items, function(index, item) { - var li; - if (item.category && item.category !== currentCategory) { - ul.append("
  • " + item.category + "
  • "); - currentCategory = item.category; - } - li = rMenu._renderItemData(ul, item); - if (item.category) { - li.attr("aria-label", item.category + " : " + item.l); - li.attr("class", "result-item"); - } else { - li.attr("aria-label", item.l); - li.attr("class", "result-item"); - } - }); - }, - _renderItem: function(ul, item) { - var label = ""; - var matcher = createMatcher(escapeHtml(searchPattern), "g"); - var fallbackMatcher = new RegExp(fallbackPattern, "gi") - if (item.category === catModules) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catPackages) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catTypes) { - label = (item.p && item.p !== UNNAMED) - ? getHighlightedText(item.p + "." + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catMembers) { - label = (item.p && item.p !== UNNAMED) - ? getHighlightedText(item.p + "." + item.c + "." + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.c + "." + item.l, matcher, fallbackMatcher); - } else if (item.category === catSearchTags) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else { - label = item.l; - } - var li = $("
  • ").appendTo(ul); - var div = $("
    ").appendTo(li); - if (item.category === catSearchTags && item.h) { - if (item.d) { - div.html(label + " (" + item.h + ")
    " - + item.d + "
    "); - } else { - div.html(label + " (" + item.h + ")"); - } - } else { - if (item.m) { - div.html(item.m + "/" + label); - } else { - div.html(label); - } - } - return li; +$(function () { + var search = $('#search-input'); + var reset = $('#reset-button'); + search.val(''); + search.prop('disabled', false); + reset.prop('disabled', false); + search.val(watermark).addClass('watermark'); + search.blur(function () { + if ($(this).val().length === 0) { + $(this).val(watermark).addClass('watermark'); } -}); -function rankMatch(match, category) { - if (!match) { - return NO_MATCH; - } - var index = match.index; - var input = match.input; - var leftBoundaryMatch = 2; - var periferalMatch = 0; - // make sure match is anchored on a left word boundary - if (index === 0 || /\W/.test(input[index - 1]) || "_" === input[index]) { - leftBoundaryMatch = 0; - } else if ("_" === input[index - 1] || (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input))) { - leftBoundaryMatch = 1; + }); + search.on('click keydown paste', function () { + if ($(this).val() === watermark) { + $(this).val('').removeClass('watermark'); } - var matchEnd = index + match[0].length; - var leftParen = input.indexOf("("); - var endOfName = leftParen > -1 ? leftParen : input.length; - // exclude peripheral matches - if (category !== catModules && category !== catSearchTags) { - var delim = category === catPackages ? "/" : "."; - if (leftParen > -1 && leftParen < index) { - periferalMatch += 2; - } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { - periferalMatch += 2; - } + }); + reset.click(function () { + search.val('').focus(); + }); + search.focus()[0].setSelectionRange(0, 0); +}); +$.widget('custom.catcomplete', $.ui.autocomplete, { + _create: function () { + this._super(); + this.widget().menu('option', 'items', '> :not(.ui-autocomplete-category)'); + }, + _renderMenu: function (ul, items) { + var rMenu = this; + var currentCategory = ''; + rMenu.menu.bindings = $(); + $.each(items, function (index, item) { + var li; + if (item.category && item.category !== currentCategory) { + ul.append('
  • ' + item.category + '
  • '); + currentCategory = item.category; + } + li = rMenu._renderItemData(ul, item); + if (item.category) { + li.attr('aria-label', item.category + ' : ' + item.l); + li.attr('class', 'result-item'); + } else { + li.attr('aria-label', item.l); + li.attr('class', 'result-item'); + } + }); + }, + _renderItem: function (ul, item) { + var label = ''; + var matcher = createMatcher(escapeHtml(searchPattern), 'g'); + var fallbackMatcher = new RegExp(fallbackPattern, 'gi'); + if (item.category === catModules) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catPackages) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catTypes) { + label = + item.p && item.p !== UNNAMED + ? getHighlightedText(item.p + '.' + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catMembers) { + label = + item.p && item.p !== UNNAMED + ? getHighlightedText(item.p + '.' + item.c + '.' + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.c + '.' + item.l, matcher, fallbackMatcher); + } else if (item.category === catSearchTags) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else { + label = item.l; } - var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match - for (var i = 1; i < match.length; i++) { - // lower ranking if parts of the name are missing - if (match[i]) - delta += match[i].length; + var li = $('
  • ').appendTo(ul); + var div = $('
    ').appendTo(li); + if (item.category === catSearchTags && item.h) { + if (item.d) { + div.html( + label + + ' (' + + item.h + + ')
    ' + + item.d + + '
    ', + ); + } else { + div.html(label + ' (' + item.h + ')'); + } + } else { + if (item.m) { + div.html(item.m + '/' + label); + } else { + div.html(label); + } } - if (category === catTypes) { - // lower ranking if a type name contains unmatched camel-case parts - if (/[A-Z]/.test(input.substring(matchEnd))) - delta += 5; - if (/[A-Z]/.test(input.substring(0, index))) - delta += 5; + return li; + }, +}); +function rankMatch(match, category) { + if (!match) { + return NO_MATCH; + } + var index = match.index; + var input = match.input; + var leftBoundaryMatch = 2; + var periferalMatch = 0; + // make sure match is anchored on a left word boundary + if (index === 0 || /\W/.test(input[index - 1]) || '_' === input[index]) { + leftBoundaryMatch = 0; + } else if ( + '_' === input[index - 1] || + (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input)) + ) { + leftBoundaryMatch = 1; + } + var matchEnd = index + match[0].length; + var leftParen = input.indexOf('('); + var endOfName = leftParen > -1 ? leftParen : input.length; + // exclude peripheral matches + if (category !== catModules && category !== catSearchTags) { + var delim = category === catPackages ? '/' : '.'; + if (leftParen > -1 && leftParen < index) { + periferalMatch += 2; + } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { + periferalMatch += 2; } - return leftBoundaryMatch + periferalMatch + (delta / 200); - + } + var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match + for (var i = 1; i < match.length; i++) { + // lower ranking if parts of the name are missing + if (match[i]) delta += match[i].length; + } + if (category === catTypes) { + // lower ranking if a type name contains unmatched camel-case parts + if (/[A-Z]/.test(input.substring(matchEnd))) delta += 5; + if (/[A-Z]/.test(input.substring(0, index))) delta += 5; + } + return leftBoundaryMatch + periferalMatch + delta / 200; } function doSearch(request, response) { - var result = []; - searchPattern = createSearchPattern(request.term); - fallbackPattern = createSearchPattern(request.term.toLowerCase()); - if (searchPattern === "") { - return this.close(); - } - var camelCaseMatcher = createMatcher(searchPattern, ""); - var fallbackMatcher = new RegExp(fallbackPattern, "i"); + var result = []; + searchPattern = createSearchPattern(request.term); + fallbackPattern = createSearchPattern(request.term.toLowerCase()); + if (searchPattern === '') { + return this.close(); + } + var camelCaseMatcher = createMatcher(searchPattern, ''); + var fallbackMatcher = new RegExp(fallbackPattern, 'i'); - function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { - if (indexArray) { - var newResults = []; - $.each(indexArray, function (i, item) { - item.category = category; - var ranking = rankMatch(matcher.exec(nameFunc(item)), category); - if (ranking < RANKING_THRESHOLD) { - newResults.push({ranking: ranking, item: item}); - } - return newResults.length <= MAX_RESULTS; - }); - return newResults.sort(function(e1, e2) { - return e1.ranking - e2.ranking; - }).map(function(e) { - return e.item; - }); + function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { + if (indexArray) { + var newResults = []; + $.each(indexArray, function (i, item) { + item.category = category; + var ranking = rankMatch(matcher.exec(nameFunc(item)), category); + if (ranking < RANKING_THRESHOLD) { + newResults.push({ ranking: ranking, item: item }); } - return []; + return newResults.length <= MAX_RESULTS; + }); + return newResults + .sort(function (e1, e2) { + return e1.ranking - e2.ranking; + }) + .map(function (e) { + return e.item; + }); } - function searchIndex(indexArray, category, nameFunc) { - var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); - result = result.concat(primaryResults); - if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { - var secondaryResults = searchIndexWithMatcher(indexArray, fallbackMatcher, category, nameFunc); - result = result.concat(secondaryResults.filter(function (item) { - return primaryResults.indexOf(item) === -1; - })); - } + return []; + } + function searchIndex(indexArray, category, nameFunc) { + var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); + result = result.concat(primaryResults); + if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { + var secondaryResults = searchIndexWithMatcher( + indexArray, + fallbackMatcher, + category, + nameFunc, + ); + result = result.concat( + secondaryResults.filter(function (item) { + return primaryResults.indexOf(item) === -1; + }), + ); } + } - searchIndex(moduleSearchIndex, catModules, function(item) { return item.l; }); - searchIndex(packageSearchIndex, catPackages, function(item) { - return (item.m && request.term.indexOf("/") > -1) - ? (item.m + "/" + item.l) : item.l; - }); - searchIndex(typeSearchIndex, catTypes, function(item) { - return request.term.indexOf(".") > -1 ? item.p + "." + item.l : item.l; - }); - searchIndex(memberSearchIndex, catMembers, function(item) { - return request.term.indexOf(".") > -1 - ? item.p + "." + item.c + "." + item.l : item.l; - }); - searchIndex(tagSearchIndex, catSearchTags, function(item) { return item.l; }); + searchIndex(moduleSearchIndex, catModules, function (item) { + return item.l; + }); + searchIndex(packageSearchIndex, catPackages, function (item) { + return item.m && request.term.indexOf('/') > -1 ? item.m + '/' + item.l : item.l; + }); + searchIndex(typeSearchIndex, catTypes, function (item) { + return request.term.indexOf('.') > -1 ? item.p + '.' + item.l : item.l; + }); + searchIndex(memberSearchIndex, catMembers, function (item) { + return request.term.indexOf('.') > -1 ? item.p + '.' + item.c + '.' + item.l : item.l; + }); + searchIndex(tagSearchIndex, catSearchTags, function (item) { + return item.l; + }); - if (!indexFilesLoaded()) { - updateSearchResults = function() { - doSearch(request, response); - } - result.unshift(loading); - } else { - updateSearchResults = function() {}; - } - response(result); + if (!indexFilesLoaded()) { + updateSearchResults = function () { + doSearch(request, response); + }; + result.unshift(loading); + } else { + updateSearchResults = function () {}; + } + response(result); } -$(function() { - $("#search-input").catcomplete({ - minLength: 1, - delay: 300, - source: doSearch, - response: function(event, ui) { - if (!ui.content.length) { - ui.content.push(noResult); - } else { - $("#search-input").empty(); - } - }, - autoFocus: true, - focus: function(event, ui) { - return false; - }, - position: { - collision: "flip" - }, - select: function(event, ui) { - if (ui.item.category) { - var url = getURLPrefix(ui); - if (ui.item.category === catModules) { - url += "module-summary.html"; - } else if (ui.item.category === catPackages) { - if (ui.item.u) { - url = ui.item.u; - } else { - url += ui.item.l.replace(/\./g, '/') + "/package-summary.html"; - } - } else if (ui.item.category === catTypes) { - if (ui.item.u) { - url = ui.item.u; - } else if (ui.item.p === UNNAMED) { - url += ui.item.l + ".html"; - } else { - url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.l + ".html"; - } - } else if (ui.item.category === catMembers) { - if (ui.item.p === UNNAMED) { - url += ui.item.c + ".html" + "#"; - } else { - url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.c + ".html" + "#"; - } - if (ui.item.u) { - url += ui.item.u; - } else { - url += ui.item.l; - } - } else if (ui.item.category === catSearchTags) { - url += ui.item.u; - } - if (top !== window) { - parent.classFrame.location = pathtoroot + url; - } else { - window.location.href = pathtoroot + url; - } - $("#search-input").focus(); - } +$(function () { + $('#search-input').catcomplete({ + minLength: 1, + delay: 300, + source: doSearch, + response: function (event, ui) { + if (!ui.content.length) { + ui.content.push(noResult); + } else { + $('#search-input').empty(); + } + }, + autoFocus: true, + focus: function (event, ui) { + return false; + }, + position: { + collision: 'flip', + }, + select: function (event, ui) { + if (ui.item.category) { + var url = getURLPrefix(ui); + if (ui.item.category === catModules) { + url += 'module-summary.html'; + } else if (ui.item.category === catPackages) { + if (ui.item.u) { + url = ui.item.u; + } else { + url += ui.item.l.replace(/\./g, '/') + '/package-summary.html'; + } + } else if (ui.item.category === catTypes) { + if (ui.item.u) { + url = ui.item.u; + } else if (ui.item.p === UNNAMED) { + url += ui.item.l + '.html'; + } else { + url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.l + '.html'; + } + } else if (ui.item.category === catMembers) { + if (ui.item.p === UNNAMED) { + url += ui.item.c + '.html' + '#'; + } else { + url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.c + '.html' + '#'; + } + if (ui.item.u) { + url += ui.item.u; + } else { + url += ui.item.l; + } + } else if (ui.item.category === catSearchTags) { + url += ui.item.u; } - }); + if (top !== window) { + parent.classFrame.location = pathtoroot + url; + } else { + window.location.href = pathtoroot + url; + } + $('#search-input').focus(); + } + }, + }); }); diff --git a/docs/Path/serialized-form.html b/docs/Path/serialized-form.html index ecbc3349..54d1be79 100644 --- a/docs/Path/serialized-form.html +++ b/docs/Path/serialized-form.html @@ -1,84 +1,147 @@ - + - - -Serialized Form (Path API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Serialized Form

    -
    - -
    -
    -
    - + + + Serialized Form (Path API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Serialized Form

    +
    + +
    +
    +
    + diff --git a/docs/Path/stylesheet.css b/docs/Path/stylesheet.css index 4a576bd2..236a306f 100644 --- a/docs/Path/stylesheet.css +++ b/docs/Path/stylesheet.css @@ -12,86 +12,89 @@ */ body { - background-color:#ffffff; - color:#353833; - font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size:14px; - margin:0; - padding:0; - height:100%; - width:100%; + background-color: #ffffff; + color: #353833; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 14px; + margin: 0; + padding: 0; + height: 100%; + width: 100%; } iframe { - margin:0; - padding:0; - height:100%; - width:100%; - overflow-y:scroll; - border:none; -} -a:link, a:visited { - text-decoration:none; - color:#4A6782; -} -a[href]:hover, a[href]:focus { - text-decoration:none; - color:#bb7a2a; + margin: 0; + padding: 0; + height: 100%; + width: 100%; + overflow-y: scroll; + border: none; +} +a:link, +a:visited { + text-decoration: none; + color: #4a6782; +} +a[href]:hover, +a[href]:focus { + text-decoration: none; + color: #bb7a2a; } a[name] { - color:#353833; + color: #353833; } pre { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; } h1 { - font-size:20px; + font-size: 20px; } h2 { - font-size:18px; + font-size: 18px; } h3 { - font-size:16px; + font-size: 16px; } h4 { - font-size:15px; + font-size: 15px; } h5 { - font-size:14px; + font-size: 14px; } h6 { - font-size:13px; + font-size: 13px; } ul { - list-style-type:disc; + list-style-type: disc; } -code, tt { - font-family:'DejaVu Sans Mono', monospace; +code, +tt { + font-family: 'DejaVu Sans Mono', monospace; } :not(h1, h2, h3, h4, h5, h6) > code, :not(h1, h2, h3, h4, h5, h6) > tt { - font-size:14px; - padding-top:4px; - margin-top:8px; - line-height:1.4em; + font-size: 14px; + padding-top: 4px; + margin-top: 8px; + line-height: 1.4em; } dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - padding-top:4px; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; + padding-top: 4px; } .summary-table dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - vertical-align:top; - padding-top:4px; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; + vertical-align: top; + padding-top: 4px; } sup { - font-size:8px; + font-size: 8px; } button { - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size: 14px; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 14px; } /* * Styles for HTML generated by javadoc. @@ -103,596 +106,654 @@ button { * Styles for document title and copyright. */ .clear { - clear:both; - height:0; - overflow:hidden; + clear: both; + height: 0; + overflow: hidden; } .about-language { - float:right; - padding:0 21px 8px 8px; - font-size:11px; - margin-top:-9px; - height:2.9em; + float: right; + padding: 0 21px 8px 8px; + font-size: 11px; + margin-top: -9px; + height: 2.9em; } .legal-copy { - margin-left:.5em; + margin-left: 0.5em; } .tab { - background-color:#0066FF; - color:#ffffff; - padding:8px; - width:5em; - font-weight:bold; + background-color: #0066ff; + color: #ffffff; + padding: 8px; + width: 5em; + font-weight: bold; } /* * Styles for navigation bar. */ @media screen { - .flex-box { - position:fixed; - display:flex; - flex-direction:column; - height: 100%; - width: 100%; - } - .flex-header { - flex: 0 0 auto; - } - .flex-content { - flex: 1 1 auto; - overflow-y: auto; - } + .flex-box { + position: fixed; + display: flex; + flex-direction: column; + height: 100%; + width: 100%; + } + .flex-header { + flex: 0 0 auto; + } + .flex-content { + flex: 1 1 auto; + overflow-y: auto; + } } .top-nav { - background-color:#4D7A97; - color:#FFFFFF; - float:left; - padding:0; - width:100%; - clear:right; - min-height:2.8em; - padding-top:10px; - overflow:hidden; - font-size:12px; + background-color: #4d7a97; + color: #ffffff; + float: left; + padding: 0; + width: 100%; + clear: right; + min-height: 2.8em; + padding-top: 10px; + overflow: hidden; + font-size: 12px; } .sub-nav { - background-color:#dee3e9; - float:left; - width:100%; - overflow:hidden; - font-size:12px; + background-color: #dee3e9; + float: left; + width: 100%; + overflow: hidden; + font-size: 12px; } .sub-nav div { - clear:left; - float:left; - padding:0 0 5px 6px; - text-transform:uppercase; + clear: left; + float: left; + padding: 0 0 5px 6px; + text-transform: uppercase; } .sub-nav .nav-list { - padding-top:5px; + padding-top: 5px; } ul.nav-list { - display:block; - margin:0 25px 0 0; - padding:0; + display: block; + margin: 0 25px 0 0; + padding: 0; } ul.sub-nav-list { - float:left; - margin:0 25px 0 0; - padding:0; + float: left; + margin: 0 25px 0 0; + padding: 0; } ul.nav-list li { - list-style:none; - float:left; - padding: 5px 6px; - text-transform:uppercase; + list-style: none; + float: left; + padding: 5px 6px; + text-transform: uppercase; } .sub-nav .nav-list-search { - float:right; - margin:0 0 0 0; - padding:5px 6px; - clear:none; + float: right; + margin: 0 0 0 0; + padding: 5px 6px; + clear: none; } .nav-list-search label { - position:relative; - right:-16px; + position: relative; + right: -16px; } ul.sub-nav-list li { - list-style:none; - float:left; - padding-top:10px; + list-style: none; + float: left; + padding-top: 10px; } -.top-nav a:link, .top-nav a:active, .top-nav a:visited { - color:#FFFFFF; - text-decoration:none; - text-transform:uppercase; +.top-nav a:link, +.top-nav a:active, +.top-nav a:visited { + color: #ffffff; + text-decoration: none; + text-transform: uppercase; } .top-nav a:hover { - text-decoration:none; - color:#bb7a2a; - text-transform:uppercase; + text-decoration: none; + color: #bb7a2a; + text-transform: uppercase; } .nav-bar-cell1-rev { - background-color:#F8981D; - color:#253441; - margin: auto 5px; + background-color: #f8981d; + color: #253441; + margin: auto 5px; } .skip-nav { - position:absolute; - top:auto; - left:-9999px; - overflow:hidden; + position: absolute; + top: auto; + left: -9999px; + overflow: hidden; } /* * Hide navigation links and search box in print layout */ @media print { - ul.nav-list, div.sub-nav { - display:none; - } + ul.nav-list, + div.sub-nav { + display: none; + } } /* * Styles for page header and footer. */ .title { - color:#2c4557; - margin:10px 0; + color: #2c4557; + margin: 10px 0; } .sub-title { - margin:5px 0 0 0; + margin: 5px 0 0 0; } .header ul { - margin:0 0 15px 0; - padding:0; + margin: 0 0 15px 0; + padding: 0; } -.header ul li, .footer ul li { - list-style:none; - font-size:13px; +.header ul li, +.footer ul li { + list-style: none; + font-size: 13px; } /* * Styles for headings. */ body.class-declaration-page .summary h2, body.class-declaration-page .details h2, -body.class-use-page h2, -body.module-declaration-page .block-list h2 { - font-style: italic; - padding:0; - margin:15px 0; +body.class-use-page h2, +body.module-declaration-page .block-list h2 { + font-style: italic; + padding: 0; + margin: 15px 0; } body.class-declaration-page .summary h3, body.class-declaration-page .details h3, body.class-declaration-page .summary .inherited-list h2 { - background-color:#dee3e9; - border:1px solid #d0d9e0; - margin:0 0 6px -8px; - padding:7px 5px; + background-color: #dee3e9; + border: 1px solid #d0d9e0; + margin: 0 0 6px -8px; + padding: 7px 5px; } /* * Styles for page layout containers. */ main { - clear:both; - padding:10px 20px; - position:relative; + clear: both; + padding: 10px 20px; + position: relative; } dl.notes > dt { - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size:12px; - font-weight:bold; - margin:10px 0 0 0; - color:#4E4E4E; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 12px; + font-weight: bold; + margin: 10px 0 0 0; + color: #4e4e4e; } dl.notes > dd { - margin:5px 10px 10px 0; - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + margin: 5px 10px 10px 0; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; } dl.name-value > dt { - margin-left:1px; - font-size:1.1em; - display:inline; - font-weight:bold; + margin-left: 1px; + font-size: 1.1em; + display: inline; + font-weight: bold; } dl.name-value > dd { - margin:0 0 0 1px; - font-size:1.1em; - display:inline; + margin: 0 0 0 1px; + font-size: 1.1em; + display: inline; } /* * Styles for lists. */ li.circle { - list-style:circle; + list-style: circle; } ul.horizontal li { - display:inline; - font-size:0.9em; + display: inline; + font-size: 0.9em; } div.inheritance { - margin:0; - padding:0; + margin: 0; + padding: 0; } div.inheritance div.inheritance { - margin-left:2em; + margin-left: 2em; } ul.block-list, ul.details-list, ul.member-list, ul.summary-list { - margin:10px 0 10px 0; - padding:0; + margin: 10px 0 10px 0; + padding: 0; } ul.block-list > li, ul.details-list > li, ul.member-list > li, ul.summary-list > li { - list-style:none; - margin-bottom:15px; - line-height:1.4; + list-style: none; + margin-bottom: 15px; + line-height: 1.4; } -.summary-table dl, .summary-table dl dt, .summary-table dl dd { - margin-top:0; - margin-bottom:1px; +.summary-table dl, +.summary-table dl dt, +.summary-table dl dd { + margin-top: 0; + margin-bottom: 1px; } -ul.see-list, ul.see-list-long { - padding-left: 0; - list-style: none; +ul.see-list, +ul.see-list-long { + padding-left: 0; + list-style: none; } ul.see-list li { - display: inline; + display: inline; } ul.see-list li:not(:last-child):after, ul.see-list-long li:not(:last-child):after { - content: ", "; - white-space: pre-wrap; + content: ', '; + white-space: pre-wrap; } /* * Styles for tables. */ -.summary-table, .details-table { - width:100%; - border-spacing:0; - border-left:1px solid #EEE; - border-right:1px solid #EEE; - border-bottom:1px solid #EEE; - padding:0; +.summary-table, +.details-table { + width: 100%; + border-spacing: 0; + border-left: 1px solid #eee; + border-right: 1px solid #eee; + border-bottom: 1px solid #eee; + padding: 0; } .caption { - position:relative; - text-align:left; - background-repeat:no-repeat; - color:#253441; - font-weight:bold; - clear:none; - overflow:hidden; - padding:0; - padding-top:10px; - padding-left:1px; - margin:0; - white-space:pre; -} -.caption a:link, .caption a:visited { - color:#1f389c; + position: relative; + text-align: left; + background-repeat: no-repeat; + color: #253441; + font-weight: bold; + clear: none; + overflow: hidden; + padding: 0; + padding-top: 10px; + padding-left: 1px; + margin: 0; + white-space: pre; +} +.caption a:link, +.caption a:visited { + color: #1f389c; } .caption a:hover, .caption a:active { - color:#FFFFFF; + color: #ffffff; } .caption span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - padding-bottom:7px; - display:inline-block; - float:left; - background-color:#F8981D; - border: none; - height:16px; + white-space: nowrap; + padding-top: 5px; + padding-left: 12px; + padding-right: 12px; + padding-bottom: 7px; + display: inline-block; + float: left; + background-color: #f8981d; + border: none; + height: 16px; } div.table-tabs { - padding:10px 0 0 1px; - margin:0; + padding: 10px 0 0 1px; + margin: 0; } div.table-tabs > button { - border: none; - cursor: pointer; - padding: 5px 12px 7px 12px; - font-weight: bold; - margin-right: 3px; + border: none; + cursor: pointer; + padding: 5px 12px 7px 12px; + font-weight: bold; + margin-right: 3px; } div.table-tabs > button.active-table-tab { - background: #F8981D; - color: #253441; + background: #f8981d; + color: #253441; } div.table-tabs > button.table-tab { - background: #4D7A97; - color: #FFFFFF; + background: #4d7a97; + color: #ffffff; } .two-column-summary { - display: grid; - grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); } .three-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); } .four-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax(10%, auto); + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax( + 10%, + auto + ); } @media screen and (max-width: 600px) { - .two-column-summary { - display: grid; - grid-template-columns: 1fr; - } + .two-column-summary { + display: grid; + grid-template-columns: 1fr; + } } @media screen and (max-width: 800px) { - .three-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(25%, auto); - } - .three-column-summary .col-last { - grid-column-end: span 2; - } + .three-column-summary { + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(25%, auto); + } + .three-column-summary .col-last { + grid-column-end: span 2; + } } @media screen and (max-width: 1000px) { - .four-column-summary { - display: grid; - grid-template-columns: minmax(15%, max-content) minmax(15%, auto); - } -} -.summary-table > div, .details-table > div { - text-align:left; - padding: 8px 3px 3px 7px; -} -.col-first, .col-second, .col-last, .col-constructor-name, .col-summary-item-name { - vertical-align:top; - padding-right:0; - padding-top:8px; - padding-bottom:3px; + .four-column-summary { + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + } +} +.summary-table > div, +.details-table > div { + text-align: left; + padding: 8px 3px 3px 7px; +} +.col-first, +.col-second, +.col-last, +.col-constructor-name, +.col-summary-item-name { + vertical-align: top; + padding-right: 0; + padding-top: 8px; + padding-bottom: 3px; } .table-header { - background:#dee3e9; - font-weight: bold; -} -.col-first, .col-first { - font-size:13px; -} -.col-second, .col-second, .col-last, .col-constructor-name, .col-summary-item-name, .col-last { - font-size:13px; + background: #dee3e9; + font-weight: bold; +} +.col-first, +.col-first { + font-size: 13px; +} +.col-second, +.col-second, +.col-last, +.col-constructor-name, +.col-summary-item-name, +.col-last { + font-size: 13px; } -.col-first, .col-second, .col-constructor-name { - vertical-align:top; - overflow: auto; +.col-first, +.col-second, +.col-constructor-name { + vertical-align: top; + overflow: auto; } .col-last { - white-space:normal; -} -.col-first a:link, .col-first a:visited, -.col-second a:link, .col-second a:visited, -.col-first a:link, .col-first a:visited, -.col-second a:link, .col-second a:visited, -.col-constructor-name a:link, .col-constructor-name a:visited, -.col-summary-item-name a:link, .col-summary-item-name a:visited, -.constant-values-container a:link, .constant-values-container a:visited, -.all-classes-container a:link, .all-classes-container a:visited, -.all-packages-container a:link, .all-packages-container a:visited { - font-weight:bold; + white-space: normal; +} +.col-first a:link, +.col-first a:visited, +.col-second a:link, +.col-second a:visited, +.col-first a:link, +.col-first a:visited, +.col-second a:link, +.col-second a:visited, +.col-constructor-name a:link, +.col-constructor-name a:visited, +.col-summary-item-name a:link, +.col-summary-item-name a:visited, +.constant-values-container a:link, +.constant-values-container a:visited, +.all-classes-container a:link, +.all-classes-container a:visited, +.all-packages-container a:link, +.all-packages-container a:visited { + font-weight: bold; } .table-sub-heading-color { - background-color:#EEEEFF; + background-color: #eeeeff; } -.even-row-color, .even-row-color .table-header { - background-color:#FFFFFF; +.even-row-color, +.even-row-color .table-header { + background-color: #ffffff; } -.odd-row-color, .odd-row-color .table-header { - background-color:#EEEEEF; +.odd-row-color, +.odd-row-color .table-header { + background-color: #eeeeef; } /* * Styles for contents. */ .deprecated-content { - margin:0; - padding:10px 0; + margin: 0; + padding: 10px 0; } div.block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; } .col-last div { - padding-top:0; + padding-top: 0; } .col-last a { - padding-bottom:3px; + padding-bottom: 3px; } .module-signature, .package-signature, .type-signature, .member-signature { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - margin:14px 0; - white-space: pre-wrap; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; + margin: 14px 0; + white-space: pre-wrap; } .module-signature, .package-signature, .type-signature { - margin-top: 0; + margin-top: 0; } .member-signature .type-parameters-long, .member-signature .parameters, .member-signature .exceptions { - display: inline-block; - vertical-align: top; - white-space: pre; + display: inline-block; + vertical-align: top; + white-space: pre; } .member-signature .type-parameters { - white-space: normal; + white-space: normal; } /* * Styles for formatting effect. */ .source-line-no { - color:green; - padding:0 30px 0 0; + color: green; + padding: 0 30px 0 0; } h1.hidden { - visibility:hidden; - overflow:hidden; - font-size:10px; + visibility: hidden; + overflow: hidden; + font-size: 10px; } .block { - display:block; - margin:0 10px 5px 0; - color:#474747; -} -.deprecated-label, .descfrm-type-label, .implementation-label, .member-name-label, .member-name-link, -.module-label-in-package, .module-label-in-type, .override-specify-label, .package-label-in-type, -.package-hierarchy-label, .type-name-label, .type-name-link, .search-tag-link, .preview-label { - font-weight:bold; -} -.deprecation-comment, .help-footnote, .preview-comment { - font-style:italic; + display: block; + margin: 0 10px 5px 0; + color: #474747; +} +.deprecated-label, +.descfrm-type-label, +.implementation-label, +.member-name-label, +.member-name-link, +.module-label-in-package, +.module-label-in-type, +.override-specify-label, +.package-label-in-type, +.package-hierarchy-label, +.type-name-label, +.type-name-link, +.search-tag-link, +.preview-label { + font-weight: bold; +} +.deprecation-comment, +.help-footnote, +.preview-comment { + font-style: italic; } .deprecation-block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; - border-style:solid; - border-width:thin; - border-radius:10px; - padding:10px; - margin-bottom:10px; - margin-right:10px; - display:inline-block; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; + border-style: solid; + border-width: thin; + border-radius: 10px; + padding: 10px; + margin-bottom: 10px; + margin-right: 10px; + display: inline-block; } .preview-block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; - border-style:solid; - border-width:thin; - border-radius:10px; - padding:10px; - margin-bottom:10px; - margin-right:10px; - display:inline-block; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; + border-style: solid; + border-width: thin; + border-radius: 10px; + padding: 10px; + margin-bottom: 10px; + margin-right: 10px; + display: inline-block; } div.block div.deprecation-comment { - font-style:normal; + font-style: normal; } /* * Styles specific to HTML5 elements. */ -main, nav, header, footer, section { - display:block; +main, +nav, +header, +footer, +section { + display: block; } /* * Styles for javadoc search. */ .ui-autocomplete-category { - font-weight:bold; - font-size:15px; - padding:7px 0 7px 3px; - background-color:#4D7A97; - color:#FFFFFF; + font-weight: bold; + font-size: 15px; + padding: 7px 0 7px 3px; + background-color: #4d7a97; + color: #ffffff; } .result-item { - font-size:13px; + font-size: 13px; } .ui-autocomplete { - max-height:85%; - max-width:65%; - overflow-y:scroll; - overflow-x:scroll; - white-space:nowrap; - box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23); + max-height: 85%; + max-width: 65%; + overflow-y: scroll; + overflow-x: scroll; + white-space: nowrap; + box-shadow: + 0 3px 6px rgba(0, 0, 0, 0.16), + 0 3px 6px rgba(0, 0, 0, 0.23); } ul.ui-autocomplete { - position:fixed; - z-index:999999; - background-color: #FFFFFF; + position: fixed; + z-index: 999999; + background-color: #ffffff; } -ul.ui-autocomplete li { - float:left; - clear:both; - width:100%; +ul.ui-autocomplete li { + float: left; + clear: both; + width: 100%; } .result-highlight { - font-weight:bold; + font-weight: bold; } .ui-autocomplete .result-item { - font-size: inherit; + font-size: inherit; } #search-input { - background-image:url('resources/glass.png'); - background-size:13px; - background-repeat:no-repeat; - background-position:2px 3px; - padding-left:20px; - position:relative; - right:-18px; - width:400px; + background-image: url('resources/glass.png'); + background-size: 13px; + background-repeat: no-repeat; + background-position: 2px 3px; + padding-left: 20px; + position: relative; + right: -18px; + width: 400px; } #reset-button { - background-color: rgb(255,255,255); - background-image:url('resources/x.png'); - background-position:center; - background-repeat:no-repeat; - background-size:12px; - border:0 none; - width:16px; - height:16px; - position:relative; - left:-4px; - top:-4px; - font-size:0px; + background-color: rgb(255, 255, 255); + background-image: url('resources/x.png'); + background-position: center; + background-repeat: no-repeat; + background-size: 12px; + border: 0 none; + width: 16px; + height: 16px; + position: relative; + left: -4px; + top: -4px; + font-size: 0px; } .watermark { - color:#545454; + color: #545454; } .search-tag-desc-result { - font-style:italic; - font-size:11px; + font-style: italic; + font-size: 11px; } .search-tag-holder-result { - font-style:italic; - font-size:12px; + font-style: italic; + font-size: 12px; } .search-tag-result:target { - background-color:yellow; + background-color: yellow; } .module-graph span { - display:none; - position:absolute; + display: none; + position: absolute; } .module-graph:hover span { - display:block; - margin: -100px 0 0 100px; - z-index: 1; + display: block; + margin: -100px 0 0 100px; + z-index: 1; } .inherited-list { - margin: 10px 0 10px 0; + margin: 10px 0 10px 0; } section.class-description { - line-height: 1.4; -} -.summary section[class$="-summary"], .details section[class$="-details"], -.class-uses .detail, .serialized-class-details { - padding: 0px 20px 5px 10px; - border: 1px solid #ededed; - background-color: #f8f8f8; -} -.inherited-list, section[class$="-details"] .detail { - padding:0 0 5px 8px; - background-color:#ffffff; - border:none; + line-height: 1.4; +} +.summary section[class$='-summary'], +.details section[class$='-details'], +.class-uses .detail, +.serialized-class-details { + padding: 0px 20px 5px 10px; + border: 1px solid #ededed; + background-color: #f8f8f8; +} +.inherited-list, +section[class$='-details'] .detail { + padding: 0 0 5px 8px; + background-color: #ffffff; + border: none; } .vertical-separator { - padding: 0 5px; + padding: 0 5px; } ul.help-section-list { - margin: 0; + margin: 0; } ul.help-subtoc > li { display: inline-block; @@ -700,32 +761,34 @@ ul.help-subtoc > li { font-size: smaller; } ul.help-subtoc > li::before { - content: "\2022" ; - padding-right:2px; + content: '\2022'; + padding-right: 2px; } span.help-note { - font-style: italic; + font-style: italic; } /* * Indicator icon for external links. */ -main a[href*="://"]::after { - content:""; - display:inline-block; - background-image:url('data:image/svg+xml; utf8, \ +main a[href*="://"]::after +{ + content: ''; + display: inline-block; + background-image: url('data:image/svg+xml; utf8, \ \ \ '); - background-size:100% 100%; - width:7px; - height:7px; - margin-left:2px; - margin-bottom:4px; + background-size: 100% 100%; + width: 7px; + height: 7px; + margin-left: 2px; + margin-bottom: 4px; } main a[href*="://"]:hover::after, -main a[href*="://"]:focus::after { - background-image:url('data:image/svg+xml; utf8, \ +main a[href*="://"]:focus::after +{ + background-image: url('data:image/svg+xml; utf8, \ \ \ @@ -754,116 +817,135 @@ main a[href*="://"]:focus::after { table.borderless, table.plain, table.striped { - margin-top: 10px; - margin-bottom: 10px; + margin-top: 10px; + margin-bottom: 10px; } table.borderless > caption, table.plain > caption, table.striped > caption { - font-weight: bold; - font-size: smaller; + font-weight: bold; + font-size: smaller; } -table.borderless th, table.borderless td, -table.plain th, table.plain td, -table.striped th, table.striped td { - padding: 2px 5px; +table.borderless th, +table.borderless td, +table.plain th, +table.plain td, +table.striped th, +table.striped td { + padding: 2px 5px; } table.borderless, -table.borderless > thead > tr > th, table.borderless > tbody > tr > th, table.borderless > tr > th, -table.borderless > thead > tr > td, table.borderless > tbody > tr > td, table.borderless > tr > td { - border: none; -} -table.borderless > thead > tr, table.borderless > tbody > tr, table.borderless > tr { - background-color: transparent; +table.borderless > thead > tr > th, +table.borderless > tbody > tr > th, +table.borderless > tr > th, +table.borderless > thead > tr > td, +table.borderless > tbody > tr > td, +table.borderless > tr > td { + border: none; +} +table.borderless > thead > tr, +table.borderless > tbody > tr, +table.borderless > tr { + background-color: transparent; } table.plain { - border-collapse: collapse; - border: 1px solid black; -} -table.plain > thead > tr, table.plain > tbody tr, table.plain > tr { - background-color: transparent; -} -table.plain > thead > tr > th, table.plain > tbody > tr > th, table.plain > tr > th, -table.plain > thead > tr > td, table.plain > tbody > tr > td, table.plain > tr > td { - border: 1px solid black; + border-collapse: collapse; + border: 1px solid black; +} +table.plain > thead > tr, +table.plain > tbody tr, +table.plain > tr { + background-color: transparent; +} +table.plain > thead > tr > th, +table.plain > tbody > tr > th, +table.plain > tr > th, +table.plain > thead > tr > td, +table.plain > tbody > tr > td, +table.plain > tr > td { + border: 1px solid black; } table.striped { - border-collapse: collapse; - border: 1px solid black; + border-collapse: collapse; + border: 1px solid black; } table.striped > thead { - background-color: #E3E3E3; + background-color: #e3e3e3; } -table.striped > thead > tr > th, table.striped > thead > tr > td { - border: 1px solid black; +table.striped > thead > tr > th, +table.striped > thead > tr > td { + border: 1px solid black; } table.striped > tbody > tr:nth-child(even) { - background-color: #EEE + background-color: #eee; } table.striped > tbody > tr:nth-child(odd) { - background-color: #FFF + background-color: #fff; } -table.striped > tbody > tr > th, table.striped > tbody > tr > td { - border-left: 1px solid black; - border-right: 1px solid black; +table.striped > tbody > tr > th, +table.striped > tbody > tr > td { + border-left: 1px solid black; + border-right: 1px solid black; } table.striped > tbody > tr > th { - font-weight: normal; + font-weight: normal; } /** * Tweak font sizes and paddings for small screens. */ @media screen and (max-width: 1050px) { - #search-input { - width: 300px; - } + #search-input { + width: 300px; + } } @media screen and (max-width: 800px) { - #search-input { - width: 200px; - } - .top-nav, - .bottom-nav { - font-size: 11px; - padding-top: 6px; - } - .sub-nav { - font-size: 11px; - } - .about-language { - padding-right: 16px; - } - ul.nav-list li, - .sub-nav .nav-list-search { - padding: 6px; - } - ul.sub-nav-list li { - padding-top: 5px; - } - main { - padding: 10px; - } - .summary section[class$="-summary"], .details section[class$="-details"], - .class-uses .detail, .serialized-class-details { - padding: 0 8px 5px 8px; - } - body { - -webkit-text-size-adjust: none; - } + #search-input { + width: 200px; + } + .top-nav, + .bottom-nav { + font-size: 11px; + padding-top: 6px; + } + .sub-nav { + font-size: 11px; + } + .about-language { + padding-right: 16px; + } + ul.nav-list li, + .sub-nav .nav-list-search { + padding: 6px; + } + ul.sub-nav-list li { + padding-top: 5px; + } + main { + padding: 10px; + } + .summary section[class$='-summary'], + .details section[class$='-details'], + .class-uses .detail, + .serialized-class-details { + padding: 0 8px 5px 8px; + } + body { + -webkit-text-size-adjust: none; + } } @media screen and (max-width: 500px) { - #search-input { - width: 150px; - } - .top-nav, - .bottom-nav { - font-size: 10px; - } - .sub-nav { - font-size: 10px; - } - .about-language { - font-size: 10px; - padding-right: 12px; - } + #search-input { + width: 150px; + } + .top-nav, + .bottom-nav { + font-size: 10px; + } + .sub-nav { + font-size: 10px; + } + .about-language { + font-size: 10px; + padding-right: 12px; + } } diff --git a/docs/Path/tag-search-index.js b/docs/Path/tag-search-index.js index f38b3cb3..6080d404 100644 --- a/docs/Path/tag-search-index.js +++ b/docs/Path/tag-search-index.js @@ -1 +1,2 @@ -tagSearchIndex = [{"l":"Serialized Form","h":"","u":"serialized-form.html"}];updateSearchResults(); \ No newline at end of file +tagSearchIndex = [{ l: 'Serialized Form', h: '', u: 'serialized-form.html' }]; +updateSearchResults(); diff --git a/docs/Path/type-search-index.js b/docs/Path/type-search-index.js index 6286d5b7..941e2e37 100644 --- a/docs/Path/type-search-index.js +++ b/docs/Path/type-search-index.js @@ -1 +1,88 @@ -typeSearchIndex = [{"p":"com.technototes.path.util","l":"RegressionUtil.AccelResult"},{"l":"All Classes and Interfaces","u":"allclasses-index.html"},{"p":"com.technototes.path.util","l":"AxesSigns"},{"p":"com.technototes.path.subsystem","l":"TankConstants.AxialPID"},{"p":"com.technototes.path.util","l":"BNO055IMUUtil"},{"p":"com.technototes.path.geometry","l":"ConfigurablePose"},{"p":"com.technototes.path.geometry","l":"ConfigurablePoseD"},{"p":"com.technototes.path.geometry","l":"ConfigurableVector"},{"p":"com.technototes.path.subsystem","l":"TankConstants.CrossPID"},{"p":"com.technototes.path.util","l":"DashboardUtil"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants"},{"p":"com.technototes.path.subsystem","l":"DistanceSensorLocalizer"},{"p":"com.technototes.path.trajectorysequence","l":"EmptySequenceException"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.EncoderOverflow"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.ForwardOffset"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.GearRatio"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.GearRatio"},{"p":"com.technototes.path.subsystem","l":"TankConstants.GearRatio"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.HeadPID"},{"p":"com.technototes.path.subsystem","l":"TankConstants.HeadPID"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.KA"},{"p":"com.technototes.path.subsystem","l":"TankConstants.KA"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.KStatic"},{"p":"com.technototes.path.subsystem","l":"TankConstants.KStatic"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.KV"},{"p":"com.technototes.path.subsystem","l":"TankConstants.KV"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.LateralDistance"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.LateralMult"},{"p":"com.technototes.path.subsystem","l":"TankConstants.LateralMult"},{"p":"com.technototes.path.util","l":"LoggingUtil"},{"p":"com.technototes.path.util","l":"LynxModuleUtil.LynxFirmwareVersion"},{"p":"com.technototes.path.util","l":"LynxModuleUtil.LynxFirmwareVersionException"},{"p":"com.technototes.path.util","l":"LynxModuleUtil"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MaxAccel"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MaxAccel"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MaxAngleAccel"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MaxAngleAccel"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MaxAngleVelo"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MaxAngleVelo"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MaxRPM"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MaxRPM"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MaxVelo"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MaxVelo"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants"},{"p":"com.technototes.path.command","l":"MecanumDriveCommand"},{"p":"com.technototes.path.subsystem","l":"PathingMecanumDrivebaseSubsystem.Mode"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.MotorVeloPID"},{"p":"com.technototes.path.subsystem","l":"TankConstants.MotorVeloPID"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.OmegaWeight"},{"p":"com.technototes.path.subsystem","l":"TankConstants.OmegaWeight"},{"p":"com.technototes.path.subsystem","l":"PathingMecanumDrivebaseSubsystem"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.PoseLimit"},{"p":"com.technototes.path.subsystem","l":"TankConstants.PoseLimit"},{"p":"com.technototes.path.util","l":"RegressionUtil.RampResult"},{"p":"com.technototes.path.command","l":"RegenerativeTrajectoryCommand"},{"p":"com.technototes.path.command","l":"RegenerativeTrajectorySequenceCommand"},{"p":"com.technototes.path.util","l":"RegressionUtil"},{"p":"com.technototes.path.command","l":"ResetGyroCommand"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","l":"SequenceSegment"},{"p":"com.technototes.path.subsystem","l":"TankConstants"},{"p":"com.technototes.path.subsystem","l":"TankDrivebaseSubsystem"},{"p":"com.technototes.path.subsystem","l":"ThreeDeadWheelLocalizer"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.TicksPerRev"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.TicksPerRev"},{"p":"com.technototes.path.subsystem","l":"TankConstants.TicksPerRev"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.TrackWidth"},{"p":"com.technototes.path.subsystem","l":"TankConstants.TrackWidth"},{"p":"com.technototes.path.command","l":"TrajectoryCommand"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","l":"TrajectorySegment"},{"p":"com.technototes.path.trajectorysequence","l":"TrajectorySequence"},{"p":"com.technototes.path.trajectorysequence","l":"TrajectorySequenceBuilder"},{"p":"com.technototes.path.command","l":"TrajectorySequenceCommand"},{"p":"com.technototes.path.trajectorysequence","l":"TrajectorySequenceRunner"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.TransPID"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","l":"TurnSegment"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.UseDriveEncoder"},{"p":"com.technototes.path.subsystem","l":"TankConstants.UseDriveEncoder"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.VXWeight"},{"p":"com.technototes.path.subsystem","l":"TankConstants.VXWeight"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.VYWeight"},{"p":"com.technototes.path.trajectorysequence.sequencesegment","l":"WaitSegment"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.WheelBase"},{"p":"com.technototes.path.subsystem","l":"DeadWheelConstants.WheelRadius"},{"p":"com.technototes.path.subsystem","l":"MecanumConstants.WheelRadius"},{"p":"com.technototes.path.subsystem","l":"TankConstants.WheelRadius"}];updateSearchResults(); \ No newline at end of file +typeSearchIndex = [ + { p: 'com.technototes.path.util', l: 'RegressionUtil.AccelResult' }, + { l: 'All Classes and Interfaces', u: 'allclasses-index.html' }, + { p: 'com.technototes.path.util', l: 'AxesSigns' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.AxialPID' }, + { p: 'com.technototes.path.util', l: 'BNO055IMUUtil' }, + { p: 'com.technototes.path.geometry', l: 'ConfigurablePose' }, + { p: 'com.technototes.path.geometry', l: 'ConfigurablePoseD' }, + { p: 'com.technototes.path.geometry', l: 'ConfigurableVector' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.CrossPID' }, + { p: 'com.technototes.path.util', l: 'DashboardUtil' }, + { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants' }, + { p: 'com.technototes.path.subsystem', l: 'DistanceSensorLocalizer' }, + { p: 'com.technototes.path.trajectorysequence', l: 'EmptySequenceException' }, + { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.EncoderOverflow' }, + { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.ForwardOffset' }, + { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.GearRatio' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.GearRatio' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.GearRatio' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.HeadPID' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.HeadPID' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.KA' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.KA' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.KStatic' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.KStatic' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.KV' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.KV' }, + { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.LateralDistance' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.LateralMult' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.LateralMult' }, + { p: 'com.technototes.path.util', l: 'LoggingUtil' }, + { p: 'com.technototes.path.util', l: 'LynxModuleUtil.LynxFirmwareVersion' }, + { p: 'com.technototes.path.util', l: 'LynxModuleUtil.LynxFirmwareVersionException' }, + { p: 'com.technototes.path.util', l: 'LynxModuleUtil' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MaxAccel' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.MaxAccel' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MaxAngleAccel' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.MaxAngleAccel' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MaxAngleVelo' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.MaxAngleVelo' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MaxRPM' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.MaxRPM' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MaxVelo' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.MaxVelo' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants' }, + { p: 'com.technototes.path.command', l: 'MecanumDriveCommand' }, + { p: 'com.technototes.path.subsystem', l: 'PathingMecanumDrivebaseSubsystem.Mode' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.MotorVeloPID' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.MotorVeloPID' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.OmegaWeight' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.OmegaWeight' }, + { p: 'com.technototes.path.subsystem', l: 'PathingMecanumDrivebaseSubsystem' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.PoseLimit' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.PoseLimit' }, + { p: 'com.technototes.path.util', l: 'RegressionUtil.RampResult' }, + { p: 'com.technototes.path.command', l: 'RegenerativeTrajectoryCommand' }, + { p: 'com.technototes.path.command', l: 'RegenerativeTrajectorySequenceCommand' }, + { p: 'com.technototes.path.util', l: 'RegressionUtil' }, + { p: 'com.technototes.path.command', l: 'ResetGyroCommand' }, + { p: 'com.technototes.path.trajectorysequence.sequencesegment', l: 'SequenceSegment' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants' }, + { p: 'com.technototes.path.subsystem', l: 'TankDrivebaseSubsystem' }, + { p: 'com.technototes.path.subsystem', l: 'ThreeDeadWheelLocalizer' }, + { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.TicksPerRev' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.TicksPerRev' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.TicksPerRev' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.TrackWidth' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.TrackWidth' }, + { p: 'com.technototes.path.command', l: 'TrajectoryCommand' }, + { p: 'com.technototes.path.trajectorysequence.sequencesegment', l: 'TrajectorySegment' }, + { p: 'com.technototes.path.trajectorysequence', l: 'TrajectorySequence' }, + { p: 'com.technototes.path.trajectorysequence', l: 'TrajectorySequenceBuilder' }, + { p: 'com.technototes.path.command', l: 'TrajectorySequenceCommand' }, + { p: 'com.technototes.path.trajectorysequence', l: 'TrajectorySequenceRunner' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.TransPID' }, + { p: 'com.technototes.path.trajectorysequence.sequencesegment', l: 'TurnSegment' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.UseDriveEncoder' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.UseDriveEncoder' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.VXWeight' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.VXWeight' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.VYWeight' }, + { p: 'com.technototes.path.trajectorysequence.sequencesegment', l: 'WaitSegment' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.WheelBase' }, + { p: 'com.technototes.path.subsystem', l: 'DeadWheelConstants.WheelRadius' }, + { p: 'com.technototes.path.subsystem', l: 'MecanumConstants.WheelRadius' }, + { p: 'com.technototes.path.subsystem', l: 'TankConstants.WheelRadius' }, +]; +updateSearchResults(); diff --git a/docs/TechnoLib/allclasses-index.html b/docs/TechnoLib/allclasses-index.html index 4d79fa7b..a0615610 100644 --- a/docs/TechnoLib/allclasses-index.html +++ b/docs/TechnoLib/allclasses-index.html @@ -1,463 +1,1480 @@ - + - - -All Classes and Interfaces (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    All Classes and Interfaces

    -
    -
    -
    -
    -
    -
    Class
    -
    Description
    - -
    -
    An enumeration to specify which alliance the bot is on (Red, Blue, or None)
    -
    - -
    -
    Not sure what this is for.
    -
    - -
    -
    Not sure what this is for.
    -
    - -
    -
    This feels over-engineered, but it's probably for some obnoxious Java thing, - unfortunate.
    -
    - -
    -
    TODO: Remove this.
    -
    - -
    -
    Class for analog sensors
    -
    - -
    -
    The class to extend custom gamepad axis from
    -
    - -
    -
    Class for bindings to extend
    -
    - -
    -
    Button type
    -
    - -
     
    - -
    -
    The class to extend custom gamepad buttons from
    -
    - -
     
    - -
    -
    A command that allows choosing among a number of commands based on variety of conditions
    -
    - -
    -
    Enum for Colors and some formatting
    -
    - -
    -
    TODO: Remove this.
    -
    - -
     
    - -
    -
    TODO: Remove this.
    -
    - -
    -
    Class for color sensors
    -
    - -
    -
    The root Command class
    -
    - -
    -
    The command state enum
    -
    - -
    -
    Class for command axis for the gamepad
    -
    - -
    Deprecated.
    - -
    -
    Command implementation of Binding
    -
    - -
    -
    Class for command buttons for gamepad
    -
    - -
    -
    Class for command gamepads that specifies class params
    -
    - -
    -
    Root class for all command groups (Sequential, Parallel, etc...) - WARNING: You probably will be better served by the specific CommandGroup subclasses, rather than - using this one directly.
    -
    - -
    -
    Class for gamepad-command integration
    -
    - -
    -
    Class for command based op modes
    -
    - -
    -
    Enum for op mode state
    -
    - -
    -
    This is a "singleton" object for scheduling commands.
    -
    - -
    -
    Simple class for commands that require a certain condition to be true to run
    -
    - -
    -
    TODO: Remove this.
    -
    - -
    -
    class for subsystems
    -
    - -
     
    - -
    -
    Enum for the priority of the differential.
    -
    - -
    -
    TODO: Remove this.
    -
    - -
    -
    Class for digital sensors
    -
    - -
    -
    TODO: Remove this.
    -
    -
    DrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    -
    -
    Class for DriveBase subsystems
    -
    - -
    -
    This isn't worth actually doing.
    -
    - -
    -
    Interface for anything that can be enabled/disabled
    -
    -
    EncodedMotor<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    -
    -
    Class for encoded motors
    -
    -
    EncodedMotorGroup<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    -
    -
    Class for encoded motor groups
    -
    - -
    -
    Class for encoded motor subsystems
    -
    - -
    -
    Interfaces for encoders to use
    -
    - -
    -
    The root class for logging entries
    -
    - -
    -
    A wrapper around an AnalogInput that enables "zeroing" for usefulness
    -
    -
    GamepadBase<T extends ButtonBase,U extends AxisBase>
    -
    -
    A class to extend gamepads from, it does the internal processing for you.
    -
    - -
    -
    Axis enum for all axis on gamepad
    -
    - -
    -
    Button enum for all buttons on gamepad
    -
    - -
    -
    A class for dpads
    -
    - -
    -
    A class for gamepad sticks
    -
    - -
    -
    TODO: Remove this.
    -
    -
    HardwareDevice<T extends com.qualcomm.robotcore.hardware.HardwareDevice>
    -
    Deprecated.
    - -
    Deprecated.
    - -
     
    - -
     
    - -
    -
    An interface for a single-angle gyroscope
    -
    - -
     
    - -
    -
    Class for the IMU (Inertial Movement Units) that implements the IGyro interface
    -
    - -
    -
    The direction of the axes signs when remapping the axes
    -
    - -
    -
    TODO: Remove this.
    -
    - -
    -
    This is duplicated in the IMU class
    -
    - -
    -
    A simple Observation-based integral calculator over time
    -
    - -
    -
    Interface for anything that can be inverted
    -
    - -
     
    - -
    -
    The root annotation for annotation logging, also doubles as a basic string log
    -
    - -
     
    - -
     
    - -
    -
    Log a number
    -
    - -
    -
    Annotations for configuring Logs
    -
    - -
    -
    Annotation for allowing Opmodes to log this item
    -
    - -
    -
    Annotation for denying Opmodes to log this item
    -
    - -
    -
    Annotation to completely disable the entry
    -
    - -
    -
    Annotation for determining when logged item will be sent to Telemetry
    -
    - -
    -
    All classes with annotations for logging must extend this all the way up the hierarchy up to the op mode
    -
    - -
    -
    The class to manage logging
    -
    - -
     
    - -
    -
    Class with various math functions
    -
    -
    Motor<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    -
    -
    Class for motors
    -
    - -
    -
    TODO: Remove this.
    -
    - -
    -
    Wraps a motor instance to provide corrected velocity counts and allow reversing independently of the corresponding - slot's motor direction
    -
    - -
     
    -
    MotorGroup<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    -
    -
    Class for a group of motors
    -
    -
    MotorSubsystem<T extends Motor<?>>
    -
    -
    Class for motor subsystems
    -
    - -
     
    - -
    -
    Command group to run commands in parallel until all of them finish
    -
    - -
    -
    Command group to run commands in parallel until one particular command completes
    -
    - -
    -
    Command group to run commands in parallel until *one* is finished
    -
    - -
    -
    An interface for classes to have the periodic function
    -
    - -
    -
    Helper class for tracking a range
    -
    - -
    Deprecated.
    - -
    -
    Root class for the Robot Library (I will put important stuff here)
    -
    -
    Sensor<T extends com.qualcomm.robotcore.hardware.HardwareDevice>
    -
    Deprecated.
    - -
    Deprecated.
    - -
    -
    A grouping command which runs a list of commands in sequence
    -
    - -
    Deprecated.
    - -
    -
    TODO: Remove this.
    -
    - -
    Deprecated.
    - -
     
    - -
     
    - -
    -
    Class for servo subsystems
    -
    -
    SimpleMecanumDrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    -
    -
    Class for mecanum/xdrive drivebases
    -
    - -
    -
    This is a functional interface, when 'accept' is invoked, will only invoke the 'consume' method - when a different value is provided.
    -
    - -
    Deprecated.
    - -
    -
    Interface for objects that behave as sticks
    -
    - -
     
    - -
     
    -
    TankDrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple>
    -
    -
    Class for drivebase subsystems
    -
    - -
    -
    A command to do nothing but wait for a span of time.
    -
    -
    -
    -
    -
    -
    -
    - + + + All Classes and Interfaces (RobotLibrary API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    All Classes and Interfaces

    +
    +
    +
    + +
    +
    +
    +
    Class
    +
    Description
    +
    + Alliance +
    +
    +
    + An enumeration to specify which alliance the bot is on (Red, Blue, or None) +
    +
    + +
    +
    Not sure what this is for.
    +
    + +
    +
    Not sure what this is for.
    +
    + +
    +
    + This feels over-engineered, but it's probably for some obnoxious Java thing, + unfortunate. +
    +
    + +
    +
    TODO: Remove this.
    +
    + +
    +
    Class for analog sensors
    +
    +
    + AxisBase +
    +
    +
    The class to extend custom gamepad axis from
    +
    +
    + Binding<T + extends + BooleanSupplier> +
    +
    +
    Class for bindings to extend
    +
    + +
    +
    Button type
    +
    + +
    +   +
    + +
    +
    The class to extend custom gamepad buttons from
    +
    + +
    +   +
    + +
    +
    + A command that allows choosing among a number of commands based on variety of + conditions +
    +
    +
    + Color +
    +
    +
    Enum for Colors and some formatting
    +
    + +
    +
    TODO: Remove this.
    +
    + +
    +   +
    + +
    +
    TODO: Remove this.
    +
    + +
    +
    Class for color sensors
    +
    +
    + Command +
    +
    +
    The root Command class
    +
    + +
    +
    The command state enum
    +
    + +
    +
    Class for command axis for the gamepad
    +
    + +
    + Deprecated. +
    + +
    +
    + Command implementation of + Binding +
    +
    + +
    +
    Class for command buttons for gamepad
    +
    + +
    +
    Class for command gamepads that specifies class params
    +
    + +
    +
    + Root class for all command groups (Sequential, Parallel, etc...) WARNING: You + probably will be better served by the specific CommandGroup subclasses, rather + than using this one directly. +
    +
    +
    + CommandInput<T + extends + ButtonBase> +
    +
    +
    Class for gamepad-command integration
    +
    + +
    +
    Class for command based op modes
    +
    + +
    +
    Enum for op mode state
    +
    + +
    +
    This is a "singleton" object for scheduling commands.
    +
    + +
    +
    + Simple class for commands that require a certain condition to be true to run +
    +
    + +
    +
    TODO: Remove this.
    +
    +
    + DeviceSubsystem<T + extends + HardwareDevice<?>> +
    +
    +
    class for subsystems
    +
    + +
    +   +
    + +
    +
    Enum for the priority of the differential.
    +
    + +
    +
    TODO: Remove this.
    +
    + +
    +
    Class for digital sensors
    +
    + +
    +
    TODO: Remove this.
    +
    +
    + DrivebaseSubsystem<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> +
    +
    +
    Class for DriveBase subsystems
    +
    +
    + DummyDevice<T> +
    +
    +
    This isn't worth actually doing.
    +
    +
    + Enablable<T + extends + Enablable<T>> +
    +
    +
    Interface for anything that can be enabled/disabled
    +
    +
    + EncodedMotor<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> +
    +
    +
    Class for encoded motors
    +
    +
    + EncodedMotorGroup<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> +
    +
    +
    Class for encoded motor groups
    +
    + +
    +
    Class for encoded motor subsystems
    +
    +
    + Encoder +
    +
    +
    Interfaces for encoders to use
    +
    +
    + Entry<T> +
    +
    +
    The root class for logging entries
    +
    + +
    +
    + A wrapper around an AnalogInput that enables "zeroing" for usefulness +
    +
    +
    + GamepadBase<T + extends + ButtonBase,U + extends + AxisBase> +
    +
    +
    + A class to extend gamepads from, it does the internal processing for you. +
    +
    + +
    +
    Axis enum for all axis on gamepad
    +
    + +
    +
    Button enum for all buttons on gamepad
    +
    +
    + GamepadDpad<T + extends + ButtonBase> +
    +
    +
    A class for dpads
    +
    +
    + GamepadStick<T + extends + AxisBase,U + extends + ButtonBase> +
    +
    +
    A class for gamepad sticks
    +
    + +
    +
    TODO: Remove this.
    +
    +
    + HardwareDevice<T + extends com.qualcomm.robotcore.hardware.HardwareDevice> +
    +
    + Deprecated. +
    + +
    + Deprecated. +
    + +
    +   +
    + +
    +   +
    +
    + IGyro +
    +
    +
    An interface for a single-angle gyroscope
    +
    + +
    +   +
    +
    + IMU +
    +
    +
    + Class for the IMU (Inertial Movement Units) that implements the IGyro interface +
    +
    + +
    +
    The direction of the axes signs when remapping the axes
    +
    + +
    +
    TODO: Remove this.
    +
    + +
    +
    This is duplicated in the IMU class
    +
    +
    + Integral +
    +
    +
    A simple Observation-based integral calculator over time
    +
    +
    + Invertable<T + extends + Invertable<T>> +
    +
    +
    Interface for anything that can be inverted
    +
    + +
    +   +
    +
    + Log +
    +
    +
    + The root annotation for annotation logging, also doubles as a basic string log +
    +
    + +
    +   +
    +
    + Log.Logs +
    +
    +   +
    + +
    +
    Log a number
    +
    +
    + LogConfig +
    +
    +
    Annotations for configuring Logs
    +
    + +
    +
    Annotation for allowing Opmodes to log this item
    +
    + +
    +
    Annotation for denying Opmodes to log this item
    +
    + +
    +
    Annotation to completely disable the entry
    +
    + +
    +
    + Annotation for determining when logged item will be sent to Telemetry +
    +
    +
    + Loggable +
    +
    +
    + All classes with annotations for logging must extend this all the way up the + hierarchy up to the op mode +
    +
    +
    + Logger +
    +
    +
    The class to manage logging
    +
    +
    + MapUtils +
    +
    +   +
    +
    + MathUtils +
    +
    +
    Class with various math functions
    +
    +
    + Motor<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> +
    +
    +
    Class for motors
    +
    + +
    +
    TODO: Remove this.
    +
    + +
    +
    + Wraps a motor instance to provide corrected velocity counts and allow reversing + independently of the corresponding slot's motor direction +
    +
    + +
    +   +
    +
    + MotorGroup<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> +
    +
    +
    Class for a group of motors
    +
    +
    + MotorSubsystem<T + extends + Motor<?>> +
    +
    +
    Class for motor subsystems
    +
    + +
    +   +
    + +
    +
    + Command group to run commands in parallel until all of them finish +
    +
    + +
    +
    + Command group to run commands in parallel until one particular command completes +
    +
    + +
    +
    + Command group to run commands in parallel until *one* is finished +
    +
    +
    + Periodic +
    +
    +
    An interface for classes to have the periodic function
    +
    +
    + Range +
    +
    +
    Helper class for tracking a range
    +
    + +
    + Deprecated. +
    + +
    +
    + Root class for the Robot Library (I will put important stuff here) +
    +
    +
    + Sensor<T + extends com.qualcomm.robotcore.hardware.HardwareDevice> +
    +
    + Deprecated. +
    +
    + Sensored +
    +
    + Deprecated. +
    + +
    +
    + A grouping command which runs a list of commands in sequence +
    +
    +
    + Servo +
    +
    + Deprecated. +
    + +
    +
    TODO: Remove this.
    +
    + +
    + Deprecated. +
    + +
    +   +
    + +
    +   +
    + +
    +
    Class for servo subsystems
    +
    +
    + SimpleMecanumDrivebaseSubsystem<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> +
    +
    +
    Class for mecanum/xdrive drivebases
    +
    + +
    +
    + This is a functional interface, when 'accept' is invoked, will only invoke the + 'consume' method when a different value is provided. +
    +
    +
    + Speaker +
    +
    + Deprecated. +
    +
    + Stick +
    +
    +
    Interface for objects that behave as sticks
    +
    + +
    +   +
    +
    + Subsystem +
    +
    +   +
    +
    + TankDrivebaseSubsystem<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> +
    +
    +
    Class for drivebase subsystems
    +
    + +
    +
    A command to do nothing but wait for a span of time.
    +
    +
    +
    +
    +
    +
    +
    + diff --git a/docs/TechnoLib/allpackages-index.html b/docs/TechnoLib/allpackages-index.html index fa615a47..fd25660d 100644 --- a/docs/TechnoLib/allpackages-index.html +++ b/docs/TechnoLib/allpackages-index.html @@ -1,98 +1,174 @@ - + - - -All Packages (RobotLibrary API) - - - - - - - - - - - - - - - - + + + All Packages (RobotLibrary API) + + + + + + + + + + + + + + + + diff --git a/docs/TechnoLib/constant-values.html b/docs/TechnoLib/constant-values.html index 08ce8446..5af54f17 100644 --- a/docs/TechnoLib/constant-values.html +++ b/docs/TechnoLib/constant-values.html @@ -1,117 +1,236 @@ - + - - -Constant Field Values (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Constant Field Values

    -
    -

    Contents

    - -
    -
    -
    -

    com.technototes.*

    - -
      -
    • -
      com.technototes.library.structure.CommandOpMode
      -
      -
      Modifier and Type
      -
      Constant Field
      -
      Value
      -
      public static final int
      -
      MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED
      -
      900
      -
      -
    • -
    - -
    -
    -
    -
    - + + + Constant Field Values (RobotLibrary API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Constant Field Values

    +
    +

    Contents

    + +
    +
    +
    +

    com.technototes.*

    +
      +
    • +
      + com.technototes.library.control.AxisBase +
      +
      +
      Modifier and Type
      +
      Constant Field
      +
      Value
      +
      + public static final double +
      + +
      0.05
      +
      +
    • +
    +
      +
    • +
      + com.technototes.library.structure.CommandOpMode +
      +
      +
      Modifier and Type
      +
      Constant Field
      +
      Value
      +
      + public static final int +
      +
      + MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED +
      +
      900
      +
      +
    • +
    +
      +
    • +
      + com.technototes.library.util.Characters +
      +
      +
      Modifier and Type
      +
      Constant Field
      +
      Value
      +
      + public static final String +
      + +
      "\ud83d\udd35"
      +
      + public static final String +
      +
      + CYCLE +
      +
      "\u267b\ufe0f"
      +
      + public static final String +
      +
      + DUCK +
      +
      "\ud83e\udd86"
      +
      + public static final String +
      +
      + GAMEPAD +
      +
      "\ud83c\udfae"
      +
      + public static final String +
      + +
      "\ud83d\udfe5"
      +
      +
    • +
    +
    +
    +
    +
    + diff --git a/docs/TechnoLib/deprecated-list.html b/docs/TechnoLib/deprecated-list.html index 1f0e48e2..fc5f118b 100644 --- a/docs/TechnoLib/deprecated-list.html +++ b/docs/TechnoLib/deprecated-list.html @@ -1,120 +1,195 @@ - + - - -Deprecated List (RobotLibrary API) - - - - - - - - - - - - - - - - + + + Deprecated List (RobotLibrary API) + + + + + + + + + + + + + + + + diff --git a/docs/TechnoLib/help-doc.html b/docs/TechnoLib/help-doc.html index 44dc1160..76a45f3d 100644 --- a/docs/TechnoLib/help-doc.html +++ b/docs/TechnoLib/help-doc.html @@ -1,186 +1,269 @@ - + - - -API Help (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    -

    JavaDoc Help

    - -
    -
    -

    Navigation

    -Starting from the Overview page, you can browse the documentation using the links in each page, and in the navigation bar at the top of each page. The Index and Search box allow you to navigate to specific declarations and summary pages, including: All Packages, All Classes and Interfaces - -
    -
    -
    -

    Kinds of Pages

    -The following sections describe the different kinds of pages in this collection. -
    -

    Overview

    -

    The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

    -
    -
    -

    Package

    -

    Each package has a page that contains a list of its classes and interfaces, with a summary for each. These pages may contain the following categories:

    -
      -
    • Interfaces
    • -
    • Classes
    • -
    • Enum Classes
    • -
    • Exceptions
    • -
    • Errors
    • -
    • Annotation Interfaces
    • -
    -
    -
    -

    Class or Interface

    -

    Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a declaration and description, member summary tables, and detailed member descriptions. Entries in each of these sections are omitted if they are empty or not applicable.

    -
      -
    • Class Inheritance Diagram
    • -
    • Direct Subclasses
    • -
    • All Known Subinterfaces
    • -
    • All Known Implementing Classes
    • -
    • Class or Interface Declaration
    • -
    • Class or Interface Description
    • -
    -
    -
      -
    • Nested Class Summary
    • -
    • Enum Constant Summary
    • -
    • Field Summary
    • -
    • Property Summary
    • -
    • Constructor Summary
    • -
    • Method Summary
    • -
    • Required Element Summary
    • -
    • Optional Element Summary
    • -
    -
    -
      -
    • Enum Constant Details
    • -
    • Field Details
    • -
    • Property Details
    • -
    • Constructor Details
    • -
    • Method Details
    • -
    • Element Details
    • -
    -

    Note: Annotation interfaces have required and optional elements, but not methods. Only enum classes have enum constants. The components of a record class are displayed as part of the declaration of the record class. Properties are a feature of JavaFX.

    -

    The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.

    -
    -
    -

    Other Files

    -

    Packages and modules may contain pages with additional information related to the declarations nearby.

    -
    -
    -

    Tree (Class Hierarchy)

    -

    There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. Classes are organized by inheritance structure starting with java.lang.Object. Interfaces do not inherit from java.lang.Object.

    -
      -
    • When viewing the Overview page, clicking on TREE displays the hierarchy for all packages.
    • -
    • When viewing a particular package, class or interface page, clicking on TREE displays the hierarchy for only that package.
    • -
    -
    -
    -

    Deprecated API

    -

    The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to shortcomings, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.

    -
    -
    -

    Constant Field Values

    -

    The Constant Field Values page lists the static final fields and their values.

    -
    -
    -

    All Packages

    -

    The All Packages page contains an alphabetic index of all packages contained in the documentation.

    -
    -
    -

    All Classes and Interfaces

    -

    The All Classes and Interfaces page contains an alphabetic index of all classes and interfaces contained in the documentation, including annotation interfaces, enum classes, and record classes.

    -
    -
    -

    Index

    -

    The Index contains an alphabetic index of all classes, interfaces, constructors, methods, and fields in the documentation, as well as summary pages such as All Packages, All Classes and Interfaces.

    -
    -
    -
    -This help file applies to API documentation generated by the standard doclet.
    -
    -
    - + + + API Help (RobotLibrary API) + + + + + + + + + + + + + + +
    + +
    +
    +

    JavaDoc Help

    + +
    +
    +

    Navigation

    + Starting from the Overview page, you can browse the + documentation using the links in each page, and in the navigation bar at the top of each + page. The Index and Search box allow you to navigate to + specific declarations and summary pages, including: + All Packages, + All Classes and Interfaces + +
    +
    +
    +

    Kinds of Pages

    + The following sections describe the different kinds of pages in this collection. +
    +

    Overview

    +

    + The Overview page is the front page of this API document + and provides a list of all packages with a summary for each. This page can also + contain an overall description of the set of packages. +

    +
    +
    +

    Package

    +

    + Each package has a page that contains a list of its classes and interfaces, with a + summary for each. These pages may contain the following categories: +

    +
      +
    • Interfaces
    • +
    • Classes
    • +
    • Enum Classes
    • +
    • Exceptions
    • +
    • Errors
    • +
    • Annotation Interfaces
    • +
    +
    +
    +

    Class or Interface

    +

    + Each class, interface, nested class and nested interface has its own separate page. + Each of these pages has three sections consisting of a declaration and description, + member summary tables, and detailed member descriptions. Entries in each of these + sections are omitted if they are empty or not applicable. +

    +
      +
    • Class Inheritance Diagram
    • +
    • Direct Subclasses
    • +
    • All Known Subinterfaces
    • +
    • All Known Implementing Classes
    • +
    • Class or Interface Declaration
    • +
    • Class or Interface Description
    • +
    +
    +
      +
    • Nested Class Summary
    • +
    • Enum Constant Summary
    • +
    • Field Summary
    • +
    • Property Summary
    • +
    • Constructor Summary
    • +
    • Method Summary
    • +
    • Required Element Summary
    • +
    • Optional Element Summary
    • +
    +
    +
      +
    • Enum Constant Details
    • +
    • Field Details
    • +
    • Property Details
    • +
    • Constructor Details
    • +
    • Method Details
    • +
    • Element Details
    • +
    +

    + Note: Annotation interfaces have required and + optional elements, but not methods. Only enum classes have enum constants. The + components of a record class are displayed as part of the declaration of the record + class. Properties are a feature of JavaFX. +

    +

    + The summary entries are alphabetical, while the detailed descriptions are in the + order they appear in the source code. This preserves the logical groupings + established by the programmer. +

    +
    +
    +

    Other Files

    +

    + Packages and modules may contain pages with additional information related to the + declarations nearby. +

    +
    +
    +

    Tree (Class Hierarchy)

    +

    + There is a Class Hierarchy page for all packages, + plus a hierarchy for each package. Each hierarchy page contains a list of classes + and a list of interfaces. Classes are organized by inheritance structure starting + with java.lang.Object. Interfaces do not inherit from + java.lang.Object. +

    +
      +
    • + When viewing the Overview page, clicking on TREE displays the hierarchy for all + packages. +
    • +
    • + When viewing a particular package, class or interface page, clicking on TREE + displays the hierarchy for only that package. +
    • +
    +
    +
    +

    Deprecated API

    +

    + The Deprecated API page lists all of the API that + have been deprecated. A deprecated API is not recommended for use, generally due to + shortcomings, and a replacement API is usually given. Deprecated APIs may be removed + in future implementations. +

    +
    +
    +

    Constant Field Values

    +

    + The Constant Field Values page lists the static + final fields and their values. +

    +
    +
    +

    All Packages

    +

    + The All Packages page contains an alphabetic + index of all packages contained in the documentation. +

    +
    +
    +

    All Classes and Interfaces

    +

    + The All Classes and Interfaces page contains an + alphabetic index of all classes and interfaces contained in the documentation, + including annotation interfaces, enum classes, and record classes. +

    +
    +
    +

    Index

    +

    + The Index contains an alphabetic index of all classes, + interfaces, constructors, methods, and fields in the documentation, as well as + summary pages such as All Packages, + All Classes and Interfaces. +

    +
    +
    +
    + This help file applies to API documentation generated by the standard doclet. +
    +
    +
    + diff --git a/docs/TechnoLib/index-all.html b/docs/TechnoLib/index-all.html index 81a9c88f..0771b53e 100644 --- a/docs/TechnoLib/index-all.html +++ b/docs/TechnoLib/index-all.html @@ -1,3359 +1,13967 @@ - + - - -Index (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Index

    -
    -A B C D E F G H I J L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Constant Field Values -

    A

    -
    -
    accept(T) - Method in interface com.technototes.library.util.SmartConsumer
    -
    -
    The public interface for a SmartConsumer: accept should be invoked, not consume :)
    -
    -
    addCommands(Command...) - Method in class com.technototes.library.command.CommandGroup
    -
    -
    Add a command to the group
    -
    -
    additionalInitConditions() - Method in class com.technototes.library.structure.CommandOpMode
    -
     
    -
    addRequirements(Subsystem...) - Method in interface com.technototes.library.command.Command
    -
    -
    Add requirement subsystems to command
    -
    -
    addSongs(String...) - Method in class com.technototes.library.hardware.Speaker
    -
    -
    Deprecated.
    -
    ALL_ACTIVE - Enum constant in enum class com.technototes.library.control.Binding.Type
    -
     
    -
    Alliance - Enum Class in com.technototes.library.util
    -
    -
    An enumeration to specify which alliance the bot is on (Red, Blue, or None)
    -
    -
    Alliance.Blue - Annotation Interface in com.technototes.library.util
    -
    -
    Not sure what this is for.
    -
    -
    Alliance.Red - Annotation Interface in com.technototes.library.util
    -
    -
    Not sure what this is for.
    -
    -
    Alliance.Selector<T> - Class in com.technototes.library.util
    -
    -
    This feels over-engineered, but it's probably for some obnoxious Java thing, - unfortunate.
    -
    -
    alongWith(Command...) - Method in interface com.technototes.library.command.Command
    -
    -
    Run this command in parallel with additional commands
    -
    -
    alpha() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    -
    -
    Get the alpha (transparency) of the color
    -
    -
    analog(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    analog(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    AnalogBuilder - Class in com.technototes.library.hardware2
    -
    -
    TODO: Remove this.
    -
    -
    AnalogBuilder(int) - Constructor for class com.technototes.library.hardware2.AnalogBuilder
    -
     
    -
    AnalogBuilder(AnalogSensor) - Constructor for class com.technototes.library.hardware2.AnalogBuilder
    -
     
    -
    AnalogBuilder(String) - Constructor for class com.technototes.library.hardware2.AnalogBuilder
    -
     
    -
    AnalogSensor - Class in com.technototes.library.hardware.sensor
    -
    -
    Class for analog sensors
    -
    -
    AnalogSensor(AnalogInput) - Constructor for class com.technototes.library.hardware.sensor.AnalogSensor
    -
    -
    Make an analog sensor
    -
    -
    AnalogSensor(String) - Constructor for class com.technototes.library.hardware.sensor.AnalogSensor
    -
    -
    Make an analog sensor
    -
    -
    andThen(Command...) - Method in interface com.technototes.library.command.Command
    -
    -
    Run a command or series of ParallelCommands after this one
    -
    -
    anyCancelled - Variable in class com.technototes.library.command.CommandGroup
    -
    -
    Have *any* of the command list been cancelled
    -
    -
    apply(UnaryOperator<T>) - Method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    arcadeDrive(double, double) - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    -
     
    -
    argb() - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor
    -
     
    -
    argb() - Method in class com.technototes.library.hardware.sensor.ColorSensor
    -
     
    -
    argb() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    -
     
    -
    asConditional(BooleanSupplier) - Method in interface com.technototes.library.command.Command
    -
    -
    Creates a conditional command out of this
    -
    -
    at(double) - Method in class com.technototes.library.hardware2.ServoBuilder
    -
     
    -
    AVERAGE - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority
    -
     
    -
    AxisBase - Class in com.technototes.library.control
    -
    -
    The class to extend custom gamepad axis from
    -
    -
    AxisBase(DoubleSupplier) - Constructor for class com.technototes.library.control.AxisBase
    -
    -
    Make a GamepadAxis with the supplier
    -
    -
    AxisBase(DoubleSupplier, double) - Constructor for class com.technototes.library.control.AxisBase
    -
    -
    Make a GamepadAxis with the supplier and the threshold for the stick to behave as a button
    -
    -
    axisInstance(DoubleSupplier) - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Returns the U (extended from AxisBase) type wrapped around a simple DoubleSupplier
    -
    -
    -

    B

    -
    -
    Binding<T extends BooleanSupplier> - Interface in com.technototes.library.control
    -
    -
    Class for bindings to extend
    -
    -
    Binding.Type - Enum Class in com.technototes.library.control
    -
    -
    Button type
    -
    -
    BLACK - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    blue() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    -
    -
    Get the RGB blue of the sensor
    -
    -
    BLUE - Enum constant in enum class com.technototes.library.util.Alliance
    -
    -
    BLUE alliance selector
    -
    -
    BLUE - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    BLUE_CIRCLE - Static variable in class com.technototes.library.util.Characters
    -
     
    -
    BooleanEntry - Class in com.technototes.library.logger.entry
    -
     
    -
    BooleanEntry(String, Supplier<Boolean>, int, String, String) - Constructor for class com.technototes.library.logger.entry.BooleanEntry
    -
     
    -
    booleanSupplier - Variable in class com.technototes.library.control.ButtonBase
    -
     
    -
    brake() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
     
    -
    brake() - Method in class com.technototes.library.hardware.motor.Motor
    -
    -
    Configure the motor to *brake* when the power is set to zero.
    -
    -
    brake() - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    build() - Method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    build() - Method in class com.technototes.library.hardware2.IMUBuilder
    -
    -
    Deprecated
    -
    -
    ButtonBase - Class in com.technototes.library.control
    -
    -
    The class to extend custom gamepad buttons from
    -
    -
    ButtonBase(BooleanSupplier) - Constructor for class com.technototes.library.control.ButtonBase
    -
    -
    Create button with boolean supplier
    -
    -
    buttonInstance(BooleanSupplier) - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Great a ButtonBase type from the given BooleanSupplier
    -
    -
    bVal - Variable in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    -
    -
    The value of the enumeration
    -
    -
    bVal - Variable in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    -
    -
    deprecated
    -
    -
    -

    C

    -
    -
    calculateA(double, double, double, double) - Method in enum class com.technototes.library.util.Differential.DifferentialPriority
    -
    -
    Calculates the value for the differential output generated by averaging
    -
    -
    calculateS(double, double, double, double) - Method in enum class com.technototes.library.util.Differential.DifferentialPriority
    -
    -
    Calculates the value for the differential output generated by subtracting
    -
    -
    cancel() - Method in interface com.technototes.library.command.Command
    -
    -
    If the command is running, interrupt it such that it can be cancelled
    -
    -
    CANCELLED - Enum constant in enum class com.technototes.library.command.Command.CommandState
    -
    -
    The command has been cancelled
    -
    -
    cancelUpon(BooleanSupplier) - Method in interface com.technototes.library.command.Command
    -
    -
    Runs this command until it finishes, or until the condition supplied is true
    -
    -
    captionDivider - Variable in class com.technototes.library.logger.Logger
    -
    -
    The divider between the tag and the entry for telemetry (default ':')
    -
    -
    Characters - Class in com.technototes.library.util
    -
     
    -
    Characters() - Constructor for class com.technototes.library.util.Characters
    -
     
    -
    ChoiceCommand - Class in com.technototes.library.command
    -
    -
    A command that allows choosing among a number of commands based on variety of conditions
    -
    -
    ChoiceCommand(Pair<BooleanSupplier, Command>...) - Constructor for class com.technototes.library.command.ChoiceCommand
    -
    -
    Each pair represents a condition to check, and the command to execute if that condition is - true
    -
    -
    ChoiceCommand(BooleanSupplier, Command) - Constructor for class com.technototes.library.command.ChoiceCommand
    -
    -
    This is a simplistic ChoiceCommand that is simply a single conditional command - I *think* this will wwait until b is true
    -
    -
    clear() - Static method in interface com.technototes.library.command.Command
    -
    -
    Clear out the state, time, and requirement maps.
    -
    -
    close() - Method in class com.technototes.library.hardware.DummyDevice
    -
     
    -
    closestTo(double, double...) - Static method in class com.technototes.library.util.MathUtils
    -
    -
    Returns the value from a list which is closed to the first value.
    -
    -
    closestTo(double, int...) - Static method in class com.technototes.library.util.MathUtils
    -
    -
    Returns the value from a list which is closed to the first value.
    -
    -
    coast() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
     
    -
    coast() - Method in class com.technototes.library.hardware.motor.Motor
    -
    -
    Configure the motor to *float* when the power is set to zero.
    -
    -
    coast() - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    codriverGamepad - Variable in class com.technototes.library.structure.CommandOpMode
    -
    -
    Command gamepad objects
    -
    -
    color(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    Color - Enum Class in com.technototes.library.util
    -
    -
    Enum for Colors and some formatting
    -
    -
    ColorBuilder - Class in com.technototes.library.hardware2
    -
    -
    TODO: Remove this.
    -
    -
    ColorBuilder(ColorSensor) - Constructor for class com.technototes.library.hardware2.ColorBuilder
    -
     
    -
    ColorBuilder(String) - Constructor for class com.technototes.library.hardware2.ColorBuilder
    -
     
    -
    ColorDistanceSensor - Class in com.technototes.library.hardware.sensor
    -
     
    -
    ColorDistanceSensor(ColorRangeSensor) - Constructor for class com.technototes.library.hardware.sensor.ColorDistanceSensor
    -
     
    -
    ColorDistanceSensor(String) - Constructor for class com.technototes.library.hardware.sensor.ColorDistanceSensor
    -
     
    -
    colorRange(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    ColorRangeBuilder - Class in com.technototes.library.hardware2
    -
    -
    TODO: Remove this.
    -
    -
    ColorRangeBuilder(ColorRangeSensor) - Constructor for class com.technototes.library.hardware2.ColorRangeBuilder
    -
     
    -
    ColorRangeBuilder(String) - Constructor for class com.technototes.library.hardware2.ColorRangeBuilder
    -
     
    -
    ColorSensor - Class in com.technototes.library.hardware.sensor
    -
    -
    Class for color sensors
    -
    -
    ColorSensor(ColorSensor) - Constructor for class com.technototes.library.hardware.sensor.ColorSensor
    -
    -
    Make a color Sensor
    -
    -
    ColorSensor(String) - Constructor for class com.technototes.library.hardware.sensor.ColorSensor
    -
    -
    Make a color sensor
    -
    -
    com.technototes.library - package com.technototes.library
    -
     
    -
    com.technototes.library.command - package com.technototes.library.command
    -
     
    -
    com.technototes.library.control - package com.technototes.library.control
    -
     
    -
    com.technototes.library.general - package com.technototes.library.general
    -
     
    -
    com.technototes.library.hardware - package com.technototes.library.hardware
    -
     
    -
    com.technototes.library.hardware.motor - package com.technototes.library.hardware.motor
    -
     
    -
    com.technototes.library.hardware.sensor - package com.technototes.library.hardware.sensor
    -
     
    -
    com.technototes.library.hardware.sensor.encoder - package com.technototes.library.hardware.sensor.encoder
    -
     
    -
    com.technototes.library.hardware.servo - package com.technototes.library.hardware.servo
    -
     
    -
    com.technototes.library.hardware2 - package com.technototes.library.hardware2
    -
     
    -
    com.technototes.library.logger - package com.technototes.library.logger
    -
     
    -
    com.technototes.library.logger.entry - package com.technototes.library.logger.entry
    -
     
    -
    com.technototes.library.structure - package com.technototes.library.structure
    -
     
    -
    com.technototes.library.subsystem - package com.technototes.library.subsystem
    -
     
    -
    com.technototes.library.subsystem.drivebase - package com.technototes.library.subsystem.drivebase
    -
     
    -
    com.technototes.library.subsystem.motor - package com.technototes.library.subsystem.motor
    -
     
    -
    com.technototes.library.subsystem.servo - package com.technototes.library.subsystem.servo
    -
     
    -
    com.technototes.library.util - package com.technototes.library.util
    -
     
    -
    Command - Interface in com.technototes.library.command
    -
    -
    The root Command class
    -
    -
    Command.CommandState - Enum Class in com.technototes.library.command
    -
    -
    The command state enum
    -
    -
    CommandAxis - Class in com.technototes.library.control
    -
    -
    Class for command axis for the gamepad
    -
    -
    CommandAxis(DoubleSupplier) - Constructor for class com.technototes.library.control.CommandAxis
    -
    -
    Make a command axis
    -
    -
    CommandAxis(DoubleSupplier, double) - Constructor for class com.technototes.library.control.CommandAxis
    -
    -
    Make a command axis
    -
    -
    CommandBase - Class in com.technototes.library.command
    -
    -
    Deprecated.
    -
    -
    CommandBase() - Constructor for class com.technototes.library.command.CommandBase
    -
    -
    Deprecated.
    -
    CommandBinding - Class in com.technototes.library.control
    -
    -
    Command implementation of Binding
    -
    -
    CommandBinding(Binding.Type, CommandInput...) - Constructor for class com.technototes.library.control.CommandBinding
    -
     
    -
    CommandBinding(CommandInput...) - Constructor for class com.technototes.library.control.CommandBinding
    -
     
    -
    CommandButton - Class in com.technototes.library.control
    -
    -
    Class for command buttons for gamepad
    -
    -
    CommandButton(BooleanSupplier) - Constructor for class com.technototes.library.control.CommandButton
    -
    -
    Make command button
    -
    -
    CommandGamepad - Class in com.technototes.library.control
    -
    -
    Class for command gamepads that specifies class params
    -
    -
    CommandGamepad(Gamepad) - Constructor for class com.technototes.library.control.CommandGamepad
    -
    -
    Make command gamepad
    -
    -
    CommandGroup - Class in com.technototes.library.command
    -
    -
    Root class for all command groups (Sequential, Parallel, etc...) - WARNING: You probably will be better served by the specific CommandGroup subclasses, rather than - using this one directly.
    -
    -
    CommandGroup(boolean, Command...) - Constructor for class com.technototes.library.command.CommandGroup
    -
    -
    Create a command group with commands
    -
    -
    CommandInput<T extends ButtonBase> - Interface in com.technototes.library.control
    -
    -
    Class for gamepad-command integration
    -
    -
    commandMap - Variable in class com.technototes.library.command.CommandGroup
    -
    -
    This is a map from the command to whether it has been run
    -
    -
    CommandOpMode - Class in com.technototes.library.structure
    -
    -
    Class for command based op modes
    -
    -
    CommandOpMode() - Constructor for class com.technototes.library.structure.CommandOpMode
    -
     
    -
    CommandOpMode.OpModeState - Enum Class in com.technototes.library.structure
    -
    -
    Enum for op mode state
    -
    -
    CommandScheduler - Class in com.technototes.library.command
    -
    -
    This is a "singleton" object for scheduling commands.
    -
    -
    ConditionalCommand - Class in com.technototes.library.command
    -
    -
    Simple class for commands that require a certain condition to be true to run
    -
    -
    ConditionalCommand(BooleanSupplier) - Constructor for class com.technototes.library.command.ConditionalCommand
    -
    -
    This makes a "wait" command
    -
    -
    ConditionalCommand(BooleanSupplier, Command) - Constructor for class com.technototes.library.command.ConditionalCommand
    -
    -
    Make a conditional command
    -
    -
    ConditionalCommand(BooleanSupplier, Command, Command) - Constructor for class com.technototes.library.command.ConditionalCommand
    -
    -
    Make a conditional command
    -
    -
    constrain(double, double, double) - Static method in class com.technototes.library.util.MathUtils
    -
    -
    Deprecated. 
    -
    -
    constrain(int, int, int) - Static method in class com.technototes.library.util.MathUtils
    -
    -
    Deprecated. 
    -
    -
    Constraints(double, double, double) - Constructor for class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    -
     
    -
    consume(T) - Method in interface com.technototes.library.util.SmartConsumer
    -
    -
    The 'consume' function
    -
    -
    countCancel - Variable in class com.technototes.library.command.CommandGroup
    -
    -
    Should a cancelled command be considered 'finished'
    -
    -
    countCancel() - Method in class com.technototes.library.command.CommandGroup
    -
    -
    Specify that this CommandGroup should count a cancellation as 'completed'
    -
    -
    create(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    create(Command, Subsystem...) - Static method in interface com.technototes.library.command.Command
    -
    -
    This is a helper to create a new command from an existing command, but with additional - subsystem requirements
    -
    -
    create(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    crServo(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    crServo(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    CRServoBuilder - Class in com.technototes.library.hardware2
    -
    -
    TODO: Remove this.
    -
    -
    CRServoBuilder(int) - Constructor for class com.technototes.library.hardware2.CRServoBuilder
    -
     
    -
    CRServoBuilder(CRServo) - Constructor for class com.technototes.library.hardware2.CRServoBuilder
    -
     
    -
    CRServoBuilder(String) - Constructor for class com.technototes.library.hardware2.CRServoBuilder
    -
     
    -
    CYAN - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    CYCLE - Static variable in class com.technototes.library.util.Characters
    -
     
    -
    -

    D

    -
    -
    DARK_GRAY - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    deadline(Command...) - Method in interface com.technototes.library.command.Command
    -
    -
    Runs all the commands specified in parallel *until this command is completed*
    -
    -
    DEFAULT_TRIGGER_THRESHOLD - Static variable in class com.technototes.library.control.AxisBase
    -
    -
    The default trigger threshold
    -
    -
    degrees() - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Set angle format to degrees
    -
    -
    degrees() - Method in class com.technototes.library.hardware2.IMUBuilder
    -
    -
    Deprecated
    -
    -
    device - Variable in class com.technototes.library.hardware.HardwareDevice
    -
    -
    Deprecated.
    -
    device - Variable in class com.technototes.library.subsystem.DeviceSubsystem
    -
     
    -
    DeviceSubsystem<T extends HardwareDevice<?>> - Class in com.technototes.library.subsystem
    -
    -
    class for subsystems
    -
    -
    DeviceSubsystem(T) - Constructor for class com.technototes.library.subsystem.DeviceSubsystem
    -
    -
    Create a subsystem
    -
    -
    DIFFERENCE - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority
    -
     
    -
    Differential - Class in com.technototes.library.util
    -
     
    -
    Differential(DoubleConsumer, DoubleConsumer) - Constructor for class com.technototes.library.util.Differential
    -
    -
    Create differential from two consumers
    -
    -
    Differential(DoubleConsumer, DoubleConsumer, Differential.DifferentialPriority) - Constructor for class com.technototes.library.util.Differential
    -
    -
    Create differential from two consumers
    -
    -
    Differential.DifferentialPriority - Enum Class in com.technototes.library.util
    -
    -
    Enum for the priority of the differential.
    -
    -
    digital(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    digital(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    DigitalBuilder - Class in com.technototes.library.hardware2
    -
    -
    TODO: Remove this.
    -
    -
    DigitalBuilder(int) - Constructor for class com.technototes.library.hardware2.DigitalBuilder
    -
    -
    Don't use this in the future
    -
    -
    DigitalBuilder(DigitalChannel) - Constructor for class com.technototes.library.hardware2.DigitalBuilder
    -
    -
    Don't use this in the future
    -
    -
    DigitalBuilder(String) - Constructor for class com.technototes.library.hardware2.DigitalBuilder
    -
    -
    Don't use this in the future
    -
    -
    DigitalSensor - Class in com.technototes.library.hardware.sensor
    -
    -
    Class for digital sensors
    -
    -
    DigitalSensor(DigitalChannel) - Constructor for class com.technototes.library.hardware.sensor.DigitalSensor
    -
    -
    Make a digital sensor
    -
    -
    DigitalSensor(String) - Constructor for class com.technototes.library.hardware.sensor.DigitalSensor
    -
    -
    Make a digital sensor
    -
    -
    direction(DcMotorSimple.Direction) - Method in class com.technototes.library.hardware2.CRServoBuilder
    -
     
    -
    direction(DcMotorSimple.Direction) - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    direction(Servo.Direction) - Method in class com.technototes.library.hardware2.ServoBuilder
    -
     
    -
    disable() - Method in class com.technototes.library.control.CommandGamepad
    -
     
    -
    disable() - Method in interface com.technototes.library.general.Enablable
    -
    -
    Disable the object
    -
    -
    disable() - Method in class com.technototes.library.hardware2.ColorRangeBuilder
    -
     
    -
    disable() - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    distance(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    DistanceBuilder - Class in com.technototes.library.hardware2
    -
    -
    TODO: Remove this.
    -
    -
    DistanceBuilder(DistanceSensor) - Constructor for class com.technototes.library.hardware2.DistanceBuilder
    -
     
    -
    DistanceBuilder(String) - Constructor for class com.technototes.library.hardware2.DistanceBuilder
    -
     
    -
    doubleSupplier - Variable in class com.technototes.library.control.AxisBase
    -
     
    -
    down - Variable in class com.technototes.library.control.GamepadDpad
    -
    -
    The objects for the dpad buttons
    -
    -
    dpad - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The dpad object
    -
    -
    dpadDown - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    dpadLeft - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    dpadRight - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    dpadUp - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    drive(double, double) - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    -
     
    -
    drive(double, double, double) - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    -
     
    -
    drive(double, double, double, double) - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    -
     
    -
    DrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.subsystem.drivebase
    -
    -
    Class for DriveBase subsystems
    -
    -
    DrivebaseSubsystem(Motor<T>...) - Constructor for class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    -
    -
    Create a drivebase subsystem
    -
    -
    DrivebaseSubsystem(DoubleSupplier, Motor<T>...) - Constructor for class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    -
    -
    Create a drivebase subsystem
    -
    -
    driverGamepad - Variable in class com.technototes.library.structure.CommandOpMode
    -
    -
    Command gamepad objects
    -
    -
    DUCK - Static variable in class com.technototes.library.util.Characters
    -
     
    -
    DummyDevice<T> - Class in com.technototes.library.hardware
    -
    -
    This isn't worth actually doing.
    -
    -
    DummyDevice(T) - Constructor for class com.technototes.library.hardware.DummyDevice
    -
     
    -
    duringInit() - Element in annotation interface com.technototes.library.logger.LogConfig.Run
    -
    -
    Run the log during the init Period
    -
    -
    duringRun() - Element in annotation interface com.technototes.library.logger.LogConfig.Run
    -
    -
    Run the log during the teleop Period
    -
    -
    -

    E

    -
    -
    Enablable<T extends Enablable<T>> - Interface in com.technototes.library.general
    -
    -
    Interface for anything that can be enabled/disabled
    -
    -
    enable() - Method in class com.technototes.library.control.CommandGamepad
    -
     
    -
    enable() - Method in interface com.technototes.library.general.Enablable
    -
    -
    Enable the object
    -
    -
    enable() - Method in class com.technototes.library.hardware2.ColorRangeBuilder
    -
     
    -
    enable() - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    EncodedMotor<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.hardware.motor
    -
    -
    Class for encoded motors
    -
    -
    EncodedMotor(String) - Constructor for class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Make encoded motor, with the default encoder configured
    -
    -
    EncodedMotor(String, Encoder) - Constructor for class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Make encoded motor
    -
    -
    EncodedMotor(T) - Constructor for class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Make encoded motor, with the default encoder configured
    -
    -
    EncodedMotor(T, Encoder) - Constructor for class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Make encoded motor
    -
    -
    EncodedMotorGroup<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.hardware.motor
    -
    -
    Class for encoded motor groups
    -
    -
    EncodedMotorGroup(EncodedMotor<T>, Motor<T>...) - Constructor for class com.technototes.library.hardware.motor.EncodedMotorGroup
    -
    -
    Create an encoded motor groupM
    -
    -
    EncodedMotorSubsystem - Class in com.technototes.library.subsystem.motor
    -
    -
    Class for encoded motor subsystems
    -
    -
    EncodedMotorSubsystem(EncodedMotor<?>) - Constructor for class com.technototes.library.subsystem.motor.EncodedMotorSubsystem
    -
    -
    Create encoded motor subsystem
    -
    -
    Encoder - Interface in com.technototes.library.hardware.sensor.encoder
    -
    -
    Interfaces for encoders to use
    -
    -
    end() - Method in class com.technototes.library.structure.CommandOpMode
    -
    -
    Runs once when op mode is ended
    -
    -
    end(boolean) - Method in interface com.technototes.library.command.Command
    -
    -
    End the command
    -
    -
    end(boolean) - Method in class com.technototes.library.command.CommandGroup
    -
    -
    This stops the command group from executing
    -
    -
    END - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    -
     
    -
    Entry<T> - Class in com.technototes.library.logger.entry
    -
    -
    The root class for logging entries
    -
    -
    Entry(String, Supplier<T>, int) - Constructor for class com.technototes.library.logger.entry.Entry
    -
    -
    Create an entry with name, value, index
    -
    -
    execute() - Method in interface com.technototes.library.command.Command
    -
    -
    Execute the command
    -
    -
    execute() - Method in class com.technototes.library.command.CommandBase
    -
    -
    Deprecated.
    -
    Execute the command
    -
    -
    execute() - Method in class com.technototes.library.command.CommandGroup
    -
     
    -
    execute() - Method in class com.technototes.library.command.ConditionalCommand
    -
     
    -
    execute() - Method in class com.technototes.library.command.WaitCommand
    -
     
    -
    EXECUTING - Enum constant in enum class com.technototes.library.command.Command.CommandState
    -
    -
    The command is running normally
    -
    -
    expandedPWM() - Method in class com.technototes.library.hardware2.ServoBuilder
    -
     
    -
    expandedRange() - Method in class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    ExternalEncoder - Class in com.technototes.library.hardware.sensor.encoder
    -
    -
    A wrapper around an AnalogInput that enables "zeroing" for usefulness
    -
    -
    ExternalEncoder(AnalogInput) - Constructor for class com.technototes.library.hardware.sensor.encoder.ExternalEncoder
    -
    -
    Create an ExternalEncoder from an arbitrary AnalogInput
    -
    -
    ExternalEncoder(String) - Constructor for class com.technototes.library.hardware.sensor.encoder.ExternalEncoder
    -
    -
    Create an ExternalEncoder from an arbitrary AnalogInput device
    -
    -
    -

    F

    -
    -
    falseValue() - Element in annotation interface com.technototes.library.logger.Log.Boolean
    -
    -
    Store the string when the annotated method returns false
    -
    -
    FINISHED - Enum constant in enum class com.technototes.library.command.Command.CommandState
    -
    -
    The command has completed successfully
    -
    -
    flMotor - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    -
    -
    Drive motors
    -
    -
    format() - Element in annotation interface com.technototes.library.logger.Log
    -
    -
    The format for the logged String
    -
    -
    format(Object) - Method in enum class com.technototes.library.util.Color
    -
    -
    Format the supplied object with the HTML to become this color
    -
    -
    format(String, Object...) - Method in enum class com.technototes.library.util.Color
    -
    -
    Format the supplied object with the HTML and a format String to become this color
    -
    -
    forward() - Method in class com.technototes.library.hardware2.CRServoBuilder
    -
     
    -
    forward() - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    forward() - Method in class com.technototes.library.hardware2.ServoBuilder
    -
     
    -
    FORWARD - Enum constant in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction
    -
     
    -
    frMotor - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    -
    -
    Drive motors
    -
    -
    -

    G

    -
    -
    gain(float) - Method in class com.technototes.library.hardware2.ColorRangeBuilder
    -
     
    -
    GAMEPAD - Static variable in class com.technototes.library.util.Characters
    -
     
    -
    gamepad1 - Variable in class com.technototes.library.structure.CommandOpMode
    -
     
    -
    gamepad2 - Variable in class com.technototes.library.structure.CommandOpMode
    -
     
    -
    GamepadBase<T extends ButtonBase,U extends AxisBase> - Class in com.technototes.library.control
    -
    -
    A class to extend gamepads from, it does the internal processing for you.
    -
    -
    GamepadBase(Gamepad, Class<T>, Class<U>) - Constructor for class com.technototes.library.control.GamepadBase
    -
    -
    Creates a gamepad with these parameters
    -
    -
    GamepadBase.Axis - Enum Class in com.technototes.library.control
    -
    -
    Axis enum for all axis on gamepad
    -
    -
    GamepadBase.Button - Enum Class in com.technototes.library.control
    -
    -
    Button enum for all buttons on gamepad
    -
    -
    GamepadDpad<T extends ButtonBase> - Class in com.technototes.library.control
    -
    -
    A class for dpads
    -
    -
    GamepadDpad(T, T, T, T) - Constructor for class com.technototes.library.control.GamepadDpad
    -
    -
    Create dpad with 4 buttons
    -
    -
    GamepadStick<T extends AxisBase,U extends ButtonBase> - Class in com.technototes.library.control
    -
    -
    A class for gamepad sticks
    -
    -
    GamepadStick(T, T, U) - Constructor for class com.technototes.library.control.GamepadStick
    -
    -
    Make a gamepad stick
    -
    -
    get() - Method in interface com.technototes.library.command.Command
    -
    -
    Gets the current state of the command (Supplier<CommandState>)
    -
    -
    get() - Method in interface com.technototes.library.control.Binding
    -
     
    -
    get() - Method in class com.technototes.library.hardware.DummyDevice
    -
     
    -
    get() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
     
    -
    get() - Method in class com.technototes.library.hardware.motor.Motor
    -
    -
    Gets the *speed* of the motor when it's used as a DoubleSupplier
    -
    -
    get() - Method in class com.technototes.library.logger.entry.Entry
    -
     
    -
    get(Binding.Type) - Method in interface com.technototes.library.control.Binding
    -
    -
    Get this as boolean for the type
    -
    -
    get(Class<? extends OpMode>) - Static method in enum class com.technototes.library.util.Alliance
    -
    -
    Get the alliance set for the OpMode passed in, if it's set in the annotation
    -
    -
    getAllDeviceList() - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    -
    -
    Deprecated.
    -
    getAllDevices() - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    -
    -
    Deprecated.
    -
    Get all devices in group
    -
    -
    getAllDevices() - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup
    -
     
    -
    getAllDevices() - Method in class com.technototes.library.hardware.motor.MotorGroup
    -
     
    -
    getAllDevices() - Method in class com.technototes.library.hardware.servo.ServoGroup
    -
    -
    Deprecated.
    -
    getAngle() - Method in interface com.technototes.library.control.Stick
    -
    -
    Returns the angle of the stick
    -
    -
    getAngularOrientation() - Method in class com.technototes.library.hardware.sensor.IMU
    -
     
    -
    getAngularOrientation(AngleUnit) - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Gets the Angular orientation of the IMU
    -
    -
    getAngularVelocity() - Method in class com.technototes.library.hardware.sensor.IMU
    -
     
    -
    getAngularVelocity(AngleUnit) - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Gets the angular velocity (in default units)
    -
    -
    getAsBoolean() - Method in interface com.technototes.library.control.Binding
    -
     
    -
    getAsBoolean() - Method in class com.technototes.library.control.ButtonBase
    -
    -
    Same as isPressed()
    -
    -
    getAsButton() - Method in class com.technototes.library.control.CommandAxis
    -
     
    -
    getAsButton(double) - Method in class com.technototes.library.control.CommandAxis
    -
     
    -
    getAsDouble() - Method in class com.technototes.library.control.AxisBase
    -
    -
    Returns the double from the axis
    -
    -
    getAsDouble() - Method in interface com.technototes.library.hardware.Sensored
    -
    -
    Deprecated.
    -
    getAverage() - Method in class com.technototes.library.util.Differential
    -
    -
    Gets the current average of the two differential inputs, - equating to one of the outputs
    -
    -
    getAxis(GamepadBase.Axis) - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Returns an axis
    -
    -
    getAxisAsBoolean(GamepadBase.Axis) - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Returns an axis as boolean
    -
    -
    getAxisAsDouble(GamepadBase.Axis) - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Returns an axis as double
    -
    -
    getButton(GamepadBase.Button) - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Returns a button
    -
    -
    getButtonAsBoolean(GamepadBase.Button) - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Returns a button as boolean (same as isPressed)
    -
    -
    getColor() - Method in enum class com.technototes.library.util.Alliance
    -
    -
    Get the alliance color (Red, Blue, or Black)
    -
    -
    getConnectionInfo() - Method in class com.technototes.library.hardware.DummyDevice
    -
     
    -
    getCorrectedVelocity() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    getCurrent(Subsystem) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    This gets the command currently using the subsystem provided
    -
    -
    getCurrentPosition() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    getCurrentPosition() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    getCurrentSong() - Method in class com.technototes.library.hardware.Speaker
    -
    -
    Deprecated.
    -
    getDefault(Subsystem) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Get the default command that is running on the subsystem provided
    -
    -
    getDefaultCommand() - Method in interface com.technototes.library.subsystem.Subsystem
    -
     
    -
    getDefaultType() - Method in interface com.technototes.library.control.Binding
    -
     
    -
    getDefaultType() - Method in class com.technototes.library.control.CommandBinding
    -
     
    -
    getDeviation() - Method in class com.technototes.library.util.Differential
    -
    -
    Gets the current deviation between the two differential inputs and the average, - equating to one of the outputs
    -
    -
    getDevice() - Method in class com.technototes.library.hardware.HardwareDevice
    -
    -
    Deprecated.
    -
    Get encapsulated device
    -
    -
    getDevice() - Method in class com.technototes.library.subsystem.DeviceSubsystem
    -
    -
    Get the devices for this subsystem
    -
    -
    getDeviceName() - Method in class com.technototes.library.hardware.DummyDevice
    -
     
    -
    getDifferentialPriority() - Method in class com.technototes.library.util.Differential
    -
    -
    Gets the priority for the difference output.
    -
    -
    getDirection() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    getDistance() - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor
    -
     
    -
    getDistance(DistanceUnit) - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor
    -
     
    -
    getDistance(DistanceUnit) - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor
    -
     
    -
    getDistance(DistanceUnit) - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor
    -
    -
    Deprecated.
    -
    Get the value with a specified distance Unit
    -
    -
    getDistanceFromCenter() - Method in interface com.technototes.library.control.Stick
    -
    -
    Returns the stick's distance from the center
    -
    -
    getDpad() - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Returns the Dpad object
    -
    -
    getEncoder() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Get the encoder object
    -
    -
    getFollowerist() - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    -
    -
    Deprecated.
    -
    getFollowers() - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    -
    -
    Deprecated.
    -
    Get the followers for the lead device
    -
    -
    getFollowers() - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup
    -
     
    -
    getFollowers() - Method in class com.technototes.library.hardware.motor.MotorGroup
    -
     
    -
    getFollowers() - Method in class com.technototes.library.hardware.servo.ServoGroup
    -
    -
    Deprecated.
    -
    getGamepad() - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Returns the encapsulated gamepad
    -
    -
    getGyro() - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    -
    -
    Get the Gyro angle
    -
    -
    getHexValue() - Method in enum class com.technototes.library.util.Color
    -
    -
    Get the hex value
    -
    -
    getIndex() - Method in class com.technototes.library.logger.entry.Entry
    -
    -
    Get the index for the entry
    -
    -
    getInstance() - Static method in class com.technototes.library.command.CommandScheduler
    -
    -
    Get (or create) the singleton CommandScheduler object
    -
    -
    getInstance() - Method in class com.technototes.library.control.CommandAxis
    -
     
    -
    getInstance() - Method in class com.technototes.library.control.CommandButton
    -
     
    -
    getInstance() - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Return instance of class parameter
    -
    -
    getInverted() - Method in class com.technototes.library.control.ButtonBase
    -
     
    -
    getInverted() - Method in interface com.technototes.library.general.Invertable
    -
    -
    Get current inversion
    -
    -
    getInverted() - Method in class com.technototes.library.hardware.motor.Motor
    -
    -
    Returns whether the motor is inverted.
    -
    -
    getInverted() - Method in class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    getLast() - Method in interface com.technototes.library.util.SmartConsumer
    -
     
    -
    getLeftStick() - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Returns the left stick
    -
    -
    getLight() - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor
    -
     
    -
    getLogger() - Method in class com.technototes.library.structure.CommandOpMode
    -
    -
    Get the op mode's logger
    -
    -
    getManufacturer() - Method in class com.technototes.library.hardware.DummyDevice
    -
     
    -
    getMap() - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
     
    -
    getMax(double...) - Static method in class com.technototes.library.util.MathUtils
    -
    -
    Get the max of supplied doubles
    -
    -
    getMax(int...) - Static method in class com.technototes.library.util.MathUtils
    -
    -
    Get the max of supplied ints
    -
    -
    getMaxAccel() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    getMaxAcceleration() - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    -
     
    -
    getMaxVel() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    getMaxVelocity() - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    -
     
    -
    getMultiplier() - Method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction
    -
     
    -
    getName() - Method in class com.technototes.library.logger.entry.Entry
    -
    -
    Get the name
    -
    -
    getOpModeRuntime() - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Gets the number of seconds that the opmode has been executing
    -
    -
    getOpModeRuntime() - Method in class com.technototes.library.structure.CommandOpMode
    -
    -
    Get the opmode runtime
    -
    -
    getOpModeState() - Method in class com.technototes.library.structure.CommandOpMode
    -
    -
    Get op mode state
    -
    -
    getPosition() - Method in interface com.technototes.library.hardware.sensor.encoder.Encoder
    -
     
    -
    getPosition() - Method in class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    Get servo position
    -
    -
    getPosition() - Method in class com.technototes.library.subsystem.servo.ServoSubsystem
    -
    -
    Get subsystem servo position
    -
    -
    getPriority() - Method in class com.technototes.library.logger.entry.Entry
    -
    -
    Get Priority for the entry
    -
    -
    getProportion() - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    -
     
    -
    getRawVelocity() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    getRequirements() - Method in interface com.technototes.library.command.Command
    -
    -
    Return the subsystem requirements for this command
    -
    -
    getRightStick() - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Returns the right stick
    -
    -
    getRuntime() - Method in interface com.technototes.library.command.Command
    -
    -
    Return the amount of time since the command was first initialized
    -
    -
    getScale(double...) - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    -
    -
    This will give you a *positive* value to scale the value to such that - the largest value of the list will be |1| (negative or positive).
    -
    -
    getSeconds() - Method in class com.technototes.library.command.WaitCommand
    -
     
    -
    getSensorValue() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Get the encoder position value
    -
    -
    getSensorValue() - Method in class com.technototes.library.hardware.sensor.AnalogSensor
    -
     
    -
    getSensorValue() - Method in class com.technototes.library.hardware.sensor.encoder.ExternalEncoder
    -
    -
    Get the sensor value (relative to the assigned zero)
    -
    -
    getSensorValue() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    getSensorValue() - Method in interface com.technototes.library.hardware.Sensored
    -
    -
    Deprecated.
    -
    Get the sensor value
    -
    -
    getSensorValue() - Method in class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    getServo() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    getSpeed() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Gets the power set for the motor
    -
    -
    getSpeed() - Method in class com.technototes.library.hardware.motor.Motor
    -
    -
    Gets the power value for the motor
    -
    -
    getSpeed() - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    -
    -
    Override this one, I guess? Not sure how useful it is.
    -
    -
    getSpeed() - Method in class com.technototes.library.subsystem.motor.MotorSubsystem
    -
    -
    Get the speed of the motors in the subsystem
    -
    -
    getState() - Method in interface com.technototes.library.command.Command
    -
    -
    Return the command state: Probably don't use this
    -
    -
    getSuppliers() - Method in interface com.technototes.library.control.Binding
    -
     
    -
    getSuppliers() - Method in class com.technototes.library.control.CommandBinding
    -
     
    -
    getTargetPosition() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    getTargetTolerance() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    getTriggerThreshold() - Method in class com.technototes.library.control.AxisBase
    -
    -
    Gets the trigger threshold
    -
    -
    getUnit() - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor
    -
     
    -
    getUnit() - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor
    -
     
    -
    getUnit() - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor
    -
    -
    Deprecated.
    -
    Get the current distance unit
    -
    -
    getValue() - Method in class com.technototes.library.hardware.sensor.DigitalSensor
    -
    -
    Get the sensor value as a boolean
    -
    -
    getValue() - Method in class com.technototes.library.util.Integral
    -
    -
    Get the current accumulation
    -
    -
    getVelocity() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Get the power for the motor (Velocity, I guess?)
    -
    -
    getVersion() - Method in class com.technototes.library.hardware.DummyDevice
    -
     
    -
    getVersion() - Static method in class com.technototes.library.RobotLibrary
    -
    -
    Get library version
    -
    -
    getVolume() - Method in class com.technototes.library.hardware.Speaker
    -
    -
    Deprecated.
    -
    getXAxis() - Method in class com.technototes.library.control.GamepadDpad
    -
    -
    Return x axis double (treating dpad as stick)
    -
    -
    getXAxis() - Method in class com.technototes.library.control.GamepadStick
    -
     
    -
    getXAxis() - Method in interface com.technototes.library.control.Stick
    -
    -
    Return x axis double
    -
    -
    getXSupplier() - Method in interface com.technototes.library.control.Stick
    -
    -
    Return x axis supplier
    -
    -
    getYAxis() - Method in class com.technototes.library.control.GamepadDpad
    -
    -
    Return y axis double (treating dpad as stick)
    -
    -
    getYAxis() - Method in class com.technototes.library.control.GamepadStick
    -
     
    -
    getYAxis() - Method in interface com.technototes.library.control.Stick
    -
    -
    Return y axis double
    -
    -
    getYSupplier() - Method in interface com.technototes.library.control.Stick
    -
    -
    Return y axis supplier
    -
    -
    green() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    -
    -
    Get the RGB green of the sensor
    -
    -
    GREEN - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    gyroHeading() - Method in interface com.technototes.library.hardware.sensor.IGyro
    -
    -
    The heading (in default units)
    -
    -
    gyroHeading() - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Get gyro heading
    -
    -
    gyroHeading(AngleUnit) - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Get the gyro heading in the provided units
    -
    -
    gyroHeadingInDegrees() - Method in interface com.technototes.library.hardware.sensor.IGyro
    -
    -
    The heading (in degrees)
    -
    -
    gyroHeadingInDegrees() - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Gets the gyro heading in degrees
    -
    -
    gyroHeadingInRadians() - Method in interface com.technototes.library.hardware.sensor.IGyro
    -
    -
    The heading (in radians)
    -
    -
    gyroHeadingInRadians() - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Gets the gyro heading in radians
    -
    -
    gyroSupplier - Variable in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem
    -
    -
    Override this to get the gyroscope heading.
    -
    -
    -

    H

    -
    -
    HardwareBuilder<T> - Class in com.technototes.library.hardware2
    -
    -
    TODO: Remove this.
    -
    -
    HardwareBuilder(int) - Constructor for class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    HardwareBuilder(String) - Constructor for class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    HardwareBuilder(T) - Constructor for class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    HardwareDevice<T extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in com.technototes.library.hardware
    -
    -
    Deprecated.
    -
    -
    HardwareDevice(String) - Constructor for class com.technototes.library.hardware.HardwareDevice
    -
    -
    Deprecated.
    -
    Make a hardware device with the string to get from hardwaremap
    -
    -
    HardwareDevice(T) - Constructor for class com.technototes.library.hardware.HardwareDevice
    -
    -
    Deprecated.
    -
    Make a hardware device
    -
    -
    HardwareDeviceGroup<T extends HardwareDevice> - Interface in com.technototes.library.hardware
    -
    -
    Deprecated.
    -
    -
    hardwareMap - Variable in class com.technototes.library.structure.CommandOpMode
    -
     
    -
    hardwareMap - Static variable in class com.technototes.library.hardware.HardwareDevice
    -
    -
    Deprecated.
    -
    Hardware map object for stuff
    -
    -
    hsv() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    -
    -
    Get HSV as an int
    -
    -
    hsvArray() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    -
     
    -
    hue() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    -
    -
    Get HSV hue
    -
    -
    -

    I

    -
    -
    IColorSensor - Interface in com.technototes.library.hardware.sensor
    -
     
    -
    IDistanceSensor - Interface in com.technototes.library.hardware.sensor
    -
     
    -
    idle(DcMotor.ZeroPowerBehavior) - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    ignoreCancel() - Method in class com.technototes.library.command.CommandGroup
    -
    -
    Specify that this CommandGroup should NOT count cancellation as 'completed'
    -
    -
    IGyro - Interface in com.technototes.library.hardware.sensor
    -
    -
    An interface for a single-angle gyroscope
    -
    -
    ILightSensor - Interface in com.technototes.library.hardware.sensor
    -
     
    -
    imu(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    IMU - Class in com.technototes.library.hardware.sensor
    -
    -
    Class for the IMU (Inertial Movement Units) that implements the IGyro interface
    -
    -
    IMU(IMU, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection) - Constructor for class com.technototes.library.hardware.sensor.IMU
    -
    -
    Make an imu
    -
    -
    IMU(IMU, IMU.Parameters) - Constructor for class com.technototes.library.hardware.sensor.IMU
    -
    -
    Make an imu
    -
    -
    IMU(String, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection) - Constructor for class com.technototes.library.hardware.sensor.IMU
    -
    -
    Make an imu
    -
    -
    IMU(String, IMU.Parameters) - Constructor for class com.technototes.library.hardware.sensor.IMU
    -
    -
    Make an imu
    -
    -
    IMU.AxesSigns - Enum Class in com.technototes.library.hardware.sensor
    -
    -
    The direction of the axes signs when remapping the axes
    -
    -
    IMUBuilder - Class in com.technototes.library.hardware2
    -
    -
    TODO: Remove this.
    -
    -
    IMUBuilder(BNO055IMUImpl) - Constructor for class com.technototes.library.hardware2.IMUBuilder
    -
    -
    Deprecated
    -
    -
    IMUBuilder(String) - Constructor for class com.technototes.library.hardware2.IMUBuilder
    -
    -
    deprecated
    -
    -
    IMUBuilder.AxesSigns - Enum Class in com.technototes.library.hardware2
    -
    -
    This is duplicated in the IMU class
    -
    -
    incrementPosition(double) - Method in class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    index() - Element in annotation interface com.technototes.library.logger.Log.Boolean
    -
    -
    Store index for this annotation (position in telemetry)
    -
    -
    index() - Element in annotation interface com.technototes.library.logger.Log
    -
    -
    Store index for this annotation (position in telemetry)
    -
    -
    index() - Element in annotation interface com.technototes.library.logger.Log.Number
    -
    -
    Store index for this annotation (position in telemetry)
    -
    -
    INIT - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    -
     
    -
    initEntries - Variable in class com.technototes.library.logger.Logger
    -
     
    -
    initialize() - Method in interface com.technototes.library.command.Command
    -
    -
    Init the command
    -
    -
    initialize() - Method in class com.technototes.library.command.CommandGroup
    -
    -
    Mark all commands in the group as not yet run
    -
    -
    initialize(IMU.Parameters) - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Initialize the IMU
    -
    -
    INITIALIZING - Enum constant in enum class com.technototes.library.command.Command.CommandState
    -
    -
    The command is initializing after having been triggered
    -
    -
    initLoop() - Method in class com.technototes.library.structure.CommandOpMode
    -
    -
    Runs constantly when op mode is initialized, yet not started
    -
    -
    initMap(HardwareMap) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    initUpdate() - Method in class com.technototes.library.logger.Logger
    -
    -
    Update the logged init items in temeletry
    -
    -
    input() - Method in class com.technototes.library.hardware2.DigitalBuilder
    -
    -
    Don't use this in the future
    -
    -
    inRange(double) - Method in class com.technototes.library.util.Range
    -
    -
    Check if the value is in the range
    -
    -
    Integral - Class in com.technototes.library.util
    -
    -
    A simple Observation-based integral calculator over time
    -
    -
    Integral() - Constructor for class com.technototes.library.util.Integral
    -
    -
    Initialize it with a value of 0
    -
    -
    Integral(double) - Constructor for class com.technototes.library.util.Integral
    -
    -
    Initialize it with the value c
    -
    -
    INTERRUPTED - Enum constant in enum class com.technototes.library.command.Command.CommandState
    -
    -
    The command is pending cancellation (but has not yet processed the cancellation)
    -
    -
    invert() - Method in interface com.technototes.library.general.Invertable
    -
    -
    Toggle inversion
    -
    -
    invert() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Invert the motor (toggle inversion)
    -
    -
    invert() - Method in class com.technototes.library.hardware.motor.Motor
    -
    -
    Invert the motor (toggle inversion)
    -
    -
    invert() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    Invertable<T extends Invertable<T>> - Interface in com.technototes.library.general
    -
    -
    Interface for anything that can be inverted
    -
    -
    isAtPosition(double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Is the motor at the specified position
    -
    -
    isAtTarget() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    isCancelled() - Method in interface com.technototes.library.command.Command
    -
    -
    Exactly what it says
    -
    -
    isDisabled() - Method in interface com.technototes.library.general.Enablable
    -
     
    -
    isEnabled() - Method in class com.technototes.library.control.ButtonBase
    -
     
    -
    isEnabled() - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Is the gamepad (and all bound commands from it!) enabled?
    -
    -
    isEnabled() - Method in class com.technototes.library.control.GamepadDpad
    -
     
    -
    isEnabled() - Method in class com.technototes.library.control.GamepadStick
    -
     
    -
    isEnabled() - Method in interface com.technototes.library.general.Enablable
    -
     
    -
    isFinished() - Method in interface com.technototes.library.command.Command
    -
    -
    Return if the command is finished
    -
    -
    isFinished() - Method in class com.technototes.library.command.CommandBase
    -
    -
    Deprecated.
    -
    Is this command finished
    -
    -
    isFinished() - Method in class com.technototes.library.command.CommandGroup
    -
    -
    MUST IMPLEMENT IN SUBCLASSES:
    -
    -
    isFinished() - Method in class com.technototes.library.command.ConditionalCommand
    -
     
    -
    isFinished() - Method in class com.technototes.library.command.ParallelCommandGroup
    -
     
    -
    isFinished() - Method in class com.technototes.library.command.ParallelDeadlineGroup
    -
     
    -
    isFinished() - Method in class com.technototes.library.command.ParallelRaceGroup
    -
    -
    Is this finished?
    -
    -
    isFinished() - Method in class com.technototes.library.command.SequentialCommandGroup
    -
    -
    Returns if all the commands are finished
    -
    -
    isFinished() - Method in class com.technototes.library.command.WaitCommand
    -
     
    -
    isInverseToggled() - Method in class com.technototes.library.control.ButtonBase
    -
    -
    Returns if the button is untoggled
    -
    -
    isJustInverseToggled() - Method in class com.technototes.library.control.ButtonBase
    -
    -
    Returns if the button is just untoggled
    -
    -
    isJustPressed() - Method in class com.technototes.library.control.ButtonBase
    -
    -
    Returns if the button is just pressed
    -
    -
    isJustReleased() - Method in class com.technototes.library.control.ButtonBase
    -
    -
    Returns if the button is just released
    -
    -
    isJustToggled() - Method in class com.technototes.library.control.ButtonBase
    -
    -
    Returns if the button is just toggled
    -
    -
    isPreRelease() - Static method in class com.technototes.library.RobotLibrary
    -
    -
    Get if the library is a pre release
    -
    -
    isPressed() - Method in class com.technototes.library.control.ButtonBase
    -
    -
    Returns if the button is pressed
    -
    -
    isPrime(int) - Static method in class com.technototes.library.util.MathUtils
    -
    -
    Calculate if the supplied number is prime
    -
    -
    isReleased() - Method in class com.technototes.library.control.ButtonBase
    -
    -
    Returns if the button is released
    -
    -
    isRumbling() - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Is the gamepad rumbling
    -
    -
    isRunning() - Method in interface com.technototes.library.command.Command
    -
    -
    Is the command in some state of running/started/finished/cancelled
    -
    -
    isState(CommandOpMode.OpModeState...) - Method in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    -
    -
    Check if other states are this state
    -
    -
    isToggled() - Method in class com.technototes.library.control.ButtonBase
    -
    -
    Returns if the button is toggled
    -
    -
    IterativeCommand - Class in com.technototes.library.command
    -
     
    -
    IterativeCommand(Function<Integer, Command>, int) - Constructor for class com.technototes.library.command.IterativeCommand
    -
    -
    iterative command for an int
    -
    -
    IterativeCommand(Function<Integer, Command>, int, BooleanSupplier) - Constructor for class com.technototes.library.command.IterativeCommand
    -
     
    -
    IterativeCommand(Function<Integer, Command>, BooleanSupplier) - Constructor for class com.technototes.library.command.IterativeCommand
    -
     
    -
    IterativeCommand(Function<T, Command>, T, T, Function<T, T>) - Constructor for class com.technototes.library.command.IterativeCommand
    -
    -
    iterative command for anything
    -
    -
    IterativeCommand(Function<T, Command>, T, T, Function<T, T>, BooleanSupplier) - Constructor for class com.technototes.library.command.IterativeCommand
    -
     
    -
    -

    J

    -
    -
    joystickDrive(double, double, double) - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    -
     
    -
    joystickDriveWithGyro(double, double, double, double) - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    -
     
    -
    justFinished() - Method in interface com.technototes.library.command.Command
    -
    -
    Is this command finished?
    -
    -
    justFinishedNoCancel() - Method in interface com.technototes.library.command.Command
    -
    -
    Is this command completed?
    -
    -
    justStarted() - Method in interface com.technototes.library.command.Command
    -
    -
    Has the command just be started?
    -
    -
    -

    L

    -
    -
    lastCommand - Variable in class com.technototes.library.command.SequentialCommandGroup
    -
     
    -
    led(boolean) - Method in class com.technototes.library.hardware2.ColorRangeBuilder
    -
     
    -
    left - Variable in class com.technototes.library.control.GamepadDpad
    -
    -
    The objects for the dpad buttons
    -
    -
    LEFT_BUMPER - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    Left bumper button
    -
    -
    LEFT_STICK_BUTTON - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    Button when clicking the left stick
    -
    -
    LEFT_STICK_X - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    -
    -
    Left stick's horizontal axis
    -
    -
    LEFT_STICK_Y - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    -
    -
    Left stick's vertical axis
    -
    -
    LEFT_TRIGGER - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    -
    -
    Left Trigger's axis
    -
    -
    leftBumper - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    leftSide - Variable in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    -
    -
    Drive motors
    -
    -
    leftStick - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The stick objects
    -
    -
    leftStickButton - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    leftStickX - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The axis objects
    -
    -
    leftStickY - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The axis objects
    -
    -
    leftTrigger - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The axis objects
    -
    -
    LIGHT_GRAY - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    LIME - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    Log - Annotation Interface in com.technototes.library.logger
    -
    -
    The root annotation for annotation logging, also doubles as a basic string log
    -
    -
    Log.Boolean - Annotation Interface in com.technototes.library.logger
    -
     
    -
    Log.Logs - Annotation Interface in com.technototes.library.logger
    -
     
    -
    Log.Number - Annotation Interface in com.technototes.library.logger
    -
    -
    Log a number
    -
    -
    LogConfig - Annotation Interface in com.technototes.library.logger
    -
    -
    Annotations for configuring Logs
    -
    -
    LogConfig.AllowList - Annotation Interface in com.technototes.library.logger
    -
    -
    Annotation for allowing Opmodes to log this item
    -
    -
    LogConfig.DenyList - Annotation Interface in com.technototes.library.logger
    -
    -
    Annotation for denying Opmodes to log this item
    -
    -
    LogConfig.Disabled - Annotation Interface in com.technototes.library.logger
    -
    -
    Annotation to completely disable the entry
    -
    -
    LogConfig.Run - Annotation Interface in com.technototes.library.logger
    -
    -
    Annotation for determining when logged item will be sent to Telemetry
    -
    -
    Loggable - Interface in com.technototes.library.logger
    -
    -
    All classes with annotations for logging must extend this all the way up the hierarchy up to the op mode
    -
    -
    Logger - Class in com.technototes.library.logger
    -
    -
    The class to manage logging
    -
    -
    Logger(OpMode) - Constructor for class com.technototes.library.logger.Logger
    -
    -
    Instantiate the logger
    -
    -
    -

    M

    -
    -
    MAGENTA - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    map - Static variable in interface com.technototes.library.util.SmartConsumer
    -
    -
    The map of values that have been consumed.
    -
    -
    map(double, double, double, double, double) - Static method in class com.technototes.library.util.MathUtils
    -
    -
    Scale a value originally between in_min and in_max to be the same ratio when mapped to - out_min and out_max.
    -
    -
    MapUtils - Class in com.technototes.library.util
    -
     
    -
    MapUtils() - Constructor for class com.technototes.library.util.MapUtils
    -
     
    -
    MathUtils - Class in com.technototes.library.util
    -
    -
    Class with various math functions
    -
    -
    MathUtils() - Constructor for class com.technototes.library.util.MathUtils
    -
     
    -
    max - Variable in class com.technototes.library.util.Range
    -
    -
    The maximum value of the range
    -
    -
    maxAcceleration - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    -
     
    -
    maxSpeed - Variable in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem
    -
    -
    Max speed
    -
    -
    maxVelocity - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    -
     
    -
    middle() - Method in class com.technototes.library.util.Range
    -
    -
    Get the 'middle' of the range
    -
    -
    min - Variable in class com.technototes.library.util.Range
    -
    -
    The minimum value of the range
    -
    -
    mode(DcMotor.RunMode) - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    mode(DigitalChannel.Mode) - Method in class com.technototes.library.hardware2.DigitalBuilder
    -
    -
    Don't use this in the future
    -
    -
    motor(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    motor(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    Motor<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.hardware.motor
    -
    -
    Class for motors
    -
    -
    Motor(String) - Constructor for class com.technototes.library.hardware.motor.Motor
    -
    -
    Create a motor
    -
    -
    Motor(T) - Constructor for class com.technototes.library.hardware.motor.Motor
    -
    -
    Create a motor
    -
    -
    MotorBuilder - Class in com.technototes.library.hardware2
    -
    -
    TODO: Remove this.
    -
    -
    MotorBuilder(int) - Constructor for class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    MotorBuilder(DcMotorEx) - Constructor for class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    MotorBuilder(String) - Constructor for class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    MotorEncoder - Class in com.technototes.library.hardware.sensor.encoder
    -
    -
    Wraps a motor instance to provide corrected velocity counts and allow reversing independently of the corresponding - slot's motor direction
    -
    -
    MotorEncoder(DcMotorEx) - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    MotorEncoder(DcMotorEx, ElapsedTime) - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    MotorEncoder(EncodedMotor<DcMotorEx>) - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    MotorEncoder(String) - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    MotorEncoder.Direction - Enum Class in com.technototes.library.hardware.sensor.encoder
    -
     
    -
    MotorGroup<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.hardware.motor
    -
    -
    Class for a group of motors
    -
    -
    MotorGroup(Motor<T>...) - Constructor for class com.technototes.library.hardware.motor.MotorGroup
    -
    -
    Make a motor group
    -
    -
    MotorSubsystem<T extends Motor<?>> - Class in com.technototes.library.subsystem.motor
    -
    -
    Class for motor subsystems
    -
    -
    MotorSubsystem(T) - Constructor for class com.technototes.library.subsystem.motor.MotorSubsystem
    -
    -
    Create motor subsystem
    -
    -
    MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED - Static variable in class com.technototes.library.structure.CommandOpMode
    -
     
    -
    msStuckDetectStop - Variable in class com.technototes.library.structure.CommandOpMode
    -
    -
    Deprecated.
    -
    -
    -

    N

    -
    -
    name - Variable in class com.technototes.library.logger.entry.Entry
    -
    -
    The name of the Entry
    -
    -
    name() - Element in annotation interface com.technototes.library.logger.Log.Boolean
    -
    -
    Store the name for this annotation to be be beside
    -
    -
    name() - Element in annotation interface com.technototes.library.logger.Log
    -
    -
    Store the name for this annotation to be be beside
    -
    -
    name() - Element in annotation interface com.technototes.library.logger.Log.Number
    -
    -
    Store the name for this annotation to be be beside
    -
    -
    NEUTRAL - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority
    -
     
    -
    NNN - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    -
    -
    Negative, Negative, Negative
    -
    -
    NNN - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    -
    -
    deprecated
    -
    -
    NNP - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    -
    -
    Negative, Negative, Positive
    -
    -
    NNP - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    -
    -
    deprecated
    -
    -
    NO_COLOR - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    NONE - Enum constant in enum class com.technototes.library.util.Alliance
    -
    -
    NO ALLIANCE SELECTED
    -
    -
    NONE_ACTIVE - Enum constant in enum class com.technototes.library.control.Binding.Type
    -
     
    -
    NPN - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    -
    -
    Negative, Positive, Negative
    -
    -
    NPN - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    -
    -
    deprecated
    -
    -
    NPP - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    -
    -
    Negative, Positive, Positive
    -
    -
    NPP - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    -
    -
    deprecated
    -
    -
    numberColor - Variable in class com.technototes.library.logger.entry.NumberEntry
    -
     
    -
    NumberEntry - Class in com.technototes.library.logger.entry
    -
     
    -
    NumberEntry(String, Supplier<Number>, int) - Constructor for class com.technototes.library.logger.entry.NumberEntry
    -
     
    -
    -

    O

    -
    -
    of(Pair<T, U>...) - Static method in class com.technototes.library.util.MapUtils
    -
     
    -
    of(T, T) - Static method in class com.technototes.library.util.Alliance.Selector
    -
    -
    Selector factory method
    -
    -
    offset - Variable in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    onlyIf(BooleanSupplier) - Method in interface com.technototes.library.command.Command
    -
    -
    Runs this command only if the choiceCondition is met (i.e.
    -
    -
    onRange(double, double) - Method in class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    Set servo range
    -
    -
    onUnit(DistanceUnit) - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor
    -
     
    -
    onUnit(DistanceUnit) - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor
    -
     
    -
    onUnit(DistanceUnit) - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor
    -
    -
    Deprecated.
    -
    Set the distance unit
    -
    -
    ORANGE - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    output() - Method in class com.technototes.library.hardware2.DigitalBuilder
    -
    -
    Don't use this in the future
    -
    -
    -

    P

    -
    -
    ParallelCommandGroup - Class in com.technototes.library.command
    -
    -
    Command group to run commands in parallel until all of them finish
    -
    -
    ParallelCommandGroup(Command...) - Constructor for class com.technototes.library.command.ParallelCommandGroup
    -
    -
    Make parallel command group
    -
    -
    ParallelDeadlineGroup - Class in com.technototes.library.command
    -
    -
    Command group to run commands in parallel until one particular command completes
    -
    -
    ParallelDeadlineGroup(Command, Command...) - Constructor for class com.technototes.library.command.ParallelDeadlineGroup
    -
    -
    Make parallel deadline group
    -
    -
    ParallelRaceGroup - Class in com.technototes.library.command
    -
    -
    Command group to run commands in parallel until *one* is finished
    -
    -
    ParallelRaceGroup(Command...) - Constructor for class com.technototes.library.command.ParallelRaceGroup
    -
    -
    Make parallel race group
    -
    -
    parameter(Consumer<BNO055IMU.Parameters>) - Method in class com.technototes.library.hardware2.IMUBuilder
    -
    -
    Deprecated
    -
    -
    periodic() - Method in class com.technototes.library.control.ButtonBase
    -
     
    -
    periodic() - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Run the periodic functions for the controller (if the controller is enabled)
    -
    -
    periodic() - Method in class com.technototes.library.control.GamepadDpad
    -
     
    -
    periodic() - Method in class com.technototes.library.control.GamepadStick
    -
     
    -
    periodic() - Method in interface com.technototes.library.general.Periodic
    -
    -
    The periodic function
    -
    -
    periodic() - Method in class com.technototes.library.subsystem.DeviceSubsystem
    -
     
    -
    periodic() - Method in interface com.technototes.library.subsystem.Subsystem
    -
     
    -
    Periodic - Interface in com.technototes.library.general
    -
    -
    An interface for classes to have the periodic function
    -
    -
    PINK - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    PNN - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    -
    -
    Positive, Negative, Negative
    -
    -
    PNN - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    -
    -
    deprecated
    -
    -
    PNP - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    -
    -
    Positive, Negative, Positive
    -
    -
    PNP - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    -
    -
    deprecated
    -
    -
    position(double) - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    positionThreshold - Variable in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Deadzone for going to positions with encoder
    -
    -
    PPN - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    -
    -
    Positive, Positive, Negative
    -
    -
    PPN - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    -
    -
    deprecated
    -
    -
    PPP - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    -
    -
    Positive, Positive, Positive
    -
    -
    PPP - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    -
    -
    deprecated
    -
    -
    priority - Variable in class com.technototes.library.logger.entry.Entry
    -
    -
    The priority (in the telemetry list) of the entry
    -
    -
    priority() - Element in annotation interface com.technototes.library.logger.Log.Boolean
    -
    -
    Store priority for this log entry (to pick the most wanted entry over others with same index)
    -
    -
    priority() - Element in annotation interface com.technototes.library.logger.Log.Number
    -
    -
    Store priority for this log entry (to pick the most wanted entry over others with same index)
    -
    -
    priority() - Element in annotation interface com.technototes.library.logger.Log
    -
    -
    Store priority for this log entry (to pick the most wanted entry over others with same index)
    -
    -
    product - Variable in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    propagate(double) - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    -
    -
    Deprecated.
    -
    Propagate actions across the followers
    -
    -
    propogate(double) - Method in interface com.technototes.library.hardware.HardwareDeviceGroup
    -
    -
    Deprecated.
    -
    -
    propogate(double) - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup
    -
     
    -
    propogate(double) - Method in class com.technototes.library.hardware.motor.MotorGroup
    -
     
    -
    propogate(double) - Method in class com.technototes.library.hardware.servo.ServoGroup
    -
    -
    Deprecated.
    -
    proportion - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints
    -
     
    -
    ps_circle - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the PS4 game controller
    -
    -
    PS_CIRCLE - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    PS4 Circle (O) button
    -
    -
    ps_cross - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the PS4 game controller
    -
    -
    PS_CROSS - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    PS4 Cross (X) button
    -
    -
    ps_options - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the PS4 game controller
    -
    -
    PS_OPTIONS - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    PS4 Options button
    -
    -
    ps_share - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the PS4 game controller
    -
    -
    PS_SHARE - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    PS4 Share button
    -
    -
    ps_square - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the PS4 game controller
    -
    -
    PS_SQUARE - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    PS4 Square button
    -
    -
    ps_triangle - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the PS4 game controller
    -
    -
    PS_TRIANGLE - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    PS4 Triangle button
    -
    -
    PURPLE - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    pwmRange(double, double) - Method in class com.technototes.library.hardware2.ServoBuilder
    -
     
    -
    pythag(double...) - Static method in class com.technototes.library.util.MathUtils
    -
    -
    Calculate pythagorean theorem of any number of sides
    -
    -
    -

    R

    -
    -
    raceWith(Command...) - Method in interface com.technototes.library.command.Command
    -
    -
    Runs all the commands in parallel (including this command) until one of them finishes
    -
    -
    radians() - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Set angle format to radians
    -
    -
    radians() - Method in class com.technototes.library.hardware2.IMUBuilder
    -
    -
    Deprecated
    -
    -
    range(double, double) - Method in class com.technototes.library.hardware2.ServoBuilder
    -
     
    -
    Range - Class in com.technototes.library.util
    -
    -
    Helper class for tracking a range
    -
    -
    Range(double, double) - Constructor for class com.technototes.library.util.Range
    -
    -
    Create a range with the given minimum and maximum
    -
    -
    raw() - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    red() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    -
    -
    Get the RGB red of the sensor
    -
    -
    RED - Enum constant in enum class com.technototes.library.util.Alliance
    -
    -
    RED alliance selector
    -
    -
    RED - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    RED_SQUARE - Static variable in class com.technototes.library.util.Characters
    -
     
    -
    register() - Method in interface com.technototes.library.subsystem.Subsystem
    -
     
    -
    register(Periodic) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Register a periodic function to be run once each schedule loop
    -
    -
    remap(AxesOrder, IMUBuilder.AxesSigns) - Method in class com.technototes.library.hardware2.IMUBuilder
    -
    -
    Deprecated
    -
    -
    remapAxesAndSigns(AxesOrder, IMU.AxesSigns) - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Remaps the axes for the IMU in the order and sign provided.
    -
    -
    remapLegacyAxes(AxesOrder, IMU.AxesSigns) - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Remaps the axes for the BNO055 IMU in the order and sign provided - The SDK 8.1.1 added a new IMU class, which (delightfully) rotated - the X and Y axes around the Z axis by 90 degrees clock-wise (viewed from above) - If you have code that was using that layout, this is what you probably need to call.
    -
    -
    repeat(String, int) - Static method in class com.technototes.library.logger.Logger
    -
    -
    Repeat a String
    -
    -
    requestOpModeStop() - Method in class com.technototes.library.structure.CommandOpMode
    -
     
    -
    requirementMap - Static variable in interface com.technototes.library.command.Command
    -
    -
    The Command to Required Subsystems lookup
    -
    -
    reset() - Static method in interface com.technototes.library.util.SmartConsumer
    -
     
    -
    RESET - Enum constant in enum class com.technototes.library.command.Command.CommandState
    -
    -
    The command has just be scheduled
    -
    -
    resetDeviceConfigurationForOpMode() - Method in class com.technototes.library.hardware.DummyDevice
    -
     
    -
    resetScheduler() - Static method in class com.technototes.library.command.CommandScheduler
    -
    -
    Alex had a comment "be careful with this" and he's not wrong.
    -
    -
    Rev2MDistanceSensor - Class in com.technototes.library.hardware.sensor
    -
    -
    Deprecated.
    -
    -
    Rev2MDistanceSensor(DistanceSensor) - Constructor for class com.technototes.library.hardware.sensor.Rev2MDistanceSensor
    -
    -
    Deprecated.
    -
    Create a range sensor
    -
    -
    Rev2MDistanceSensor(String) - Constructor for class com.technototes.library.hardware.sensor.Rev2MDistanceSensor
    -
    -
    Deprecated.
    -
    Create a range sensor
    -
    -
    reverse() - Method in class com.technototes.library.hardware2.CRServoBuilder
    -
     
    -
    reverse() - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    reverse() - Method in class com.technototes.library.hardware2.ServoBuilder
    -
     
    -
    REVERSE - Enum constant in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction
    -
     
    -
    rgb() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    -
     
    -
    right - Variable in class com.technototes.library.control.GamepadDpad
    -
    -
    The objects for the dpad buttons
    -
    -
    RIGHT_BUMPER - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    Right bumper button
    -
    -
    RIGHT_STICK_BUTTON - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    Button which clicking the right stick
    -
    -
    RIGHT_STICK_X - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    -
    -
    Right stick's horizontal axis
    -
    -
    RIGHT_STICK_Y - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    -
    -
    Right stick's vertical axis
    -
    -
    RIGHT_TRIGGER - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis
    -
    -
    Right Trigger's axis
    -
    -
    rightBumper - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    rightSide - Variable in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    -
    -
    Drive motors
    -
    -
    rightStick - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The stick objects
    -
    -
    rightStickButton - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for both the XBox and PS4 controllers
    -
    -
    rightStickX - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The axis objects
    -
    -
    rightStickY - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The axis objects
    -
    -
    rightTrigger - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The axis objects
    -
    -
    rlMotor - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    -
    -
    Drive motors
    -
    -
    RobotLibrary - Class in com.technototes.library
    -
    -
    Root class for the Robot Library (I will put important stuff here)
    -
    -
    RobotLibrary() - Constructor for class com.technototes.library.RobotLibrary
    -
     
    -
    rrMotor - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    -
    -
    Drive motors
    -
    -
    rumble() - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Rumble for about 1/8th of a second
    -
    -
    rumble(double) - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Rumble the gamepad for 'seconds'
    -
    -
    rumbleBlip() - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Run a single "RumbleBlip"
    -
    -
    rumbleBlips(int) - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Run a bunch of "RumbleBlips"
    -
    -
    run() - Method in interface com.technototes.library.command.Command
    -
    -
    Run the commmand
    -
    -
    run() - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    This is invoked from inside the CommandOpMode method, during the opCode.
    -
    -
    RUN - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    -
     
    -
    runEntries - Variable in class com.technototes.library.logger.Logger
    -
     
    -
    runLoop() - Method in class com.technototes.library.structure.CommandOpMode
    -
    -
    Runs constantly when op mode is started
    -
    -
    runOpMode() - Method in class com.technototes.library.structure.CommandOpMode
    -
     
    -
    runUpdate() - Method in class com.technototes.library.logger.Logger
    -
    -
    Update the logged run items in temeletry
    -
    -
    -

    S

    -
    -
    saturation() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    -
    -
    Get HSV saturation
    -
    -
    scale(double) - Method in class com.technototes.library.util.Range
    -
    -
    Scale the range by a given value
    -
    -
    scalePWM(double, double) - Method in class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    schedule(Command) - Method in class com.technototes.library.command.CommandGroup
    -
    -
    This should schedule the command as part of this command group, I think.
    -
    -
    schedule(Command) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule a command to run
    -
    -
    schedule(Command) - Method in class com.technototes.library.command.ParallelCommandGroup
    -
     
    -
    schedule(Command) - Method in class com.technototes.library.command.ParallelDeadlineGroup
    -
    -
    Add another command to the group to be run while waiting for the 'deadline' command to finish
    -
    -
    schedule(Command) - Method in class com.technototes.library.command.ParallelRaceGroup
    -
    -
    Add one more command to the list of commands that will be run at the same time
    -
    -
    schedule(Command) - Method in class com.technototes.library.command.SequentialCommandGroup
    -
    -
    This allows you to append another command to the Sequential Command Group
    -
    -
    schedule(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule the command to run
    -
    -
    schedule(Command, BooleanSupplier) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Register a command to be scheduled.
    -
    -
    schedule(BooleanSupplier, Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule the command to run over & over
    -
    -
    schedule(Consumer<Boolean>) - Method in class com.technototes.library.control.CommandButton
    -
     
    -
    schedule(Function<Boolean, Command>) - Method in class com.technototes.library.control.CommandButton
    -
     
    -
    schedule(Function<Double, Command>) - Method in class com.technototes.library.control.CommandAxis
    -
     
    -
    scheduleAfterOther(Command, Command) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule the 'other' command (the second one) when the 'dependency' command has - finished (but *not* been cancelled!).
    -
    -
    scheduleAfterOther(Command, Command, BooleanSupplier) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule the 'other' command (the second one) when the 'dependency' command has - finished (but *not* been cancelled!) *and* 'additionalCondition' is true.
    -
    -
    scheduleDefault(Command, Subsystem) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule the default command for a given subsystem.
    -
    -
    scheduleDpad(BiConsumer<Double, Double>) - Method in class com.technototes.library.control.CommandGamepad
    -
     
    -
    scheduleDpad(BiFunction<Double, Double, Command>) - Method in class com.technototes.library.control.CommandGamepad
    -
     
    -
    scheduleForState(Command, CommandOpMode.OpModeState...) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule a command to be run when the OpMode is one of the provided list of states.
    -
    -
    scheduleForState(Command, BooleanSupplier, CommandOpMode.OpModeState...) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule a command to be run when the OpMode is one of the provided list of states and the - 'supplier' boolean function is also true.
    -
    -
    scheduleInit(Command) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule a command to be run recurringly during the 'Init' phase of an opmode.
    -
    -
    scheduleInit(Command, BooleanSupplier) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule a command to be run recurringly during the 'Init' phase of an opmode.
    -
    -
    scheduleJoystick(Command) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedules a command to be run during Run and End states, all the time.
    -
    -
    scheduleJoystick(Command, BooleanSupplier) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedules a command to be run during Run and End states, all the time.
    -
    -
    scheduleLeftStick(BiConsumer<Double, Double>) - Method in class com.technototes.library.control.CommandGamepad
    -
     
    -
    scheduleLeftStick(BiFunction<Double, Double, Command>) - Method in class com.technototes.library.control.CommandGamepad
    -
     
    -
    scheduleOnce(Command) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule a command to run
    -
    -
    scheduleOnceForState(Command, CommandOpMode.OpModeState) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule a command to run during a particular OpModeState
    -
    -
    schedulePressed(Function<DoubleSupplier, Command>) - Method in class com.technototes.library.control.CommandAxis
    -
     
    -
    scheduleRightStick(BiConsumer<Double, Double>) - Method in class com.technototes.library.control.CommandGamepad
    -
     
    -
    scheduleRightStick(BiFunction<Double, Double, Command>) - Method in class com.technototes.library.control.CommandGamepad
    -
     
    -
    scheduleStick(Stick, BiConsumer<Double, Double>) - Method in class com.technototes.library.control.CommandGamepad
    -
     
    -
    scheduleStick(Stick, BiFunction<Double, Double, Command>) - Method in class com.technototes.library.control.CommandGamepad
    -
     
    -
    scheduleWithOther(Command, Command) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule the 'other' command (the second one) when the 'dependency' command has - just started.
    -
    -
    scheduleWithOther(Command, Command, BooleanSupplier) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Schedule the 'other' command (the second one) when the 'dependency' command has - just started *and* 'additionalCondition' is also true.
    -
    -
    select(Alliance) - Method in class com.technototes.library.util.Alliance.Selector
    -
    -
    Select the red or blue item based on the Alliance
    -
    -
    selectOf(Alliance, T, T) - Static method in class com.technototes.library.util.Alliance.Selector
    -
    -
    Based on Alliance, choose red or blue
    -
    -
    selectOf(T, T) - Method in enum class com.technototes.library.util.Alliance
    -
    -
    Select either 'a' or 'b' depending on alliance
    -
    -
    Selector(T, T) - Constructor for class com.technototes.library.util.Alliance.Selector
    -
    -
    Create a Selelector for red/blue
    -
    -
    Sensor<T extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in com.technototes.library.hardware.sensor
    -
    -
    Deprecated.
    -
    -
    Sensor(String) - Constructor for class com.technototes.library.hardware.sensor.Sensor
    -
    -
    Deprecated.
    -
    Create sensor
    -
    -
    Sensor(T) - Constructor for class com.technototes.library.hardware.sensor.Sensor
    -
    -
    Deprecated.
    -
    Create a sensor
    -
    -
    Sensored - Interface in com.technototes.library.hardware
    -
    -
    Deprecated.
    -
    -
    SequentialCommandGroup - Class in com.technototes.library.command
    -
    -
    A grouping command which runs a list of commands in sequence
    -
    -
    SequentialCommandGroup(Command...) - Constructor for class com.technototes.library.command.SequentialCommandGroup
    -
    -
    Make sequential command group.
    -
    -
    servo(int) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    servo(String) - Static method in class com.technototes.library.hardware2.HardwareBuilder
    -
    -
    Deprecated
    -
    -
    Servo - Class in com.technototes.library.hardware.servo
    -
    -
    Deprecated.
    -
    -
    Servo(Servo) - Constructor for class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    Create servo object
    -
    -
    Servo(String) - Constructor for class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    Create servo object
    -
    -
    ServoBuilder - Class in com.technototes.library.hardware2
    -
    -
    TODO: Remove this.
    -
    -
    ServoBuilder(int) - Constructor for class com.technototes.library.hardware2.ServoBuilder
    -
     
    -
    ServoBuilder(Servo) - Constructor for class com.technototes.library.hardware2.ServoBuilder
    -
     
    -
    ServoBuilder(String) - Constructor for class com.technototes.library.hardware2.ServoBuilder
    -
     
    -
    ServoGroup - Class in com.technototes.library.hardware.servo
    -
    -
    Deprecated.
    -
    -
    ServoGroup(Servo...) - Constructor for class com.technototes.library.hardware.servo.ServoGroup
    -
    -
    Deprecated.
    -
    Create a servo group
    -
    -
    ServoProfiler - Class in com.technototes.library.hardware.servo
    -
     
    -
    ServoProfiler(Servo) - Constructor for class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    ServoProfiler.Constraints - Class in com.technototes.library.hardware.servo
    -
     
    -
    ServoSubsystem - Class in com.technototes.library.subsystem.servo
    -
    -
    Class for servo subsystems
    -
    -
    ServoSubsystem(Servo) - Constructor for class com.technototes.library.subsystem.servo.ServoSubsystem
    -
    -
    Create servo subsystem
    -
    -
    ServoSubsystem(Servo...) - Constructor for class com.technototes.library.subsystem.servo.ServoSubsystem
    -
     
    -
    set(double) - Method in class com.technototes.library.util.Integral
    -
    -
    Set the value to C
    -
    -
    setAverageOutput(double) - Method in class com.technototes.library.util.Differential
    -
    -
    Set the average of the differential.
    -
    -
    setConstraints(double, double, double) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    setConstraints(ServoProfiler.Constraints) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    setDefaultCommand(Command) - Method in interface com.technototes.library.subsystem.Subsystem
    -
     
    -
    setDeviationOutput(double) - Method in class com.technototes.library.util.Differential
    -
    -
    Set the deviation of the differential.
    -
    -
    setDirection(MotorEncoder.Direction) - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
    -
    Allows you to set the direction of the counts and velocity without modifying the motor's direction state
    -
    -
    setEnabled(boolean) - Method in class com.technototes.library.control.ButtonBase
    -
     
    -
    setEnabled(boolean) - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Enable/disable the gamepad (and all potentially bound commands!)
    -
    -
    setEnabled(boolean) - Method in class com.technototes.library.control.GamepadDpad
    -
     
    -
    setEnabled(boolean) - Method in class com.technototes.library.control.GamepadStick
    -
     
    -
    setEnabled(boolean) - Method in interface com.technototes.library.general.Enablable
    -
    -
    Set whether or not the device is enabled
    -
    -
    setEncoder(Encoder) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Explicitly set the encoder for the motor
    -
    -
    setHeading(double) - Method in interface com.technototes.library.hardware.sensor.IGyro
    -
    -
    Sets the current heading (in default units)
    -
    -
    setHeading(double) - Method in class com.technototes.library.hardware.sensor.IMU
    -
    -
    Sets the current heading to be 'new heading'
    -
    -
    setIndex(int) - Method in class com.technototes.library.logger.entry.Entry
    -
    -
    Set index
    -
    -
    setInverted(boolean) - Method in class com.technototes.library.control.ButtonBase
    -
     
    -
    setInverted(boolean) - Method in class com.technototes.library.control.CommandAxis
    -
     
    -
    setInverted(boolean) - Method in class com.technototes.library.control.CommandButton
    -
     
    -
    setInverted(boolean) - Method in interface com.technototes.library.general.Invertable
    -
    -
    Set the inversion (true -> Is inverted, false -> Not inverted)
    -
    -
    setInverted(boolean) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Set the Inverted state for the motor.
    -
    -
    setInverted(boolean) - Method in class com.technototes.library.hardware.motor.Motor
    -
    -
    Set the Inverted state for the motor.
    -
    -
    setInverted(boolean) - Method in class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    setLimits(double, double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
     
    -
    setLimits(double, double) - Method in class com.technototes.library.hardware.motor.Motor
    -
    -
    Sets the min & max values for the motor power (still clipped to -1/1)
    -
    -
    setLimits(double, double) - Method in class com.technototes.library.util.Differential
    -
    -
    Set the limits for the differential
    -
    -
    setMaxSpeed(double) - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem
    -
    -
    Set the max speed for the subsystem
    -
    -
    setOpMode(CommandOpMode) - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Set the scheduler's opmode
    -
    -
    setOutputs(double, double) - Method in class com.technototes.library.util.Differential
    -
    -
    Set both outputs for the differential
    -
    -
    setPIDFCoeffecients(double, double, double, double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Configure the PIDF constants for the motor
    -
    -
    setPIDFCoeffecients(PIDFCoefficients) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Configure the PIDF constants for the motor
    -
    -
    setPosition(double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Set the position of the motor
    -
    -
    setPosition(double) - Method in class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    Set servo position
    -
    -
    setPosition(double) - Method in class com.technototes.library.hardware.servo.ServoGroup
    -
    -
    Deprecated.
    -
    setPosition(double) - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem
    -
    -
    Set position for subsystem with existing max speed
    -
    -
    setPosition(double) - Method in class com.technototes.library.subsystem.servo.ServoSubsystem
    -
    -
    Set servo subsystem position
    -
    -
    setPosition(double, double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Set the power for the motor to try to get to the position specified.
    -
    -
    setPosition(double, double) - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup
    -
     
    -
    setPosition(double, double) - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem
    -
    -
    Set position for subsystem
    -
    -
    setPriority(int) - Method in class com.technototes.library.logger.entry.Entry
    -
    -
    Set's the priority for this log line (handy for telemetry overflow)
    -
    -
    setPriority(Differential.DifferentialPriority) - Method in class com.technototes.library.util.Differential
    -
    -
    Sets the priority for the differential.
    -
    -
    setRunMode(DcMotor.RunMode) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Set the runmode for the motor
    -
    -
    setServoRange(double) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    setSpeed(double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Sets the (clipped) speed for the motor
    -
    -
    setSpeed(double) - Method in class com.technototes.library.hardware.motor.Motor
    -
    -
    Set speed of motor
    -
    -
    setSpeed(double) - Method in class com.technototes.library.hardware.motor.MotorGroup
    -
     
    -
    setSpeed(double) - Method in class com.technototes.library.subsystem.motor.MotorSubsystem
    -
    -
    Set the speed of the primary motors in subsystem
    -
    -
    setState(Command.CommandState) - Method in interface com.technototes.library.command.Command
    -
    -
    Set the command state: DEFINITELY DO NOT USE THIS!
    -
    -
    setTargetPosition(double) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    setTargetTolerance(double) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    setTriggerThreshold(double) - Method in class com.technototes.library.control.AxisBase
    -
    -
    Set threshold
    -
    -
    setTriggerThreshold(double) - Method in class com.technototes.library.control.CommandAxis
    -
     
    -
    setVelocity(double) - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Set velocity of motor in tps
    -
    -
    setVelocity(double) - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup
    -
     
    -
    setVolume(float) - Method in class com.technototes.library.hardware.Speaker
    -
    -
    Deprecated.
    -
    SimpleMecanumDrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.subsystem.drivebase
    -
    -
    Class for mecanum/xdrive drivebases
    -
    -
    SimpleMecanumDrivebaseSubsystem(Motor<T>, Motor<T>, Motor<T>, Motor<T>) - Constructor for class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    -
    -
    Create mecanum drivebase
    -
    -
    SimpleMecanumDrivebaseSubsystem(DoubleSupplier, Motor<T>, Motor<T>, Motor<T>, Motor<T>) - Constructor for class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    -
    -
    Create mecanum drivebase
    -
    -
    sleep(double) - Method in interface com.technototes.library.command.Command
    -
    -
    Delay the command for some time
    -
    -
    sleep(DoubleSupplier) - Method in interface com.technototes.library.command.Command
    -
    -
    Delay the command for some time
    -
    -
    SmartConsumer<T> - Interface in com.technototes.library.util
    -
    -
    This is a functional interface, when 'accept' is invoked, will only invoke the 'consume' method - when a different value is provided.
    -
    -
    SOME_ACTIVE - Enum constant in enum class com.technototes.library.control.Binding.Type
    -
     
    -
    Speaker - Class in com.technototes.library.hardware
    -
    -
    Deprecated.
    -
    -
    Speaker(float, String...) - Constructor for class com.technototes.library.hardware.Speaker
    -
    -
    Deprecated.
    -
    Speaker(String...) - Constructor for class com.technototes.library.hardware.Speaker
    -
    -
    Deprecated.
    -
    start(String) - Method in class com.technototes.library.hardware.Speaker
    -
    -
    Deprecated.
    -
    startAt(double) - Method in class com.technototes.library.hardware.servo.Servo
    -
    -
    Deprecated.
    -
    Set position for the servo and return this
    -
    -
    startAt(double) - Method in class com.technototes.library.hardware.servo.ServoGroup
    -
    -
    Deprecated.
    -
    STARTED - Enum constant in enum class com.technototes.library.command.Command.CommandState
    -
    -
    The command has been triggered
    -
    -
    stateMap - Static variable in interface com.technototes.library.command.Command
    -
    -
    The Command to Current State of the Command lookup
    -
    -
    Stick - Interface in com.technototes.library.control
    -
    -
    Interface for objects that behave as sticks
    -
    -
    stickButton - Variable in class com.technototes.library.control.GamepadStick
    -
    -
    The objects for the stick button
    -
    -
    stop() - Method in class com.technototes.library.hardware.Speaker
    -
    -
    Deprecated.
    -
    stop() - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem
    -
     
    -
    stop() - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    -
     
    -
    stop() - Method in class com.technototes.library.subsystem.motor.MotorSubsystem
    -
     
    -
    stopRumble() - Method in class com.technototes.library.control.GamepadBase
    -
    -
    Stop rumbling on the gamepad
    -
    -
    StringEntry - Class in com.technototes.library.logger.entry
    -
     
    -
    StringEntry(String, Supplier<String>, int, String) - Constructor for class com.technototes.library.logger.entry.StringEntry
    -
     
    -
    Subsystem - Interface in com.technototes.library.subsystem
    -
     
    -
    supplier - Variable in class com.technototes.library.logger.entry.Entry
    -
    -
    The function called to get the value to display
    -
    -
    -

    T

    -
    -
    TankDrivebaseSubsystem<T extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in com.technototes.library.subsystem.drivebase
    -
    -
    Class for drivebase subsystems
    -
    -
    TankDrivebaseSubsystem(Motor<T>, Motor<T>) - Constructor for class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem
    -
    -
    Create tank drivebase
    -
    -
    tare() - Method in class com.technototes.library.hardware.motor.EncodedMotor
    -
    -
    Zero the encoder
    -
    -
    tare() - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    telemetry - Variable in class com.technototes.library.structure.CommandOpMode
    -
     
    -
    terminate() - Method in class com.technototes.library.structure.CommandOpMode
    -
     
    -
    terminateOpMode() - Method in class com.technototes.library.command.CommandScheduler
    -
    -
    Forcefully halt the opmode
    -
    -
    timeMap - Static variable in interface com.technototes.library.command.Command
    -
    -
    The Command to Total Time Spent Running lookup
    -
    -
    toggle(Command, Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    For scheduling a pair of "opposite" commands for toggling when something - is or is not being toggled
    -
    -
    toggleEnabled() - Method in interface com.technototes.library.general.Enablable
    -
    -
    Toggle whether this object is enabled or not
    -
    -
    tolerance(int) - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    toString() - Method in class com.technototes.library.logger.entry.BooleanEntry
    -
     
    -
    toString() - Method in class com.technototes.library.logger.entry.Entry
    -
    -
    The String for the logged item
    -
    -
    toString() - Method in class com.technototes.library.logger.entry.NumberEntry
    -
     
    -
    toString() - Method in class com.technototes.library.logger.entry.StringEntry
    -
     
    -
    translateTargetPosition(double) - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    trueValue() - Element in annotation interface com.technototes.library.logger.Log.Boolean
    -
    -
    Store the string when the annotated method returns true
    -
    -
    -

    U

    -
    -
    universalLoop() - Method in class com.technototes.library.structure.CommandOpMode
    -
    -
    Runs constantly during all periods
    -
    -
    up - Variable in class com.technototes.library.control.GamepadDpad
    -
    -
    The objects for the dpad buttons
    -
    -
    update() - Method in class com.technototes.library.hardware.servo.ServoProfiler
    -
     
    -
    update(double) - Method in class com.technototes.library.util.Integral
    -
    -
    Update the accumulated value for the number of seconds since last update
    -
    -
    uponInit() - Method in class com.technototes.library.structure.CommandOpMode
    -
    -
    Runs once when op mode is initialized
    -
    -
    uponStart() - Method in class com.technototes.library.structure.CommandOpMode
    -
    -
    Runs once when op mode is started
    -
    -
    -

    V

    -
    -
    value() - Method in interface com.technototes.library.hardware.sensor.IColorSensor
    -
    -
    Get HSV value (not entire HSV, just 'V')
    -
    -
    value() - Element in annotation interface com.technototes.library.logger.Log.Logs
    -
     
    -
    value() - Element in annotation interface com.technototes.library.logger.LogConfig.AllowList
    -
    -
    The allowed opmodes
    -
    -
    value() - Element in annotation interface com.technototes.library.logger.LogConfig.DenyList
    -
    -
    The denied opmodes
    -
    -
    valueOf(String) - Static method in enum class com.technototes.library.command.Command.CommandState
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    valueOf(String) - Static method in enum class com.technototes.library.control.Binding.Type
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    valueOf(String) - Static method in enum class com.technototes.library.control.GamepadBase.Axis
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    valueOf(String) - Static method in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    valueOf(String) - Static method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    valueOf(String) - Static method in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    valueOf(String) - Static method in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    valueOf(String) - Static method in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    valueOf(String) - Static method in enum class com.technototes.library.util.Alliance
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    valueOf(String) - Static method in enum class com.technototes.library.util.Color
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    valueOf(String) - Static method in enum class com.technototes.library.util.Differential.DifferentialPriority
    -
    -
    Returns the enum constant of this class with the specified name.
    -
    -
    values() - Static method in enum class com.technototes.library.command.Command.CommandState
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    values() - Static method in enum class com.technototes.library.control.Binding.Type
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    values() - Static method in enum class com.technototes.library.control.GamepadBase.Axis
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    values() - Static method in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    values() - Static method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    values() - Static method in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    values() - Static method in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    values() - Static method in enum class com.technototes.library.structure.CommandOpMode.OpModeState
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    values() - Static method in enum class com.technototes.library.util.Alliance
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    values() - Static method in enum class com.technototes.library.util.Color
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    values() - Static method in enum class com.technototes.library.util.Differential.DifferentialPriority
    -
    -
    Returns an array containing the constants of this enum class, in -the order they are declared.
    -
    -
    velocity(PIDFCoefficients) - Method in class com.technototes.library.hardware2.MotorBuilder
    -
     
    -
    -

    W

    -
    -
    WaitCommand - Class in com.technototes.library.command
    -
    -
    A command to do nothing but wait for a span of time.
    -
    -
    WaitCommand(double) - Constructor for class com.technototes.library.command.WaitCommand
    -
    -
    Create a wait command for a fixed number of seconds
    -
    -
    WaitCommand(DoubleSupplier) - Constructor for class com.technototes.library.command.WaitCommand
    -
    -
    Create a wait command for a number of seconds that can be calculated when the commannd is - triggered
    -
    -
    waitUntil(BooleanSupplier) - Method in interface com.technototes.library.command.Command
    -
    -
    After this command, wait until the condition function is true
    -
    -
    whenInverseToggled(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule the command to be run when the input has only stopped being toggled
    -
    -
    whenPressed(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule a command to be run once the input is pressed.
    -
    -
    whenPressedReleased(Command, Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    For scheduling a pair commands for when the input is pressed and released.
    -
    -
    whenReleased(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule a command to be run once the input is released.
    -
    -
    whenToggled(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule a command to be run when the input was just toggled - (From pressed to released, or released to pressed)
    -
    -
    whileInverseToggled(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule the command to run over & over while the input is *not* changing - It will be canceled once the input is toggled.
    -
    -
    whilePressed(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule a command to be run over & over while the input is pressed, - but once it's released, the command will be cancelled.
    -
    -
    whilePressedContinuous(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule a command to be run over & over while the input is pressed
    -
    -
    whilePressedOnce(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule a command to be run while the input is pressed, but only once, - and if the command takes so long that the input is released, the command - will be cancelled.
    -
    -
    whilePressedReleased(Command, Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    For scheduling a pair commands for while the input is pressed and released.
    -
    -
    whileReleased(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule a command to be run over & over while the input is released, - but once it's pressed, the command will be cancelled.
    -
    -
    whileReleasedOnce(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schdule the command to be run when the input is released, but only once!
    -
    -
    whileToggled(Command) - Method in interface com.technototes.library.control.CommandInput
    -
    -
    Schedule the command to be run while the input is changing.
    -
    -
    WHITE - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    withTimeout(double) - Method in interface com.technototes.library.command.Command
    -
    -
    Runs this command until it either finishes, or the timeout has elapsed
    -
    -
    -

    X

    -
    -
    x - Variable in class com.technototes.library.logger.entry.Entry
    -
    -
    The index (in the list) of the entry
    -
    -
    xAxis - Variable in class com.technototes.library.control.GamepadStick
    -
    -
    The objects for the stick axis
    -
    -
    xbox_a - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the XBox game controller
    -
    -
    XBOX_A - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    XBox A button
    -
    -
    xbox_b - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the XBox game controller
    -
    -
    XBOX_B - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    XBox B button
    -
    -
    xbox_back - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the XBox game controller
    -
    -
    XBOX_BACK - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    XBox Back button
    -
    -
    xbox_start - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the XBox game controller
    -
    -
    XBOX_START - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    XBox Start button
    -
    -
    xbox_x - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the XBox game controller
    -
    -
    XBOX_X - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    XBox X button
    -
    -
    xbox_y - Variable in class com.technototes.library.control.GamepadBase
    -
    -
    The button objects for the XBox game controller
    -
    -
    XBOX_Y - Enum constant in enum class com.technototes.library.control.GamepadBase.Button
    -
    -
    XBox Y button
    -
    -
    -

    Y

    -
    -
    yAxis - Variable in class com.technototes.library.control.GamepadStick
    -
    -
    The objects for the stick axis
    -
    -
    YELLOW - Enum constant in enum class com.technototes.library.util.Color
    -
     
    -
    -

    Z

    -
    -
    zero() - Method in interface com.technototes.library.hardware.sensor.IGyro
    -
    -
    Zeroes the current heading (in default units)
    -
    -
    zero() - Method in class com.technototes.library.util.Integral
    -
    -
    Set the value to zero
    -
    -
    zeroEncoder() - Method in interface com.technototes.library.hardware.sensor.encoder.Encoder
    -
    -
    zero the encoder
    -
    -
    zeroEncoder() - Method in class com.technototes.library.hardware.sensor.encoder.ExternalEncoder
    -
    -
    Set the current device value as "zero"
    -
    -
    zeroEncoder() - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder
    -
     
    -
    -A B C D E F G H I J L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Constant Field Values
    -
    -
    - + + + Index (RobotLibrary API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Index

    +
    + A B C D E F G H I J L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Constant Field Values +

    A

    +
    +
    + accept(T) + - Method in interface com.technototes.library.util.SmartConsumer +
    +
    +
    + The public interface for a SmartConsumer: accept should be invoked, not consume :) +
    +
    +
    + addCommands(Command...) + - Method in class com.technototes.library.command.CommandGroup +
    +
    +
    Add a command to the group
    +
    +
    + additionalInitConditions() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
     
    +
    + addRequirements(Subsystem...) + - Method in interface com.technototes.library.command.Command +
    +
    +
    Add requirement subsystems to command
    +
    +
    + addSongs(String...) + - Method in class com.technototes.library.hardware.Speaker +
    +
    +
    Deprecated.
    +   +
    +
    + ALL_ACTIVE + - Enum constant in enum class com.technototes.library.control.Binding.Type +
    +
     
    +
    + Alliance + - Enum Class in + com.technototes.library.util +
    +
    +
    + An enumeration to specify which alliance the bot is on (Red, Blue, or None) +
    +
    +
    + Alliance.Blue + - Annotation Interface in + com.technototes.library.util +
    +
    +
    Not sure what this is for.
    +
    +
    + Alliance.Red + - Annotation Interface in + com.technototes.library.util +
    +
    +
    Not sure what this is for.
    +
    +
    + Alliance.Selector<T> - Class in + com.technototes.library.util +
    +
    +
    + This feels over-engineered, but it's probably for some obnoxious Java thing, + unfortunate. +
    +
    +
    + alongWith(Command...) + - Method in interface com.technototes.library.command.Command +
    +
    +
    Run this command in parallel with additional commands
    +
    +
    + alpha() + - Method in interface com.technototes.library.hardware.sensor.IColorSensor +
    +
    +
    Get the alpha (transparency) of the color
    +
    +
    + analog(int) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + analog(String) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + AnalogBuilder + - Class in + com.technototes.library.hardware2 +
    +
    +
    TODO: Remove this.
    +
    +
    + AnalogBuilder(int) + - Constructor for class com.technototes.library.hardware2.AnalogBuilder +
    +
     
    +
    + AnalogBuilder(AnalogSensor) + - Constructor for class com.technototes.library.hardware2.AnalogBuilder +
    +
     
    +
    + AnalogBuilder(String) + - Constructor for class com.technototes.library.hardware2.AnalogBuilder +
    +
     
    +
    + AnalogSensor + - Class in + com.technototes.library.hardware.sensor +
    +
    +
    Class for analog sensors
    +
    +
    + AnalogSensor(AnalogInput) + - Constructor for class com.technototes.library.hardware.sensor.AnalogSensor +
    +
    +
    Make an analog sensor
    +
    +
    + AnalogSensor(String) + - Constructor for class com.technototes.library.hardware.sensor.AnalogSensor +
    +
    +
    Make an analog sensor
    +
    +
    + andThen(Command...) + - Method in interface com.technototes.library.command.Command +
    +
    +
    Run a command or series of ParallelCommands after this one
    +
    +
    + anyCancelled + - Variable in class com.technototes.library.command.CommandGroup +
    +
    +
    Have *any* of the command list been cancelled
    +
    +
    + apply(UnaryOperator<T>) + - Method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + arcadeDrive(double, double) + - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem +
    +
     
    +
    + argb() + - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor +
    +
     
    +
    + argb() + - Method in class com.technototes.library.hardware.sensor.ColorSensor +
    +
     
    +
    + argb() + - Method in interface com.technototes.library.hardware.sensor.IColorSensor +
    +
     
    +
    + asConditional(BooleanSupplier) + - Method in interface com.technototes.library.command.Command +
    +
    +
    Creates a conditional command out of this
    +
    +
    + at(double) + - Method in class com.technototes.library.hardware2.ServoBuilder +
    +
     
    +
    + AVERAGE + - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority +
    +
     
    +
    + AxisBase + - Class in + com.technototes.library.control +
    +
    +
    The class to extend custom gamepad axis from
    +
    +
    + AxisBase(DoubleSupplier) + - Constructor for class com.technototes.library.control.AxisBase +
    +
    +
    Make a GamepadAxis with the supplier
    +
    +
    + AxisBase(DoubleSupplier, double) + - Constructor for class com.technototes.library.control.AxisBase +
    +
    +
    + Make a GamepadAxis with the supplier and the threshold for the stick to behave as a + button +
    +
    +
    + axisInstance(DoubleSupplier) + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    + Returns the U (extended from AxisBase) type wrapped around a simple DoubleSupplier +
    +
    +
    +

    B

    +
    +
    + Binding<T + extends + BooleanSupplier> - Interface in + com.technototes.library.control +
    +
    +
    Class for bindings to extend
    +
    +
    + Binding.Type + - Enum Class in + com.technototes.library.control +
    +
    +
    Button type
    +
    +
    + BLACK + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + blue() + - Method in interface com.technototes.library.hardware.sensor.IColorSensor +
    +
    +
    Get the RGB blue of the sensor
    +
    +
    + BLUE + - Enum constant in enum class com.technototes.library.util.Alliance +
    +
    +
    BLUE alliance selector
    +
    +
    + BLUE + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + BLUE_CIRCLE + - Static variable in class com.technototes.library.util.Characters +
    +
     
    +
    + BooleanEntry + - Class in + com.technototes.library.logger.entry +
    +
     
    +
    + BooleanEntry(String, Supplier<Boolean>, int, String, String) + - Constructor for class com.technototes.library.logger.entry.BooleanEntry +
    +
     
    +
    + booleanSupplier + - Variable in class com.technototes.library.control.ButtonBase +
    +
     
    +
    + brake() + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
     
    +
    + brake() + - Method in class com.technototes.library.hardware.motor.Motor +
    +
    +
    Configure the motor to *brake* when the power is set to zero.
    +
    +
    + brake() + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + build() + - Method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + build() + - Method in class com.technototes.library.hardware2.IMUBuilder +
    +
    +
    Deprecated
    +
    +
    + ButtonBase + - Class in + com.technototes.library.control +
    +
    +
    The class to extend custom gamepad buttons from
    +
    +
    + ButtonBase(BooleanSupplier) + - Constructor for class com.technototes.library.control.ButtonBase +
    +
    +
    Create button with boolean supplier
    +
    +
    + buttonInstance(BooleanSupplier) + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Great a ButtonBase type from the given BooleanSupplier
    +
    +
    + bVal + - Variable in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns +
    +
    +
    The value of the enumeration
    +
    +
    + bVal + - Variable in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns +
    +
    +
    deprecated
    +
    +
    +

    C

    +
    +
    + calculateA(double, double, double, double) + - Method in enum class com.technototes.library.util.Differential.DifferentialPriority +
    +
    +
    + Calculates the value for the differential output generated by averaging +
    +
    +
    + calculateS(double, double, double, double) + - Method in enum class com.technototes.library.util.Differential.DifferentialPriority +
    +
    +
    + Calculates the value for the differential output generated by subtracting +
    +
    +
    + cancel() + - Method in interface com.technototes.library.command.Command +
    +
    +
    + If the command is running, interrupt it such that it can be cancelled +
    +
    +
    + CANCELLED + - Enum constant in enum class com.technototes.library.command.Command.CommandState +
    +
    +
    The command has been cancelled
    +
    +
    + cancelUpon(BooleanSupplier) + - Method in interface com.technototes.library.command.Command +
    +
    +
    + Runs this command until it finishes, or until the condition supplied is true +
    +
    +
    + captionDivider + - Variable in class com.technototes.library.logger.Logger +
    +
    +
    + The divider between the tag and the entry for telemetry (default ':') +
    +
    +
    + Characters + - Class in + com.technototes.library.util +
    +
     
    +
    + Characters() + - Constructor for class com.technototes.library.util.Characters +
    +
     
    +
    + ChoiceCommand + - Class in + com.technototes.library.command +
    +
    +
    + A command that allows choosing among a number of commands based on variety of + conditions +
    +
    +
    + ChoiceCommand(Pair<BooleanSupplier, Command>...) + - Constructor for class com.technototes.library.command.ChoiceCommand +
    +
    +
    + Each pair represents a condition to check, and the command to execute if that + condition is true +
    +
    +
    + ChoiceCommand(BooleanSupplier, Command) + - Constructor for class com.technototes.library.command.ChoiceCommand +
    +
    +
    + This is a simplistic ChoiceCommand that is simply a single conditional command I + *think* this will wwait until b is true +
    +
    +
    + clear() + - Static method in interface com.technototes.library.command.Command +
    +
    +
    Clear out the state, time, and requirement maps.
    +
    +
    + close() + - Method in class com.technototes.library.hardware.DummyDevice +
    +
     
    +
    + closestTo(double, double...) + - Static method in class com.technototes.library.util.MathUtils +
    +
    +
    + Returns the value from a list which is closed to the first value. +
    +
    +
    + closestTo(double, int...) + - Static method in class com.technototes.library.util.MathUtils +
    +
    +
    + Returns the value from a list which is closed to the first value. +
    +
    +
    + coast() + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
     
    +
    + coast() + - Method in class com.technototes.library.hardware.motor.Motor +
    +
    +
    Configure the motor to *float* when the power is set to zero.
    +
    +
    + coast() + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + codriverGamepad + - Variable in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Command gamepad objects
    +
    +
    + color(String) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + Color + - Enum Class in + com.technototes.library.util +
    +
    +
    Enum for Colors and some formatting
    +
    +
    + ColorBuilder + - Class in + com.technototes.library.hardware2 +
    +
    +
    TODO: Remove this.
    +
    +
    + ColorBuilder(ColorSensor) + - Constructor for class com.technototes.library.hardware2.ColorBuilder +
    +
     
    +
    + ColorBuilder(String) + - Constructor for class com.technototes.library.hardware2.ColorBuilder +
    +
     
    +
    + ColorDistanceSensor + - Class in + com.technototes.library.hardware.sensor +
    +
     
    +
    + ColorDistanceSensor(ColorRangeSensor) + - Constructor for class com.technototes.library.hardware.sensor.ColorDistanceSensor +
    +
     
    +
    + ColorDistanceSensor(String) + - Constructor for class com.technototes.library.hardware.sensor.ColorDistanceSensor +
    +
     
    +
    + colorRange(String) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + ColorRangeBuilder + - Class in + com.technototes.library.hardware2 +
    +
    +
    TODO: Remove this.
    +
    +
    + ColorRangeBuilder(ColorRangeSensor) + - Constructor for class com.technototes.library.hardware2.ColorRangeBuilder +
    +
     
    +
    + ColorRangeBuilder(String) + - Constructor for class com.technototes.library.hardware2.ColorRangeBuilder +
    +
     
    +
    + ColorSensor + - Class in + com.technototes.library.hardware.sensor +
    +
    +
    Class for color sensors
    +
    +
    + ColorSensor(ColorSensor) + - Constructor for class com.technototes.library.hardware.sensor.ColorSensor +
    +
    +
    Make a color Sensor
    +
    +
    + ColorSensor(String) + - Constructor for class com.technototes.library.hardware.sensor.ColorSensor +
    +
    +
    Make a color sensor
    +
    +
    + com.technototes.library - + package com.technototes.library +
    +
     
    +
    + com.technototes.library.command + - package com.technototes.library.command +
    +
     
    +
    + com.technototes.library.control + - package com.technototes.library.control +
    +
     
    +
    + com.technototes.library.general + - package com.technototes.library.general +
    +
     
    +
    + com.technototes.library.hardware + - package com.technototes.library.hardware +
    +
     
    +
    + com.technototes.library.hardware.motor + - package com.technototes.library.hardware.motor +
    +
     
    +
    + com.technototes.library.hardware.sensor + - package com.technototes.library.hardware.sensor +
    +
     
    +
    + com.technototes.library.hardware.sensor.encoder + - package com.technototes.library.hardware.sensor.encoder +
    +
     
    +
    + com.technototes.library.hardware.servo + - package com.technototes.library.hardware.servo +
    +
     
    +
    + com.technototes.library.hardware2 + - package com.technototes.library.hardware2 +
    +
     
    +
    + com.technototes.library.logger + - package com.technototes.library.logger +
    +
     
    +
    + com.technototes.library.logger.entry + - package com.technototes.library.logger.entry +
    +
     
    +
    + com.technototes.library.structure + - package com.technototes.library.structure +
    +
     
    +
    + com.technototes.library.subsystem + - package com.technototes.library.subsystem +
    +
     
    +
    + com.technototes.library.subsystem.drivebase + - package com.technototes.library.subsystem.drivebase +
    +
     
    +
    + com.technototes.library.subsystem.motor + - package com.technototes.library.subsystem.motor +
    +
     
    +
    + com.technototes.library.subsystem.servo + - package com.technototes.library.subsystem.servo +
    +
     
    +
    + com.technototes.library.util + - package com.technototes.library.util +
    +
     
    +
    + Command + - Interface in + com.technototes.library.command +
    +
    +
    The root Command class
    +
    +
    + Command.CommandState + - Enum Class in + com.technototes.library.command +
    +
    +
    The command state enum
    +
    +
    + CommandAxis + - Class in + com.technototes.library.control +
    +
    +
    Class for command axis for the gamepad
    +
    +
    + CommandAxis(DoubleSupplier) + - Constructor for class com.technototes.library.control.CommandAxis +
    +
    +
    Make a command axis
    +
    +
    + CommandAxis(DoubleSupplier, double) + - Constructor for class com.technototes.library.control.CommandAxis +
    +
    +
    Make a command axis
    +
    +
    + CommandBase + - Class in + com.technototes.library.command +
    +
    +
    Deprecated.
    +
    +
    + CommandBase() + - Constructor for class com.technototes.library.command.CommandBase +
    +
    +
    Deprecated.
    +   +
    +
    + CommandBinding + - Class in + com.technototes.library.control +
    +
    +
    + Command implementation of + Binding +
    +
    +
    + CommandBinding(Binding.Type, CommandInput...) + - Constructor for class com.technototes.library.control.CommandBinding +
    +
     
    +
    + CommandBinding(CommandInput...) + - Constructor for class com.technototes.library.control.CommandBinding +
    +
     
    +
    + CommandButton + - Class in + com.technototes.library.control +
    +
    +
    Class for command buttons for gamepad
    +
    +
    + CommandButton(BooleanSupplier) + - Constructor for class com.technototes.library.control.CommandButton +
    +
    +
    Make command button
    +
    +
    + CommandGamepad + - Class in + com.technototes.library.control +
    +
    +
    Class for command gamepads that specifies class params
    +
    +
    + CommandGamepad(Gamepad) + - Constructor for class com.technototes.library.control.CommandGamepad +
    +
    +
    Make command gamepad
    +
    +
    + CommandGroup + - Class in + com.technototes.library.command +
    +
    +
    + Root class for all command groups (Sequential, Parallel, etc...) WARNING: You + probably will be better served by the specific CommandGroup subclasses, rather than + using this one directly. +
    +
    +
    + CommandGroup(boolean, Command...) + - Constructor for class com.technototes.library.command.CommandGroup +
    +
    +
    Create a command group with commands
    +
    +
    + CommandInput<T + extends + ButtonBase> - Interface in + com.technototes.library.control +
    +
    +
    Class for gamepad-command integration
    +
    +
    + commandMap + - Variable in class com.technototes.library.command.CommandGroup +
    +
    +
    This is a map from the command to whether it has been run
    +
    +
    + CommandOpMode + - Class in + com.technototes.library.structure +
    +
    +
    Class for command based op modes
    +
    +
    + CommandOpMode() + - Constructor for class com.technototes.library.structure.CommandOpMode +
    +
     
    +
    + CommandOpMode.OpModeState + - Enum Class in + com.technototes.library.structure +
    +
    +
    Enum for op mode state
    +
    +
    + CommandScheduler + - Class in + com.technototes.library.command +
    +
    +
    This is a "singleton" object for scheduling commands.
    +
    +
    + ConditionalCommand + - Class in + com.technototes.library.command +
    +
    +
    + Simple class for commands that require a certain condition to be true to run +
    +
    +
    + ConditionalCommand(BooleanSupplier) + - Constructor for class com.technototes.library.command.ConditionalCommand +
    +
    +
    This makes a "wait" command
    +
    +
    + ConditionalCommand(BooleanSupplier, Command) + - Constructor for class com.technototes.library.command.ConditionalCommand +
    +
    +
    Make a conditional command
    +
    +
    + ConditionalCommand(BooleanSupplier, Command, Command) + - Constructor for class com.technototes.library.command.ConditionalCommand +
    +
    +
    Make a conditional command
    +
    +
    + constrain(double, double, double) + - Static method in class com.technototes.library.util.MathUtils +
    +
    +
    + Deprecated.  +
    +
    +
    + constrain(int, int, int) + - Static method in class com.technototes.library.util.MathUtils +
    +
    +
    + Deprecated.  +
    +
    +
    + Constraints(double, double, double) + - Constructor for class com.technototes.library.hardware.servo.ServoProfiler.Constraints +
    +
     
    +
    + consume(T) + - Method in interface com.technototes.library.util.SmartConsumer +
    +
    +
    The 'consume' function
    +
    +
    + countCancel + - Variable in class com.technototes.library.command.CommandGroup +
    +
    +
    Should a cancelled command be considered 'finished'
    +
    +
    + countCancel() + - Method in class com.technototes.library.command.CommandGroup +
    +
    +
    + Specify that this CommandGroup should count a cancellation as 'completed' +
    +
    +
    + create(int) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + create(Command, Subsystem...) + - Static method in interface com.technototes.library.command.Command +
    +
    +
    + This is a helper to create a new command from an existing command, but with + additional subsystem requirements +
    +
    +
    + create(String) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + crServo(int) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + crServo(String) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + CRServoBuilder + - Class in + com.technototes.library.hardware2 +
    +
    +
    TODO: Remove this.
    +
    +
    + CRServoBuilder(int) + - Constructor for class com.technototes.library.hardware2.CRServoBuilder +
    +
     
    +
    + CRServoBuilder(CRServo) + - Constructor for class com.technototes.library.hardware2.CRServoBuilder +
    +
     
    +
    + CRServoBuilder(String) + - Constructor for class com.technototes.library.hardware2.CRServoBuilder +
    +
     
    +
    + CYAN + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + CYCLE + - Static variable in class com.technototes.library.util.Characters +
    +
     
    +
    +

    D

    +
    +
    + DARK_GRAY + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + deadline(Command...) + - Method in interface com.technototes.library.command.Command +
    +
    +
    + Runs all the commands specified in parallel *until this command is completed* +
    +
    +
    + DEFAULT_TRIGGER_THRESHOLD + - Static variable in class com.technototes.library.control.AxisBase +
    +
    +
    The default trigger threshold
    +
    +
    + degrees() + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Set angle format to degrees
    +
    +
    + degrees() + - Method in class com.technototes.library.hardware2.IMUBuilder +
    +
    +
    Deprecated
    +
    +
    + device + - Variable in class com.technototes.library.hardware.HardwareDevice +
    +
    +
    Deprecated.
    +   +
    +
    + device + - Variable in class com.technototes.library.subsystem.DeviceSubsystem +
    +
     
    +
    + DeviceSubsystem<T + extends + HardwareDevice<?>> - Class in + com.technototes.library.subsystem +
    +
    +
    class for subsystems
    +
    +
    + DeviceSubsystem(T) + - Constructor for class com.technototes.library.subsystem.DeviceSubsystem +
    +
    +
    Create a subsystem
    +
    +
    + DIFFERENCE + - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority +
    +
     
    +
    + Differential + - Class in + com.technototes.library.util +
    +
     
    +
    + Differential(DoubleConsumer, DoubleConsumer) + - Constructor for class com.technototes.library.util.Differential +
    +
    +
    Create differential from two consumers
    +
    +
    + Differential(DoubleConsumer, DoubleConsumer, Differential.DifferentialPriority) + - Constructor for class com.technototes.library.util.Differential +
    +
    +
    Create differential from two consumers
    +
    +
    + Differential.DifferentialPriority + - Enum Class in + com.technototes.library.util +
    +
    +
    Enum for the priority of the differential.
    +
    +
    + digital(int) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + digital(String) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + DigitalBuilder + - Class in + com.technototes.library.hardware2 +
    +
    +
    TODO: Remove this.
    +
    +
    + DigitalBuilder(int) + - Constructor for class com.technototes.library.hardware2.DigitalBuilder +
    +
    +
    Don't use this in the future
    +
    +
    + DigitalBuilder(DigitalChannel) + - Constructor for class com.technototes.library.hardware2.DigitalBuilder +
    +
    +
    Don't use this in the future
    +
    +
    + DigitalBuilder(String) + - Constructor for class com.technototes.library.hardware2.DigitalBuilder +
    +
    +
    Don't use this in the future
    +
    +
    + DigitalSensor + - Class in + com.technototes.library.hardware.sensor +
    +
    +
    Class for digital sensors
    +
    +
    + DigitalSensor(DigitalChannel) + - Constructor for class com.technototes.library.hardware.sensor.DigitalSensor +
    +
    +
    Make a digital sensor
    +
    +
    + DigitalSensor(String) + - Constructor for class com.technototes.library.hardware.sensor.DigitalSensor +
    +
    +
    Make a digital sensor
    +
    +
    + direction(DcMotorSimple.Direction) + - Method in class com.technototes.library.hardware2.CRServoBuilder +
    +
     
    +
    + direction(DcMotorSimple.Direction) + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + direction(Servo.Direction) + - Method in class com.technototes.library.hardware2.ServoBuilder +
    +
     
    +
    + disable() + - Method in class com.technototes.library.control.CommandGamepad +
    +
     
    +
    + disable() + - Method in interface com.technototes.library.general.Enablable +
    +
    +
    Disable the object
    +
    +
    + disable() + - Method in class com.technototes.library.hardware2.ColorRangeBuilder +
    +
     
    +
    + disable() + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + distance(String) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + DistanceBuilder + - Class in + com.technototes.library.hardware2 +
    +
    +
    TODO: Remove this.
    +
    +
    + DistanceBuilder(DistanceSensor) + - Constructor for class com.technototes.library.hardware2.DistanceBuilder +
    +
     
    +
    + DistanceBuilder(String) + - Constructor for class com.technototes.library.hardware2.DistanceBuilder +
    +
     
    +
    + doubleSupplier + - Variable in class com.technototes.library.control.AxisBase +
    +
     
    +
    + down + - Variable in class com.technototes.library.control.GamepadDpad +
    +
    +
    The objects for the dpad buttons
    +
    +
    + dpad + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The dpad object
    +
    +
    + dpadDown + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    + dpadLeft + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    + dpadRight + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    + dpadUp + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    + drive(double, double) + - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem +
    +
     
    +
    + drive(double, double, double) + - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem +
    +
     
    +
    + drive(double, double, double, double) + - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem +
    +
     
    +
    + DrivebaseSubsystem<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in + com.technototes.library.subsystem.drivebase +
    +
    +
    Class for DriveBase subsystems
    +
    +
    + DrivebaseSubsystem(Motor<T>...) + - Constructor for class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem +
    +
    +
    Create a drivebase subsystem
    +
    +
    + DrivebaseSubsystem(DoubleSupplier, Motor<T>...) + - Constructor for class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem +
    +
    +
    Create a drivebase subsystem
    +
    +
    + driverGamepad + - Variable in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Command gamepad objects
    +
    +
    + DUCK + - Static variable in class com.technototes.library.util.Characters +
    +
     
    +
    + DummyDevice<T> - Class in + com.technototes.library.hardware +
    +
    +
    This isn't worth actually doing.
    +
    +
    + DummyDevice(T) + - Constructor for class com.technototes.library.hardware.DummyDevice +
    +
     
    +
    + duringInit() + - Element in annotation interface com.technototes.library.logger.LogConfig.Run +
    +
    +
    Run the log during the init Period
    +
    +
    + duringRun() + - Element in annotation interface com.technototes.library.logger.LogConfig.Run +
    +
    +
    Run the log during the teleop Period
    +
    +
    +

    E

    +
    +
    + Enablable<T + extends + Enablable<T>> - Interface in + com.technototes.library.general +
    +
    +
    Interface for anything that can be enabled/disabled
    +
    +
    + enable() + - Method in class com.technototes.library.control.CommandGamepad +
    +
     
    +
    + enable() + - Method in interface com.technototes.library.general.Enablable +
    +
    +
    Enable the object
    +
    +
    + enable() + - Method in class com.technototes.library.hardware2.ColorRangeBuilder +
    +
     
    +
    + enable() + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + EncodedMotor<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in + com.technototes.library.hardware.motor +
    +
    +
    Class for encoded motors
    +
    +
    + EncodedMotor(String) + - Constructor for class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Make encoded motor, with the default encoder configured
    +
    +
    + EncodedMotor(String, Encoder) + - Constructor for class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Make encoded motor
    +
    +
    + EncodedMotor(T) + - Constructor for class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Make encoded motor, with the default encoder configured
    +
    +
    + EncodedMotor(T, Encoder) + - Constructor for class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Make encoded motor
    +
    +
    + EncodedMotorGroup<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in + com.technototes.library.hardware.motor +
    +
    +
    Class for encoded motor groups
    +
    +
    + EncodedMotorGroup(EncodedMotor<T>, Motor<T>...) + - Constructor for class com.technototes.library.hardware.motor.EncodedMotorGroup +
    +
    +
    Create an encoded motor groupM
    +
    +
    + EncodedMotorSubsystem + - Class in + com.technototes.library.subsystem.motor +
    +
    +
    Class for encoded motor subsystems
    +
    +
    + EncodedMotorSubsystem(EncodedMotor<?>) + - Constructor for class com.technototes.library.subsystem.motor.EncodedMotorSubsystem +
    +
    +
    Create encoded motor subsystem
    +
    +
    + Encoder + - Interface in + com.technototes.library.hardware.sensor.encoder +
    +
    +
    Interfaces for encoders to use
    +
    +
    + end() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Runs once when op mode is ended
    +
    +
    + end(boolean) + - Method in interface com.technototes.library.command.Command +
    +
    +
    End the command
    +
    +
    + end(boolean) + - Method in class com.technototes.library.command.CommandGroup +
    +
    +
    This stops the command group from executing
    +
    +
    + END + - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState +
    +
     
    +
    + Entry<T> - Class in + com.technototes.library.logger.entry +
    +
    +
    The root class for logging entries
    +
    +
    + Entry(String, Supplier<T>, int) + - Constructor for class com.technototes.library.logger.entry.Entry +
    +
    +
    Create an entry with name, value, index
    +
    +
    + execute() + - Method in interface com.technototes.library.command.Command +
    +
    +
    Execute the command
    +
    +
    + execute() + - Method in class com.technototes.library.command.CommandBase +
    +
    +
    Deprecated.
    +
    Execute the command
    +
    +
    + execute() + - Method in class com.technototes.library.command.CommandGroup +
    +
     
    +
    + execute() + - Method in class com.technototes.library.command.ConditionalCommand +
    +
     
    +
    + execute() + - Method in class com.technototes.library.command.WaitCommand +
    +
     
    +
    + EXECUTING + - Enum constant in enum class com.technototes.library.command.Command.CommandState +
    +
    +
    The command is running normally
    +
    +
    + expandedPWM() + - Method in class com.technototes.library.hardware2.ServoBuilder +
    +
     
    +
    + expandedRange() + - Method in class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +   +
    +
    + ExternalEncoder + - Class in + com.technototes.library.hardware.sensor.encoder +
    +
    +
    + A wrapper around an AnalogInput that enables "zeroing" for usefulness +
    +
    +
    + ExternalEncoder(AnalogInput) + - Constructor for class com.technototes.library.hardware.sensor.encoder.ExternalEncoder +
    +
    +
    Create an ExternalEncoder from an arbitrary AnalogInput
    +
    +
    + ExternalEncoder(String) + - Constructor for class com.technototes.library.hardware.sensor.encoder.ExternalEncoder +
    +
    +
    + Create an ExternalEncoder from an arbitrary AnalogInput device +
    +
    +
    +

    F

    +
    +
    + falseValue() + - Element in annotation interface com.technototes.library.logger.Log.Boolean +
    +
    +
    Store the string when the annotated method returns false
    +
    +
    + FINISHED + - Enum constant in enum class com.technototes.library.command.Command.CommandState +
    +
    +
    The command has completed successfully
    +
    +
    + flMotor + - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem +
    +
    +
    Drive motors
    +
    +
    + format() + - Element in annotation interface com.technototes.library.logger.Log +
    +
    +
    The format for the logged String
    +
    +
    + format(Object) + - Method in enum class com.technototes.library.util.Color +
    +
    +
    Format the supplied object with the HTML to become this color
    +
    +
    + format(String, Object...) + - Method in enum class com.technototes.library.util.Color +
    +
    +
    + Format the supplied object with the HTML and a format String to become this color +
    +
    +
    + forward() + - Method in class com.technototes.library.hardware2.CRServoBuilder +
    +
     
    +
    + forward() + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + forward() + - Method in class com.technototes.library.hardware2.ServoBuilder +
    +
     
    +
    + FORWARD + - Enum constant in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction +
    +
     
    +
    + frMotor + - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem +
    +
    +
    Drive motors
    +
    +
    +

    G

    +
    +
    + gain(float) + - Method in class com.technototes.library.hardware2.ColorRangeBuilder +
    +
     
    +
    + GAMEPAD + - Static variable in class com.technototes.library.util.Characters +
    +
     
    +
    + gamepad1 + - Variable in class com.technototes.library.structure.CommandOpMode +
    +
     
    +
    + gamepad2 + - Variable in class com.technototes.library.structure.CommandOpMode +
    +
     
    +
    + GamepadBase<T + extends + ButtonBase,U + extends + AxisBase> - Class in + com.technototes.library.control +
    +
    +
    + A class to extend gamepads from, it does the internal processing for you. +
    +
    +
    + GamepadBase(Gamepad, Class<T>, Class<U>) + - Constructor for class com.technototes.library.control.GamepadBase +
    +
    +
    Creates a gamepad with these parameters
    +
    +
    + GamepadBase.Axis + - Enum Class in + com.technototes.library.control +
    +
    +
    Axis enum for all axis on gamepad
    +
    +
    + GamepadBase.Button + - Enum Class in + com.technototes.library.control +
    +
    +
    Button enum for all buttons on gamepad
    +
    +
    + GamepadDpad<T + extends + ButtonBase> - Class in + com.technototes.library.control +
    +
    +
    A class for dpads
    +
    +
    + GamepadDpad(T, T, T, T) + - Constructor for class com.technototes.library.control.GamepadDpad +
    +
    +
    Create dpad with 4 buttons
    +
    +
    + GamepadStick<T + extends + AxisBase,U + extends + ButtonBase> - Class in + com.technototes.library.control +
    +
    +
    A class for gamepad sticks
    +
    +
    + GamepadStick(T, T, U) + - Constructor for class com.technototes.library.control.GamepadStick +
    +
    +
    Make a gamepad stick
    +
    +
    + get() + - Method in interface com.technototes.library.command.Command +
    +
    +
    + Gets the current state of the command (Supplier<CommandState>) +
    +
    +
    + get() + - Method in interface com.technototes.library.control.Binding +
    +
     
    +
    + get() + - Method in class com.technototes.library.hardware.DummyDevice +
    +
     
    +
    + get() + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
     
    +
    + get() + - Method in class com.technototes.library.hardware.motor.Motor +
    +
    +
    + Gets the *speed* of the motor when it's used as a DoubleSupplier +
    +
    +
    + get() + - Method in class com.technototes.library.logger.entry.Entry +
    +
     
    +
    + get(Binding.Type) + - Method in interface com.technototes.library.control.Binding +
    +
    +
    Get this as boolean for the type
    +
    +
    + get(Class<? extends OpMode>) + - Static method in enum class com.technototes.library.util.Alliance +
    +
    +
    + Get the alliance set for the OpMode passed in, if it's set in the annotation +
    +
    +
    + getAllDeviceList() + - Method in interface com.technototes.library.hardware.HardwareDeviceGroup +
    +
    +
    Deprecated.
    +   +
    +
    + getAllDevices() + - Method in interface com.technototes.library.hardware.HardwareDeviceGroup +
    +
    +
    Deprecated.
    +
    Get all devices in group
    +
    +
    + getAllDevices() + - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup +
    +
     
    +
    + getAllDevices() + - Method in class com.technototes.library.hardware.motor.MotorGroup +
    +
     
    +
    + getAllDevices() + - Method in class com.technototes.library.hardware.servo.ServoGroup +
    +
    +
    Deprecated.
    +   +
    +
    + getAngle() + - Method in interface com.technototes.library.control.Stick +
    +
    +
    Returns the angle of the stick
    +
    +
    + getAngularOrientation() + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
     
    +
    + getAngularOrientation(AngleUnit) + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Gets the Angular orientation of the IMU
    +
    +
    + getAngularVelocity() + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
     
    +
    + getAngularVelocity(AngleUnit) + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Gets the angular velocity (in default units)
    +
    +
    + getAsBoolean() + - Method in interface com.technototes.library.control.Binding +
    +
     
    +
    + getAsBoolean() + - Method in class com.technototes.library.control.ButtonBase +
    +
    +
    Same as isPressed()
    +
    +
    + getAsButton() + - Method in class com.technototes.library.control.CommandAxis +
    +
     
    +
    + getAsButton(double) + - Method in class com.technototes.library.control.CommandAxis +
    +
     
    +
    + getAsDouble() + - Method in class com.technototes.library.control.AxisBase +
    +
    +
    Returns the double from the axis
    +
    +
    + getAsDouble() + - Method in interface com.technototes.library.hardware.Sensored +
    +
    +
    Deprecated.
    +   +
    +
    + getAverage() + - Method in class com.technototes.library.util.Differential +
    +
    +
    + Gets the current average of the two differential inputs, equating to one of the + outputs +
    +
    +
    + getAxis(GamepadBase.Axis) + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Returns an axis
    +
    +
    + getAxisAsBoolean(GamepadBase.Axis) + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Returns an axis as boolean
    +
    +
    + getAxisAsDouble(GamepadBase.Axis) + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Returns an axis as double
    +
    +
    + getButton(GamepadBase.Button) + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Returns a button
    +
    +
    + getButtonAsBoolean(GamepadBase.Button) + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Returns a button as boolean (same as isPressed)
    +
    +
    + getColor() + - Method in enum class com.technototes.library.util.Alliance +
    +
    +
    Get the alliance color (Red, Blue, or Black)
    +
    +
    + getConnectionInfo() + - Method in class com.technototes.library.hardware.DummyDevice +
    +
     
    +
    + getCorrectedVelocity() + - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + getCurrent(Subsystem) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    This gets the command currently using the subsystem provided
    +
    +
    + getCurrentPosition() + - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + getCurrentPosition() + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + getCurrentSong() + - Method in class com.technototes.library.hardware.Speaker +
    +
    +
    Deprecated.
    +   +
    +
    + getDefault(Subsystem) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Get the default command that is running on the subsystem provided +
    +
    +
    + getDefaultCommand() + - Method in interface com.technototes.library.subsystem.Subsystem +
    +
     
    +
    + getDefaultType() + - Method in interface com.technototes.library.control.Binding +
    +
     
    +
    + getDefaultType() + - Method in class com.technototes.library.control.CommandBinding +
    +
     
    +
    + getDeviation() + - Method in class com.technototes.library.util.Differential +
    +
    +
    + Gets the current deviation between the two differential inputs and the average, + equating to one of the outputs +
    +
    +
    + getDevice() + - Method in class com.technototes.library.hardware.HardwareDevice +
    +
    +
    Deprecated.
    +
    Get encapsulated device
    +
    +
    + getDevice() + - Method in class com.technototes.library.subsystem.DeviceSubsystem +
    +
    +
    Get the devices for this subsystem
    +
    +
    + getDeviceName() + - Method in class com.technototes.library.hardware.DummyDevice +
    +
     
    +
    + getDifferentialPriority() + - Method in class com.technototes.library.util.Differential +
    +
    +
    Gets the priority for the difference output.
    +
    +
    + getDirection() + - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + getDistance() + - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor +
    +
     
    +
    + getDistance(DistanceUnit) + - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor +
    +
     
    +
    + getDistance(DistanceUnit) + - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor +
    +
     
    +
    + getDistance(DistanceUnit) + - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor +
    +
    +
    Deprecated.
    +
    Get the value with a specified distance Unit
    +
    +
    + getDistanceFromCenter() + - Method in interface com.technototes.library.control.Stick +
    +
    +
    Returns the stick's distance from the center
    +
    +
    + getDpad() + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Returns the Dpad object
    +
    +
    + getEncoder() + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Get the encoder object
    +
    +
    + getFollowerist() + - Method in interface com.technototes.library.hardware.HardwareDeviceGroup +
    +
    +
    Deprecated.
    +   +
    +
    + getFollowers() + - Method in interface com.technototes.library.hardware.HardwareDeviceGroup +
    +
    +
    Deprecated.
    +
    Get the followers for the lead device
    +
    +
    + getFollowers() + - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup +
    +
     
    +
    + getFollowers() + - Method in class com.technototes.library.hardware.motor.MotorGroup +
    +
     
    +
    + getFollowers() + - Method in class com.technototes.library.hardware.servo.ServoGroup +
    +
    +
    Deprecated.
    +   +
    +
    + getGamepad() + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Returns the encapsulated gamepad
    +
    +
    + getGyro() + - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem +
    +
    +
    Get the Gyro angle
    +
    +
    + getHexValue() + - Method in enum class com.technototes.library.util.Color +
    +
    +
    Get the hex value
    +
    +
    + getIndex() + - Method in class com.technototes.library.logger.entry.Entry +
    +
    +
    Get the index for the entry
    +
    +
    + getInstance() + - Static method in class com.technototes.library.command.CommandScheduler +
    +
    +
    Get (or create) the singleton CommandScheduler object
    +
    +
    + getInstance() + - Method in class com.technototes.library.control.CommandAxis +
    +
     
    +
    + getInstance() + - Method in class com.technototes.library.control.CommandButton +
    +
     
    +
    + getInstance() + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    Return instance of class parameter
    +
    +
    + getInverted() + - Method in class com.technototes.library.control.ButtonBase +
    +
     
    +
    + getInverted() + - Method in interface com.technototes.library.general.Invertable +
    +
    +
    Get current inversion
    +
    +
    + getInverted() + - Method in class com.technototes.library.hardware.motor.Motor +
    +
    +
    Returns whether the motor is inverted.
    +
    +
    + getInverted() + - Method in class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +   +
    +
    + getLast() + - Method in interface com.technototes.library.util.SmartConsumer +
    +
     
    +
    + getLeftStick() + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Returns the left stick
    +
    +
    + getLight() + - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor +
    +
     
    +
    + getLogger() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Get the op mode's logger
    +
    +
    + getManufacturer() + - Method in class com.technototes.library.hardware.DummyDevice +
    +
     
    +
    + getMap() + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
     
    +
    + getMax(double...) + - Static method in class com.technototes.library.util.MathUtils +
    +
    +
    Get the max of supplied doubles
    +
    +
    + getMax(int...) + - Static method in class com.technototes.library.util.MathUtils +
    +
    +
    Get the max of supplied ints
    +
    +
    + getMaxAccel() + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + getMaxAcceleration() + - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints +
    +
     
    +
    + getMaxVel() + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + getMaxVelocity() + - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints +
    +
     
    +
    + getMultiplier() + - Method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction +
    +
     
    +
    + getName() + - Method in class com.technototes.library.logger.entry.Entry +
    +
    +
    Get the name
    +
    +
    + getOpModeRuntime() + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    Gets the number of seconds that the opmode has been executing
    +
    +
    + getOpModeRuntime() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Get the opmode runtime
    +
    +
    + getOpModeState() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Get op mode state
    +
    +
    + getPosition() + - Method in interface com.technototes.library.hardware.sensor.encoder.Encoder +
    +
     
    +
    + getPosition() + - Method in class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +
    Get servo position
    +
    +
    + getPosition() + - Method in class com.technototes.library.subsystem.servo.ServoSubsystem +
    +
    +
    Get subsystem servo position
    +
    +
    + getPriority() + - Method in class com.technototes.library.logger.entry.Entry +
    +
    +
    Get Priority for the entry
    +
    +
    + getProportion() + - Method in class com.technototes.library.hardware.servo.ServoProfiler.Constraints +
    +
     
    +
    + getRawVelocity() + - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + getRequirements() + - Method in interface com.technototes.library.command.Command +
    +
    +
    Return the subsystem requirements for this command
    +
    +
    + getRightStick() + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Returns the right stick
    +
    +
    + getRuntime() + - Method in interface com.technototes.library.command.Command +
    +
    +
    + Return the amount of time since the command was first initialized +
    +
    +
    + getScale(double...) + - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem +
    +
    +
    + This will give you a *positive* value to scale the value to such that the largest + value of the list will be |1| (negative or positive). +
    +
    +
    + getSeconds() + - Method in class com.technototes.library.command.WaitCommand +
    +
     
    +
    + getSensorValue() + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Get the encoder position value
    +
    +
    + getSensorValue() + - Method in class com.technototes.library.hardware.sensor.AnalogSensor +
    +
     
    +
    + getSensorValue() + - Method in class com.technototes.library.hardware.sensor.encoder.ExternalEncoder +
    +
    +
    Get the sensor value (relative to the assigned zero)
    +
    +
    + getSensorValue() + - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + getSensorValue() + - Method in interface com.technototes.library.hardware.Sensored +
    +
    +
    Deprecated.
    +
    Get the sensor value
    +
    +
    + getSensorValue() + - Method in class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +   +
    +
    + getServo() + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + getSpeed() + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Gets the power set for the motor
    +
    +
    + getSpeed() + - Method in class com.technototes.library.hardware.motor.Motor +
    +
    +
    Gets the power value for the motor
    +
    +
    + getSpeed() + - Method in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem +
    +
    +
    Override this one, I guess? Not sure how useful it is.
    +
    +
    + getSpeed() + - Method in class com.technototes.library.subsystem.motor.MotorSubsystem +
    +
    +
    Get the speed of the motors in the subsystem
    +
    +
    + getState() + - Method in interface com.technototes.library.command.Command +
    +
    +
    Return the command state: Probably don't use this
    +
    +
    + getSuppliers() + - Method in interface com.technototes.library.control.Binding +
    +
     
    +
    + getSuppliers() + - Method in class com.technototes.library.control.CommandBinding +
    +
     
    +
    + getTargetPosition() + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + getTargetTolerance() + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + getTriggerThreshold() + - Method in class com.technototes.library.control.AxisBase +
    +
    +
    Gets the trigger threshold
    +
    +
    + getUnit() + - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor +
    +
     
    +
    + getUnit() + - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor +
    +
     
    +
    + getUnit() + - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor +
    +
    +
    Deprecated.
    +
    Get the current distance unit
    +
    +
    + getValue() + - Method in class com.technototes.library.hardware.sensor.DigitalSensor +
    +
    +
    Get the sensor value as a boolean
    +
    +
    + getValue() + - Method in class com.technototes.library.util.Integral +
    +
    +
    Get the current accumulation
    +
    +
    + getVelocity() + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Get the power for the motor (Velocity, I guess?)
    +
    +
    + getVersion() + - Method in class com.technototes.library.hardware.DummyDevice +
    +
     
    +
    + getVersion() + - Static method in class com.technototes.library.RobotLibrary +
    +
    +
    Get library version
    +
    +
    + getVolume() + - Method in class com.technototes.library.hardware.Speaker +
    +
    +
    Deprecated.
    +   +
    +
    + getXAxis() + - Method in class com.technototes.library.control.GamepadDpad +
    +
    +
    Return x axis double (treating dpad as stick)
    +
    +
    + getXAxis() + - Method in class com.technototes.library.control.GamepadStick +
    +
     
    +
    + getXAxis() + - Method in interface com.technototes.library.control.Stick +
    +
    +
    Return x axis double
    +
    +
    + getXSupplier() + - Method in interface com.technototes.library.control.Stick +
    +
    +
    Return x axis supplier
    +
    +
    + getYAxis() + - Method in class com.technototes.library.control.GamepadDpad +
    +
    +
    Return y axis double (treating dpad as stick)
    +
    +
    + getYAxis() + - Method in class com.technototes.library.control.GamepadStick +
    +
     
    +
    + getYAxis() + - Method in interface com.technototes.library.control.Stick +
    +
    +
    Return y axis double
    +
    +
    + getYSupplier() + - Method in interface com.technototes.library.control.Stick +
    +
    +
    Return y axis supplier
    +
    +
    + green() + - Method in interface com.technototes.library.hardware.sensor.IColorSensor +
    +
    +
    Get the RGB green of the sensor
    +
    +
    + GREEN + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + gyroHeading() + - Method in interface com.technototes.library.hardware.sensor.IGyro +
    +
    +
    The heading (in default units)
    +
    +
    + gyroHeading() + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Get gyro heading
    +
    +
    + gyroHeading(AngleUnit) + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Get the gyro heading in the provided units
    +
    +
    + gyroHeadingInDegrees() + - Method in interface com.technototes.library.hardware.sensor.IGyro +
    +
    +
    The heading (in degrees)
    +
    +
    + gyroHeadingInDegrees() + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Gets the gyro heading in degrees
    +
    +
    + gyroHeadingInRadians() + - Method in interface com.technototes.library.hardware.sensor.IGyro +
    +
    +
    The heading (in radians)
    +
    +
    + gyroHeadingInRadians() + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Gets the gyro heading in radians
    +
    +
    + gyroSupplier + - Variable in class com.technototes.library.subsystem.drivebase.DrivebaseSubsystem +
    +
    +
    Override this to get the gyroscope heading.
    +
    +
    +

    H

    +
    +
    + HardwareBuilder<T> - Class in + com.technototes.library.hardware2 +
    +
    +
    TODO: Remove this.
    +
    +
    + HardwareBuilder(int) + - Constructor for class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + HardwareBuilder(String) + - Constructor for class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + HardwareBuilder(T) + - Constructor for class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + HardwareDevice<T + extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in + com.technototes.library.hardware +
    +
    +
    Deprecated.
    +
    +
    + HardwareDevice(String) + - Constructor for class com.technototes.library.hardware.HardwareDevice +
    +
    +
    Deprecated.
    +
    + Make a hardware device with the string to get from hardwaremap +
    +
    +
    + HardwareDevice(T) + - Constructor for class com.technototes.library.hardware.HardwareDevice +
    +
    +
    Deprecated.
    +
    Make a hardware device
    +
    +
    + HardwareDeviceGroup<T + extends + HardwareDevice> - Interface in + com.technototes.library.hardware +
    +
    +
    Deprecated.
    +
    +
    + hardwareMap + - Variable in class com.technototes.library.structure.CommandOpMode +
    +
     
    +
    + hardwareMap + - Static variable in class com.technototes.library.hardware.HardwareDevice +
    +
    +
    Deprecated.
    +
    Hardware map object for stuff
    +
    +
    + hsv() + - Method in interface com.technototes.library.hardware.sensor.IColorSensor +
    +
    +
    Get HSV as an int
    +
    +
    + hsvArray() + - Method in interface com.technototes.library.hardware.sensor.IColorSensor +
    +
     
    +
    + hue() + - Method in interface com.technototes.library.hardware.sensor.IColorSensor +
    +
    +
    Get HSV hue
    +
    +
    +

    I

    +
    +
    + IColorSensor + - Interface in + com.technototes.library.hardware.sensor +
    +
     
    +
    + IDistanceSensor + - Interface in + com.technototes.library.hardware.sensor +
    +
     
    +
    + idle(DcMotor.ZeroPowerBehavior) + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + ignoreCancel() + - Method in class com.technototes.library.command.CommandGroup +
    +
    +
    + Specify that this CommandGroup should NOT count cancellation as 'completed' +
    +
    +
    + IGyro + - Interface in + com.technototes.library.hardware.sensor +
    +
    +
    An interface for a single-angle gyroscope
    +
    +
    + ILightSensor + - Interface in + com.technototes.library.hardware.sensor +
    +
     
    +
    + imu(String) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + IMU + - Class in + com.technototes.library.hardware.sensor +
    +
    +
    + Class for the IMU (Inertial Movement Units) that implements the IGyro interface +
    +
    +
    + IMU(IMU, RevHubOrientationOnRobot.LogoFacingDirection, + RevHubOrientationOnRobot.UsbFacingDirection) + - Constructor for class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Make an imu
    +
    +
    + IMU(IMU, IMU.Parameters) + - Constructor for class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Make an imu
    +
    +
    + IMU(String, RevHubOrientationOnRobot.LogoFacingDirection, + RevHubOrientationOnRobot.UsbFacingDirection) + - Constructor for class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Make an imu
    +
    +
    + IMU(String, IMU.Parameters) + - Constructor for class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Make an imu
    +
    +
    + IMU.AxesSigns + - Enum Class in + com.technototes.library.hardware.sensor +
    +
    +
    The direction of the axes signs when remapping the axes
    +
    +
    + IMUBuilder + - Class in + com.technototes.library.hardware2 +
    +
    +
    TODO: Remove this.
    +
    +
    + IMUBuilder(BNO055IMUImpl) + - Constructor for class com.technototes.library.hardware2.IMUBuilder +
    +
    +
    Deprecated
    +
    +
    + IMUBuilder(String) + - Constructor for class com.technototes.library.hardware2.IMUBuilder +
    +
    +
    deprecated
    +
    +
    + IMUBuilder.AxesSigns + - Enum Class in + com.technototes.library.hardware2 +
    +
    +
    This is duplicated in the IMU class
    +
    +
    + incrementPosition(double) + - Method in class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +   +
    +
    + index() + - Element in annotation interface com.technototes.library.logger.Log.Boolean +
    +
    +
    Store index for this annotation (position in telemetry)
    +
    +
    + index() + - Element in annotation interface com.technototes.library.logger.Log +
    +
    +
    Store index for this annotation (position in telemetry)
    +
    +
    + index() + - Element in annotation interface com.technototes.library.logger.Log.Number +
    +
    +
    Store index for this annotation (position in telemetry)
    +
    +
    + INIT + - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState +
    +
     
    +
    + initEntries + - Variable in class com.technototes.library.logger.Logger +
    +
     
    +
    + initialize() + - Method in interface com.technototes.library.command.Command +
    +
    +
    Init the command
    +
    +
    + initialize() + - Method in class com.technototes.library.command.CommandGroup +
    +
    +
    Mark all commands in the group as not yet run
    +
    +
    + initialize(IMU.Parameters) + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Initialize the IMU
    +
    +
    + INITIALIZING + - Enum constant in enum class com.technototes.library.command.Command.CommandState +
    +
    +
    The command is initializing after having been triggered
    +
    +
    + initLoop() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Runs constantly when op mode is initialized, yet not started
    +
    +
    + initMap(HardwareMap) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + initUpdate() + - Method in class com.technototes.library.logger.Logger +
    +
    +
    Update the logged init items in temeletry
    +
    +
    + input() + - Method in class com.technototes.library.hardware2.DigitalBuilder +
    +
    +
    Don't use this in the future
    +
    +
    + inRange(double) + - Method in class com.technototes.library.util.Range +
    +
    +
    Check if the value is in the range
    +
    +
    + Integral + - Class in + com.technototes.library.util +
    +
    +
    A simple Observation-based integral calculator over time
    +
    +
    + Integral() + - Constructor for class com.technototes.library.util.Integral +
    +
    +
    Initialize it with a value of 0
    +
    +
    + Integral(double) + - Constructor for class com.technototes.library.util.Integral +
    +
    +
    Initialize it with the value c
    +
    +
    + INTERRUPTED + - Enum constant in enum class com.technototes.library.command.Command.CommandState +
    +
    +
    + The command is pending cancellation (but has not yet processed the cancellation) +
    +
    +
    + invert() + - Method in interface com.technototes.library.general.Invertable +
    +
    +
    Toggle inversion
    +
    +
    + invert() + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Invert the motor (toggle inversion)
    +
    +
    + invert() + - Method in class com.technototes.library.hardware.motor.Motor +
    +
    +
    Invert the motor (toggle inversion)
    +
    +
    + invert() + - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + Invertable<T + extends + Invertable<T>> - Interface in + com.technototes.library.general +
    +
    +
    Interface for anything that can be inverted
    +
    +
    + isAtPosition(double) + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Is the motor at the specified position
    +
    +
    + isAtTarget() + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + isCancelled() + - Method in interface com.technototes.library.command.Command +
    +
    +
    Exactly what it says
    +
    +
    + isDisabled() + - Method in interface com.technototes.library.general.Enablable +
    +
     
    +
    + isEnabled() + - Method in class com.technototes.library.control.ButtonBase +
    +
     
    +
    + isEnabled() + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Is the gamepad (and all bound commands from it!) enabled?
    +
    +
    + isEnabled() + - Method in class com.technototes.library.control.GamepadDpad +
    +
     
    +
    + isEnabled() + - Method in class com.technototes.library.control.GamepadStick +
    +
     
    +
    + isEnabled() + - Method in interface com.technototes.library.general.Enablable +
    +
     
    +
    + isFinished() + - Method in interface com.technototes.library.command.Command +
    +
    +
    Return if the command is finished
    +
    +
    + isFinished() + - Method in class com.technototes.library.command.CommandBase +
    +
    +
    Deprecated.
    +
    Is this command finished
    +
    +
    + isFinished() + - Method in class com.technototes.library.command.CommandGroup +
    +
    +
    MUST IMPLEMENT IN SUBCLASSES:
    +
    +
    + isFinished() + - Method in class com.technototes.library.command.ConditionalCommand +
    +
     
    +
    + isFinished() + - Method in class com.technototes.library.command.ParallelCommandGroup +
    +
     
    +
    + isFinished() + - Method in class com.technototes.library.command.ParallelDeadlineGroup +
    +
     
    +
    + isFinished() + - Method in class com.technototes.library.command.ParallelRaceGroup +
    +
    +
    Is this finished?
    +
    +
    + isFinished() + - Method in class com.technototes.library.command.SequentialCommandGroup +
    +
    +
    Returns if all the commands are finished
    +
    +
    + isFinished() + - Method in class com.technototes.library.command.WaitCommand +
    +
     
    +
    + isInverseToggled() + - Method in class com.technototes.library.control.ButtonBase +
    +
    +
    Returns if the button is untoggled
    +
    +
    + isJustInverseToggled() + - Method in class com.technototes.library.control.ButtonBase +
    +
    +
    Returns if the button is just untoggled
    +
    +
    + isJustPressed() + - Method in class com.technototes.library.control.ButtonBase +
    +
    +
    Returns if the button is just pressed
    +
    +
    + isJustReleased() + - Method in class com.technototes.library.control.ButtonBase +
    +
    +
    Returns if the button is just released
    +
    +
    + isJustToggled() + - Method in class com.technototes.library.control.ButtonBase +
    +
    +
    Returns if the button is just toggled
    +
    +
    + isPreRelease() + - Static method in class com.technototes.library.RobotLibrary +
    +
    +
    Get if the library is a pre release
    +
    +
    + isPressed() + - Method in class com.technototes.library.control.ButtonBase +
    +
    +
    Returns if the button is pressed
    +
    +
    + isPrime(int) + - Static method in class com.technototes.library.util.MathUtils +
    +
    +
    Calculate if the supplied number is prime
    +
    +
    + isReleased() + - Method in class com.technototes.library.control.ButtonBase +
    +
    +
    Returns if the button is released
    +
    +
    + isRumbling() + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Is the gamepad rumbling
    +
    +
    + isRunning() + - Method in interface com.technototes.library.command.Command +
    +
    +
    + Is the command in some state of running/started/finished/cancelled +
    +
    +
    + isState(CommandOpMode.OpModeState...) + - Method in enum class com.technototes.library.structure.CommandOpMode.OpModeState +
    +
    +
    Check if other states are this state
    +
    +
    + isToggled() + - Method in class com.technototes.library.control.ButtonBase +
    +
    +
    Returns if the button is toggled
    +
    +
    + IterativeCommand + - Class in + com.technototes.library.command +
    +
     
    +
    + IterativeCommand(Function<Integer, Command>, int) + - Constructor for class com.technototes.library.command.IterativeCommand +
    +
    +
    iterative command for an int
    +
    +
    + IterativeCommand(Function<Integer, Command>, int, BooleanSupplier) + - Constructor for class com.technototes.library.command.IterativeCommand +
    +
     
    +
    + IterativeCommand(Function<Integer, Command>, BooleanSupplier) + - Constructor for class com.technototes.library.command.IterativeCommand +
    +
     
    +
    + IterativeCommand(Function<T, Command>, T, T, Function<T, T>) + - Constructor for class com.technototes.library.command.IterativeCommand +
    +
    +
    iterative command for anything
    +
    +
    + IterativeCommand(Function<T, Command>, T, T, Function<T, T>, + BooleanSupplier) + - Constructor for class com.technototes.library.command.IterativeCommand +
    +
     
    +
    +

    J

    +
    +
    + joystickDrive(double, double, double) + - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem +
    +
     
    +
    + joystickDriveWithGyro(double, double, double, double) + - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem +
    +
     
    +
    + justFinished() + - Method in interface com.technototes.library.command.Command +
    +
    +
    Is this command finished?
    +
    +
    + justFinishedNoCancel() + - Method in interface com.technototes.library.command.Command +
    +
    +
    Is this command completed?
    +
    +
    + justStarted() + - Method in interface com.technototes.library.command.Command +
    +
    +
    Has the command just be started?
    +
    +
    +

    L

    +
    +
    + lastCommand + - Variable in class com.technototes.library.command.SequentialCommandGroup +
    +
     
    +
    + led(boolean) + - Method in class com.technototes.library.hardware2.ColorRangeBuilder +
    +
     
    +
    + left + - Variable in class com.technototes.library.control.GamepadDpad +
    +
    +
    The objects for the dpad buttons
    +
    +
    + LEFT_BUMPER + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    Left bumper button
    +
    +
    + LEFT_STICK_BUTTON + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    Button when clicking the left stick
    +
    +
    + LEFT_STICK_X + - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis +
    +
    +
    Left stick's horizontal axis
    +
    +
    + LEFT_STICK_Y + - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis +
    +
    +
    Left stick's vertical axis
    +
    +
    + LEFT_TRIGGER + - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis +
    +
    +
    Left Trigger's axis
    +
    +
    + leftBumper + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    + leftSide + - Variable in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem +
    +
    +
    Drive motors
    +
    +
    + leftStick + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The stick objects
    +
    +
    + leftStickButton + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    + leftStickX + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The axis objects
    +
    +
    + leftStickY + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The axis objects
    +
    +
    + leftTrigger + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The axis objects
    +
    +
    + LIGHT_GRAY + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + LIME + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + Log + - Annotation Interface in + com.technototes.library.logger +
    +
    +
    + The root annotation for annotation logging, also doubles as a basic string log +
    +
    +
    + Log.Boolean + - Annotation Interface in + com.technototes.library.logger +
    +
     
    +
    + Log.Logs + - Annotation Interface in + com.technototes.library.logger +
    +
     
    +
    + Log.Number + - Annotation Interface in + com.technototes.library.logger +
    +
    +
    Log a number
    +
    +
    + LogConfig + - Annotation Interface in + com.technototes.library.logger +
    +
    +
    Annotations for configuring Logs
    +
    +
    + LogConfig.AllowList + - Annotation Interface in + com.technototes.library.logger +
    +
    +
    Annotation for allowing Opmodes to log this item
    +
    +
    + LogConfig.DenyList + - Annotation Interface in + com.technototes.library.logger +
    +
    +
    Annotation for denying Opmodes to log this item
    +
    +
    + LogConfig.Disabled + - Annotation Interface in + com.technototes.library.logger +
    +
    +
    Annotation to completely disable the entry
    +
    +
    + LogConfig.Run + - Annotation Interface in + com.technototes.library.logger +
    +
    +
    + Annotation for determining when logged item will be sent to Telemetry +
    +
    +
    + Loggable + - Interface in + com.technototes.library.logger +
    +
    +
    + All classes with annotations for logging must extend this all the way up the + hierarchy up to the op mode +
    +
    +
    + Logger + - Class in + com.technototes.library.logger +
    +
    +
    The class to manage logging
    +
    +
    + Logger(OpMode) + - Constructor for class com.technototes.library.logger.Logger +
    +
    +
    Instantiate the logger
    +
    +
    +

    M

    +
    +
    + MAGENTA + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + map + - Static variable in interface com.technototes.library.util.SmartConsumer +
    +
    +
    The map of values that have been consumed.
    +
    +
    + map(double, double, double, double, double) + - Static method in class com.technototes.library.util.MathUtils +
    +
    +
    + Scale a value originally between in_min and in_max to be the same ratio when mapped + to out_min and out_max. +
    +
    +
    + MapUtils + - Class in + com.technototes.library.util +
    +
     
    +
    + MapUtils() + - Constructor for class com.technototes.library.util.MapUtils +
    +
     
    +
    + MathUtils + - Class in + com.technototes.library.util +
    +
    +
    Class with various math functions
    +
    +
    + MathUtils() + - Constructor for class com.technototes.library.util.MathUtils +
    +
     
    +
    + max + - Variable in class com.technototes.library.util.Range +
    +
    +
    The maximum value of the range
    +
    +
    + maxAcceleration + - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints +
    +
     
    +
    + maxSpeed + - Variable in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem +
    +
    +
    Max speed
    +
    +
    + maxVelocity + - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints +
    +
     
    +
    + middle() + - Method in class com.technototes.library.util.Range +
    +
    +
    Get the 'middle' of the range
    +
    +
    + min + - Variable in class com.technototes.library.util.Range +
    +
    +
    The minimum value of the range
    +
    +
    + mode(DcMotor.RunMode) + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + mode(DigitalChannel.Mode) + - Method in class com.technototes.library.hardware2.DigitalBuilder +
    +
    +
    Don't use this in the future
    +
    +
    + motor(int) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + motor(String) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + Motor<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in + com.technototes.library.hardware.motor +
    +
    +
    Class for motors
    +
    +
    + Motor(String) + - Constructor for class com.technototes.library.hardware.motor.Motor +
    +
    +
    Create a motor
    +
    +
    + Motor(T) + - Constructor for class com.technototes.library.hardware.motor.Motor +
    +
    +
    Create a motor
    +
    +
    + MotorBuilder + - Class in + com.technototes.library.hardware2 +
    +
    +
    TODO: Remove this.
    +
    +
    + MotorBuilder(int) + - Constructor for class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + MotorBuilder(DcMotorEx) + - Constructor for class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + MotorBuilder(String) + - Constructor for class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + MotorEncoder + - Class in + com.technototes.library.hardware.sensor.encoder +
    +
    +
    + Wraps a motor instance to provide corrected velocity counts and allow reversing + independently of the corresponding slot's motor direction +
    +
    +
    + MotorEncoder(DcMotorEx) + - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + MotorEncoder(DcMotorEx, ElapsedTime) + - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + MotorEncoder(EncodedMotor<DcMotorEx>) + - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + MotorEncoder(String) + - Constructor for class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + MotorEncoder.Direction + - Enum Class in + com.technototes.library.hardware.sensor.encoder +
    +
     
    +
    + MotorGroup<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in + com.technototes.library.hardware.motor +
    +
    +
    Class for a group of motors
    +
    +
    + MotorGroup(Motor<T>...) + - Constructor for class com.technototes.library.hardware.motor.MotorGroup +
    +
    +
    Make a motor group
    +
    +
    + MotorSubsystem<T + extends + Motor<?>> - Class in + com.technototes.library.subsystem.motor +
    +
    +
    Class for motor subsystems
    +
    +
    + MotorSubsystem(T) + - Constructor for class com.technototes.library.subsystem.motor.MotorSubsystem +
    +
    +
    Create motor subsystem
    +
    +
    + MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED + - Static variable in class com.technototes.library.structure.CommandOpMode +
    +
     
    +
    + msStuckDetectStop + - Variable in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Deprecated.
    +
    +
    +

    N

    +
    +
    + name + - Variable in class com.technototes.library.logger.entry.Entry +
    +
    +
    The name of the Entry
    +
    +
    + name() + - Element in annotation interface com.technototes.library.logger.Log.Boolean +
    +
    +
    Store the name for this annotation to be be beside
    +
    +
    + name() + - Element in annotation interface com.technototes.library.logger.Log +
    +
    +
    Store the name for this annotation to be be beside
    +
    +
    + name() + - Element in annotation interface com.technototes.library.logger.Log.Number +
    +
    +
    Store the name for this annotation to be be beside
    +
    +
    + NEUTRAL + - Enum constant in enum class com.technototes.library.util.Differential.DifferentialPriority +
    +
     
    +
    + NNN + - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns +
    +
    +
    Negative, Negative, Negative
    +
    +
    + NNN + - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns +
    +
    +
    deprecated
    +
    +
    + NNP + - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns +
    +
    +
    Negative, Negative, Positive
    +
    +
    + NNP + - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns +
    +
    +
    deprecated
    +
    +
    + NO_COLOR + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + NONE + - Enum constant in enum class com.technototes.library.util.Alliance +
    +
    +
    NO ALLIANCE SELECTED
    +
    +
    + NONE_ACTIVE + - Enum constant in enum class com.technototes.library.control.Binding.Type +
    +
     
    +
    + NPN + - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns +
    +
    +
    Negative, Positive, Negative
    +
    +
    + NPN + - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns +
    +
    +
    deprecated
    +
    +
    + NPP + - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns +
    +
    +
    Negative, Positive, Positive
    +
    +
    + NPP + - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns +
    +
    +
    deprecated
    +
    +
    + numberColor + - Variable in class com.technototes.library.logger.entry.NumberEntry +
    +
     
    +
    + NumberEntry + - Class in + com.technototes.library.logger.entry +
    +
     
    +
    + NumberEntry(String, Supplier<Number>, int) + - Constructor for class com.technototes.library.logger.entry.NumberEntry +
    +
     
    +
    +

    O

    +
    +
    + of(Pair<T, U>...) + - Static method in class com.technototes.library.util.MapUtils +
    +
     
    +
    + of(T, T) + - Static method in class com.technototes.library.util.Alliance.Selector +
    +
    +
    Selector factory method
    +
    +
    + offset + - Variable in class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + onlyIf(BooleanSupplier) + - Method in interface com.technototes.library.command.Command +
    +
    +
    Runs this command only if the choiceCondition is met (i.e.
    +
    +
    + onRange(double, double) + - Method in class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +
    Set servo range
    +
    +
    + onUnit(DistanceUnit) + - Method in class com.technototes.library.hardware.sensor.ColorDistanceSensor +
    +
     
    +
    + onUnit(DistanceUnit) + - Method in interface com.technototes.library.hardware.sensor.IDistanceSensor +
    +
     
    +
    + onUnit(DistanceUnit) + - Method in class com.technototes.library.hardware.sensor.Rev2MDistanceSensor +
    +
    +
    Deprecated.
    +
    Set the distance unit
    +
    +
    + ORANGE + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + output() + - Method in class com.technototes.library.hardware2.DigitalBuilder +
    +
    +
    Don't use this in the future
    +
    +
    +

    P

    +
    +
    + ParallelCommandGroup + - Class in + com.technototes.library.command +
    +
    +
    + Command group to run commands in parallel until all of them finish +
    +
    +
    + ParallelCommandGroup(Command...) + - Constructor for class com.technototes.library.command.ParallelCommandGroup +
    +
    +
    Make parallel command group
    +
    +
    + ParallelDeadlineGroup + - Class in + com.technototes.library.command +
    +
    +
    + Command group to run commands in parallel until one particular command completes +
    +
    +
    + ParallelDeadlineGroup(Command, Command...) + - Constructor for class com.technototes.library.command.ParallelDeadlineGroup +
    +
    +
    Make parallel deadline group
    +
    +
    + ParallelRaceGroup + - Class in + com.technototes.library.command +
    +
    +
    + Command group to run commands in parallel until *one* is finished +
    +
    +
    + ParallelRaceGroup(Command...) + - Constructor for class com.technototes.library.command.ParallelRaceGroup +
    +
    +
    Make parallel race group
    +
    +
    + parameter(Consumer<BNO055IMU.Parameters>) + - Method in class com.technototes.library.hardware2.IMUBuilder +
    +
    +
    Deprecated
    +
    +
    + periodic() + - Method in class com.technototes.library.control.ButtonBase +
    +
     
    +
    + periodic() + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    + Run the periodic functions for the controller (if the controller is enabled) +
    +
    +
    + periodic() + - Method in class com.technototes.library.control.GamepadDpad +
    +
     
    +
    + periodic() + - Method in class com.technototes.library.control.GamepadStick +
    +
     
    +
    + periodic() + - Method in interface com.technototes.library.general.Periodic +
    +
    +
    The periodic function
    +
    +
    + periodic() + - Method in class com.technototes.library.subsystem.DeviceSubsystem +
    +
     
    +
    + periodic() + - Method in interface com.technototes.library.subsystem.Subsystem +
    +
     
    +
    + Periodic + - Interface in + com.technototes.library.general +
    +
    +
    An interface for classes to have the periodic function
    +
    +
    + PINK + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + PNN + - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns +
    +
    +
    Positive, Negative, Negative
    +
    +
    + PNN + - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns +
    +
    +
    deprecated
    +
    +
    + PNP + - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns +
    +
    +
    Positive, Negative, Positive
    +
    +
    + PNP + - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns +
    +
    +
    deprecated
    +
    +
    + position(double) + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + positionThreshold + - Variable in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Deadzone for going to positions with encoder
    +
    +
    + PPN + - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns +
    +
    +
    Positive, Positive, Negative
    +
    +
    + PPN + - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns +
    +
    +
    deprecated
    +
    +
    + PPP + - Enum constant in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns +
    +
    +
    Positive, Positive, Positive
    +
    +
    + PPP + - Enum constant in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns +
    +
    +
    deprecated
    +
    +
    + priority + - Variable in class com.technototes.library.logger.entry.Entry +
    +
    +
    The priority (in the telemetry list) of the entry
    +
    +
    + priority() + - Element in annotation interface com.technototes.library.logger.Log.Boolean +
    +
    +
    + Store priority for this log entry (to pick the most wanted entry over others with + same index) +
    +
    +
    + priority() + - Element in annotation interface com.technototes.library.logger.Log.Number +
    +
    +
    + Store priority for this log entry (to pick the most wanted entry over others with + same index) +
    +
    +
    + priority() + - Element in annotation interface com.technototes.library.logger.Log +
    +
    +
    + Store priority for this log entry (to pick the most wanted entry over others with + same index) +
    +
    +
    + product + - Variable in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + propagate(double) + - Method in interface com.technototes.library.hardware.HardwareDeviceGroup +
    +
    +
    Deprecated.
    +
    Propagate actions across the followers
    +
    +
    + propogate(double) + - Method in interface com.technototes.library.hardware.HardwareDeviceGroup +
    +
    +
    Deprecated.
    +
    +
    + propogate(double) + - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup +
    +
     
    +
    + propogate(double) + - Method in class com.technototes.library.hardware.motor.MotorGroup +
    +
     
    +
    + propogate(double) + - Method in class com.technototes.library.hardware.servo.ServoGroup +
    +
    +
    Deprecated.
    +   +
    +
    + proportion + - Variable in class com.technototes.library.hardware.servo.ServoProfiler.Constraints +
    +
     
    +
    + ps_circle + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the PS4 game controller
    +
    +
    + PS_CIRCLE + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    PS4 Circle (O) button
    +
    +
    + ps_cross + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the PS4 game controller
    +
    +
    + PS_CROSS + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    PS4 Cross (X) button
    +
    +
    + ps_options + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the PS4 game controller
    +
    +
    + PS_OPTIONS + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    PS4 Options button
    +
    +
    + ps_share + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the PS4 game controller
    +
    +
    + PS_SHARE + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    PS4 Share button
    +
    +
    + ps_square + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the PS4 game controller
    +
    +
    + PS_SQUARE + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    PS4 Square button
    +
    +
    + ps_triangle + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the PS4 game controller
    +
    +
    + PS_TRIANGLE + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    PS4 Triangle button
    +
    +
    + PURPLE + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + pwmRange(double, double) + - Method in class com.technototes.library.hardware2.ServoBuilder +
    +
     
    +
    + pythag(double...) + - Static method in class com.technototes.library.util.MathUtils +
    +
    +
    Calculate pythagorean theorem of any number of sides
    +
    +
    +

    R

    +
    +
    + raceWith(Command...) + - Method in interface com.technototes.library.command.Command +
    +
    +
    + Runs all the commands in parallel (including this command) until one of them + finishes +
    +
    +
    + radians() + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Set angle format to radians
    +
    +
    + radians() + - Method in class com.technototes.library.hardware2.IMUBuilder +
    +
    +
    Deprecated
    +
    +
    + range(double, double) + - Method in class com.technototes.library.hardware2.ServoBuilder +
    +
     
    +
    + Range + - Class in + com.technototes.library.util +
    +
    +
    Helper class for tracking a range
    +
    +
    + Range(double, double) + - Constructor for class com.technototes.library.util.Range +
    +
    +
    Create a range with the given minimum and maximum
    +
    +
    + raw() + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + red() + - Method in interface com.technototes.library.hardware.sensor.IColorSensor +
    +
    +
    Get the RGB red of the sensor
    +
    +
    + RED + - Enum constant in enum class com.technototes.library.util.Alliance +
    +
    +
    RED alliance selector
    +
    +
    + RED + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + RED_SQUARE + - Static variable in class com.technototes.library.util.Characters +
    +
     
    +
    + register() + - Method in interface com.technototes.library.subsystem.Subsystem +
    +
     
    +
    + register(Periodic) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Register a periodic function to be run once each schedule loop +
    +
    +
    + remap(AxesOrder, IMUBuilder.AxesSigns) + - Method in class com.technototes.library.hardware2.IMUBuilder +
    +
    +
    Deprecated
    +
    +
    + remapAxesAndSigns(AxesOrder, IMU.AxesSigns) + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Remaps the axes for the IMU in the order and sign provided.
    +
    +
    + remapLegacyAxes(AxesOrder, IMU.AxesSigns) + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    + Remaps the axes for the BNO055 IMU in the order and sign provided The SDK 8.1.1 + added a new IMU class, which (delightfully) rotated the X and Y axes around the Z + axis by 90 degrees clock-wise (viewed from above) If you have code that was using + that layout, this is what you probably need to call. +
    +
    +
    + repeat(String, int) + - Static method in class com.technototes.library.logger.Logger +
    +
    +
    Repeat a String
    +
    +
    + requestOpModeStop() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
     
    +
    + requirementMap + - Static variable in interface com.technototes.library.command.Command +
    +
    +
    The Command to Required Subsystems lookup
    +
    +
    + reset() + - Static method in interface com.technototes.library.util.SmartConsumer +
    +
     
    +
    + RESET + - Enum constant in enum class com.technototes.library.command.Command.CommandState +
    +
    +
    The command has just be scheduled
    +
    +
    + resetDeviceConfigurationForOpMode() + - Method in class com.technototes.library.hardware.DummyDevice +
    +
     
    +
    + resetScheduler() + - Static method in class com.technototes.library.command.CommandScheduler +
    +
    +
    Alex had a comment "be careful with this" and he's not wrong.
    +
    +
    + Rev2MDistanceSensor + - Class in + com.technototes.library.hardware.sensor +
    +
    +
    Deprecated.
    +
    +
    + Rev2MDistanceSensor(DistanceSensor) + - Constructor for class com.technototes.library.hardware.sensor.Rev2MDistanceSensor +
    +
    +
    Deprecated.
    +
    Create a range sensor
    +
    +
    + Rev2MDistanceSensor(String) + - Constructor for class com.technototes.library.hardware.sensor.Rev2MDistanceSensor +
    +
    +
    Deprecated.
    +
    Create a range sensor
    +
    +
    + reverse() + - Method in class com.technototes.library.hardware2.CRServoBuilder +
    +
     
    +
    + reverse() + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + reverse() + - Method in class com.technototes.library.hardware2.ServoBuilder +
    +
     
    +
    + REVERSE + - Enum constant in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction +
    +
     
    +
    + rgb() + - Method in interface com.technototes.library.hardware.sensor.IColorSensor +
    +
     
    +
    + right + - Variable in class com.technototes.library.control.GamepadDpad +
    +
    +
    The objects for the dpad buttons
    +
    +
    + RIGHT_BUMPER + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    Right bumper button
    +
    +
    + RIGHT_STICK_BUTTON + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    Button which clicking the right stick
    +
    +
    + RIGHT_STICK_X + - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis +
    +
    +
    Right stick's horizontal axis
    +
    +
    + RIGHT_STICK_Y + - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis +
    +
    +
    Right stick's vertical axis
    +
    +
    + RIGHT_TRIGGER + - Enum constant in enum class com.technototes.library.control.GamepadBase.Axis +
    +
    +
    Right Trigger's axis
    +
    +
    + rightBumper + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    + rightSide + - Variable in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem +
    +
    +
    Drive motors
    +
    +
    + rightStick + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The stick objects
    +
    +
    + rightStickButton + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for both the XBox and PS4 controllers
    +
    +
    + rightStickX + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The axis objects
    +
    +
    + rightStickY + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The axis objects
    +
    +
    + rightTrigger + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The axis objects
    +
    +
    + rlMotor + - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem +
    +
    +
    Drive motors
    +
    +
    + RobotLibrary + - Class in + com.technototes.library +
    +
    +
    + Root class for the Robot Library (I will put important stuff here) +
    +
    +
    + RobotLibrary() + - Constructor for class com.technototes.library.RobotLibrary +
    +
     
    +
    + rrMotor + - Variable in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem +
    +
    +
    Drive motors
    +
    +
    + rumble() + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Rumble for about 1/8th of a second
    +
    +
    + rumble(double) + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Rumble the gamepad for 'seconds'
    +
    +
    + rumbleBlip() + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Run a single "RumbleBlip"
    +
    +
    + rumbleBlips(int) + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Run a bunch of "RumbleBlips"
    +
    +
    + run() + - Method in interface com.technototes.library.command.Command +
    +
    +
    Run the commmand
    +
    +
    + run() + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + This is invoked from inside the CommandOpMode method, during the opCode. +
    +
    +
    + RUN + - Enum constant in enum class com.technototes.library.structure.CommandOpMode.OpModeState +
    +
     
    +
    + runEntries + - Variable in class com.technototes.library.logger.Logger +
    +
     
    +
    + runLoop() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Runs constantly when op mode is started
    +
    +
    + runOpMode() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
     
    +
    + runUpdate() + - Method in class com.technototes.library.logger.Logger +
    +
    +
    Update the logged run items in temeletry
    +
    +
    +

    S

    +
    +
    + saturation() + - Method in interface com.technototes.library.hardware.sensor.IColorSensor +
    +
    +
    Get HSV saturation
    +
    +
    + scale(double) + - Method in class com.technototes.library.util.Range +
    +
    +
    Scale the range by a given value
    +
    +
    + scalePWM(double, double) + - Method in class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +   +
    +
    + schedule(Command) + - Method in class com.technototes.library.command.CommandGroup +
    +
    +
    + This should schedule the command as part of this command group, I think. +
    +
    +
    + schedule(Command) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    Schedule a command to run
    +
    +
    + schedule(Command) + - Method in class com.technototes.library.command.ParallelCommandGroup +
    +
     
    +
    + schedule(Command) + - Method in class com.technototes.library.command.ParallelDeadlineGroup +
    +
    +
    + Add another command to the group to be run while waiting for the 'deadline' command + to finish +
    +
    +
    + schedule(Command) + - Method in class com.technototes.library.command.ParallelRaceGroup +
    +
    +
    + Add one more command to the list of commands that will be run at the same time +
    +
    +
    + schedule(Command) + - Method in class com.technototes.library.command.SequentialCommandGroup +
    +
    +
    + This allows you to append another command to the Sequential Command Group +
    +
    +
    + schedule(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    Schedule the command to run
    +
    +
    + schedule(Command, BooleanSupplier) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    Register a command to be scheduled.
    +
    +
    + schedule(BooleanSupplier, Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    Schedule the command to run over & over
    +
    +
    + schedule(Consumer<Boolean>) + - Method in class com.technototes.library.control.CommandButton +
    +
     
    +
    + schedule(Function<Boolean, Command>) + - Method in class com.technototes.library.control.CommandButton +
    +
     
    +
    + schedule(Function<Double, Command>) + - Method in class com.technototes.library.control.CommandAxis +
    +
     
    +
    + scheduleAfterOther(Command, Command) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Schedule the 'other' command (the second one) when the 'dependency' command has + finished (but *not* been cancelled!). +
    +
    +
    + scheduleAfterOther(Command, Command, BooleanSupplier) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Schedule the 'other' command (the second one) when the 'dependency' command has + finished (but *not* been cancelled!) *and* 'additionalCondition' is true. +
    +
    +
    + scheduleDefault(Command, Subsystem) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    Schedule the default command for a given subsystem.
    +
    +
    + scheduleDpad(BiConsumer<Double, Double>) + - Method in class com.technototes.library.control.CommandGamepad +
    +
     
    +
    + scheduleDpad(BiFunction<Double, Double, Command>) + - Method in class com.technototes.library.control.CommandGamepad +
    +
     
    +
    + scheduleForState(Command, CommandOpMode.OpModeState...) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Schedule a command to be run when the OpMode is one of the provided list of states. +
    +
    +
    + scheduleForState(Command, BooleanSupplier, CommandOpMode.OpModeState...) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Schedule a command to be run when the OpMode is one of the provided list of states + and the 'supplier' boolean function is also true. +
    +
    +
    + scheduleInit(Command) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Schedule a command to be run recurringly during the 'Init' phase of an opmode. +
    +
    +
    + scheduleInit(Command, BooleanSupplier) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Schedule a command to be run recurringly during the 'Init' phase of an opmode. +
    +
    +
    + scheduleJoystick(Command) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Schedules a command to be run during Run and End states, all the time. +
    +
    +
    + scheduleJoystick(Command, BooleanSupplier) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Schedules a command to be run during Run and End states, all the time. +
    +
    +
    + scheduleLeftStick(BiConsumer<Double, Double>) + - Method in class com.technototes.library.control.CommandGamepad +
    +
     
    +
    + scheduleLeftStick(BiFunction<Double, Double, Command>) + - Method in class com.technototes.library.control.CommandGamepad +
    +
     
    +
    + scheduleOnce(Command) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    Schedule a command to run
    +
    +
    + scheduleOnceForState(Command, CommandOpMode.OpModeState) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    Schedule a command to run during a particular OpModeState
    +
    +
    + schedulePressed(Function<DoubleSupplier, Command>) + - Method in class com.technototes.library.control.CommandAxis +
    +
     
    +
    + scheduleRightStick(BiConsumer<Double, Double>) + - Method in class com.technototes.library.control.CommandGamepad +
    +
     
    +
    + scheduleRightStick(BiFunction<Double, Double, Command>) + - Method in class com.technototes.library.control.CommandGamepad +
    +
     
    +
    + scheduleStick(Stick, BiConsumer<Double, Double>) + - Method in class com.technototes.library.control.CommandGamepad +
    +
     
    +
    + scheduleStick(Stick, BiFunction<Double, Double, Command>) + - Method in class com.technototes.library.control.CommandGamepad +
    +
     
    +
    + scheduleWithOther(Command, Command) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Schedule the 'other' command (the second one) when the 'dependency' command has just + started. +
    +
    +
    + scheduleWithOther(Command, Command, BooleanSupplier) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    + Schedule the 'other' command (the second one) when the 'dependency' command has just + started *and* 'additionalCondition' is also true. +
    +
    +
    + select(Alliance) + - Method in class com.technototes.library.util.Alliance.Selector +
    +
    +
    Select the red or blue item based on the Alliance
    +
    +
    + selectOf(Alliance, T, T) + - Static method in class com.technototes.library.util.Alliance.Selector +
    +
    +
    Based on Alliance, choose red or blue
    +
    +
    + selectOf(T, T) + - Method in enum class com.technototes.library.util.Alliance +
    +
    +
    Select either 'a' or 'b' depending on alliance
    +
    +
    + Selector(T, T) + - Constructor for class com.technototes.library.util.Alliance.Selector +
    +
    +
    Create a Selelector for red/blue
    +
    +
    + Sensor<T + extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in + com.technototes.library.hardware.sensor +
    +
    +
    Deprecated.
    +
    +
    + Sensor(String) + - Constructor for class com.technototes.library.hardware.sensor.Sensor +
    +
    +
    Deprecated.
    +
    Create sensor
    +
    +
    + Sensor(T) + - Constructor for class com.technototes.library.hardware.sensor.Sensor +
    +
    +
    Deprecated.
    +
    Create a sensor
    +
    +
    + Sensored + - Interface in + com.technototes.library.hardware +
    +
    +
    Deprecated.
    +
    +
    + SequentialCommandGroup + - Class in + com.technototes.library.command +
    +
    +
    A grouping command which runs a list of commands in sequence
    +
    +
    + SequentialCommandGroup(Command...) + - Constructor for class com.technototes.library.command.SequentialCommandGroup +
    +
    +
    Make sequential command group.
    +
    +
    + servo(int) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + servo(String) + - Static method in class com.technototes.library.hardware2.HardwareBuilder +
    +
    +
    Deprecated
    +
    +
    + Servo + - Class in + com.technototes.library.hardware.servo +
    +
    +
    Deprecated.
    +
    +
    + Servo(Servo) + - Constructor for class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +
    Create servo object
    +
    +
    + Servo(String) + - Constructor for class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +
    Create servo object
    +
    +
    + ServoBuilder + - Class in + com.technototes.library.hardware2 +
    +
    +
    TODO: Remove this.
    +
    +
    + ServoBuilder(int) + - Constructor for class com.technototes.library.hardware2.ServoBuilder +
    +
     
    +
    + ServoBuilder(Servo) + - Constructor for class com.technototes.library.hardware2.ServoBuilder +
    +
     
    +
    + ServoBuilder(String) + - Constructor for class com.technototes.library.hardware2.ServoBuilder +
    +
     
    +
    + ServoGroup + - Class in + com.technototes.library.hardware.servo +
    +
    +
    Deprecated.
    +
    +
    + ServoGroup(Servo...) + - Constructor for class com.technototes.library.hardware.servo.ServoGroup +
    +
    +
    Deprecated.
    +
    Create a servo group
    +
    +
    + ServoProfiler + - Class in + com.technototes.library.hardware.servo +
    +
     
    +
    + ServoProfiler(Servo) + - Constructor for class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + ServoProfiler.Constraints + - Class in + com.technototes.library.hardware.servo +
    +
     
    +
    + ServoSubsystem + - Class in + com.technototes.library.subsystem.servo +
    +
    +
    Class for servo subsystems
    +
    +
    + ServoSubsystem(Servo) + - Constructor for class com.technototes.library.subsystem.servo.ServoSubsystem +
    +
    +
    Create servo subsystem
    +
    +
    + ServoSubsystem(Servo...) + - Constructor for class com.technototes.library.subsystem.servo.ServoSubsystem +
    +
     
    +
    + set(double) + - Method in class com.technototes.library.util.Integral +
    +
    +
    Set the value to C
    +
    +
    + setAverageOutput(double) + - Method in class com.technototes.library.util.Differential +
    +
    +
    Set the average of the differential.
    +
    +
    + setConstraints(double, double, double) + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + setConstraints(ServoProfiler.Constraints) + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + setDefaultCommand(Command) + - Method in interface com.technototes.library.subsystem.Subsystem +
    +
     
    +
    + setDeviationOutput(double) + - Method in class com.technototes.library.util.Differential +
    +
    +
    Set the deviation of the differential.
    +
    +
    + setDirection(MotorEncoder.Direction) + - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
    +
    + Allows you to set the direction of the counts and velocity without modifying the + motor's direction state +
    +
    +
    + setEnabled(boolean) + - Method in class com.technototes.library.control.ButtonBase +
    +
     
    +
    + setEnabled(boolean) + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    + Enable/disable the gamepad (and all potentially bound commands!) +
    +
    +
    + setEnabled(boolean) + - Method in class com.technototes.library.control.GamepadDpad +
    +
     
    +
    + setEnabled(boolean) + - Method in class com.technototes.library.control.GamepadStick +
    +
     
    +
    + setEnabled(boolean) + - Method in interface com.technototes.library.general.Enablable +
    +
    +
    Set whether or not the device is enabled
    +
    +
    + setEncoder(Encoder) + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Explicitly set the encoder for the motor
    +
    +
    + setHeading(double) + - Method in interface com.technototes.library.hardware.sensor.IGyro +
    +
    +
    Sets the current heading (in default units)
    +
    +
    + setHeading(double) + - Method in class com.technototes.library.hardware.sensor.IMU +
    +
    +
    Sets the current heading to be 'new heading'
    +
    +
    + setIndex(int) + - Method in class com.technototes.library.logger.entry.Entry +
    +
    +
    Set index
    +
    +
    + setInverted(boolean) + - Method in class com.technototes.library.control.ButtonBase +
    +
     
    +
    + setInverted(boolean) + - Method in class com.technototes.library.control.CommandAxis +
    +
     
    +
    + setInverted(boolean) + - Method in class com.technototes.library.control.CommandButton +
    +
     
    +
    + setInverted(boolean) + - Method in interface com.technototes.library.general.Invertable +
    +
    +
    + Set the inversion (true -> Is inverted, false -> Not inverted) +
    +
    +
    + setInverted(boolean) + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Set the Inverted state for the motor.
    +
    +
    + setInverted(boolean) + - Method in class com.technototes.library.hardware.motor.Motor +
    +
    +
    Set the Inverted state for the motor.
    +
    +
    + setInverted(boolean) + - Method in class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +   +
    +
    + setLimits(double, double) + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
     
    +
    + setLimits(double, double) + - Method in class com.technototes.library.hardware.motor.Motor +
    +
    +
    + Sets the min & max values for the motor power (still clipped to -1/1) +
    +
    +
    + setLimits(double, double) + - Method in class com.technototes.library.util.Differential +
    +
    +
    Set the limits for the differential
    +
    +
    + setMaxSpeed(double) + - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem +
    +
    +
    Set the max speed for the subsystem
    +
    +
    + setOpMode(CommandOpMode) + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    Set the scheduler's opmode
    +
    +
    + setOutputs(double, double) + - Method in class com.technototes.library.util.Differential +
    +
    +
    Set both outputs for the differential
    +
    +
    + setPIDFCoeffecients(double, double, double, double) + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Configure the PIDF constants for the motor
    +
    +
    + setPIDFCoeffecients(PIDFCoefficients) + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Configure the PIDF constants for the motor
    +
    +
    + setPosition(double) + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Set the position of the motor
    +
    +
    + setPosition(double) + - Method in class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +
    Set servo position
    +
    +
    + setPosition(double) + - Method in class com.technototes.library.hardware.servo.ServoGroup +
    +
    +
    Deprecated.
    +   +
    +
    + setPosition(double) + - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem +
    +
    +
    Set position for subsystem with existing max speed
    +
    +
    + setPosition(double) + - Method in class com.technototes.library.subsystem.servo.ServoSubsystem +
    +
    +
    Set servo subsystem position
    +
    +
    + setPosition(double, double) + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    + Set the power for the motor to try to get to the position specified. +
    +
    +
    + setPosition(double, double) + - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup +
    +
     
    +
    + setPosition(double, double) + - Method in class com.technototes.library.subsystem.motor.EncodedMotorSubsystem +
    +
    +
    Set position for subsystem
    +
    +
    + setPriority(int) + - Method in class com.technototes.library.logger.entry.Entry +
    +
    +
    + Set's the priority for this log line (handy for telemetry overflow) +
    +
    +
    + setPriority(Differential.DifferentialPriority) + - Method in class com.technototes.library.util.Differential +
    +
    +
    Sets the priority for the differential.
    +
    +
    + setRunMode(DcMotor.RunMode) + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Set the runmode for the motor
    +
    +
    + setServoRange(double) + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + setSpeed(double) + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Sets the (clipped) speed for the motor
    +
    +
    + setSpeed(double) + - Method in class com.technototes.library.hardware.motor.Motor +
    +
    +
    Set speed of motor
    +
    +
    + setSpeed(double) + - Method in class com.technototes.library.hardware.motor.MotorGroup +
    +
     
    +
    + setSpeed(double) + - Method in class com.technototes.library.subsystem.motor.MotorSubsystem +
    +
    +
    Set the speed of the primary motors in subsystem
    +
    +
    + setState(Command.CommandState) + - Method in interface com.technototes.library.command.Command +
    +
    +
    Set the command state: DEFINITELY DO NOT USE THIS!
    +
    +
    + setTargetPosition(double) + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + setTargetTolerance(double) + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + setTriggerThreshold(double) + - Method in class com.technototes.library.control.AxisBase +
    +
    +
    Set threshold
    +
    +
    + setTriggerThreshold(double) + - Method in class com.technototes.library.control.CommandAxis +
    +
     
    +
    + setVelocity(double) + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Set velocity of motor in tps
    +
    +
    + setVelocity(double) + - Method in class com.technototes.library.hardware.motor.EncodedMotorGroup +
    +
     
    +
    + setVolume(float) + - Method in class com.technototes.library.hardware.Speaker +
    +
    +
    Deprecated.
    +   +
    +
    + SimpleMecanumDrivebaseSubsystem<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in + com.technototes.library.subsystem.drivebase +
    +
    +
    Class for mecanum/xdrive drivebases
    +
    +
    + SimpleMecanumDrivebaseSubsystem(Motor<T>, Motor<T>, Motor<T>, + Motor<T>) + - Constructor for class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem +
    +
    +
    Create mecanum drivebase
    +
    +
    + SimpleMecanumDrivebaseSubsystem(DoubleSupplier, Motor<T>, Motor<T>, + Motor<T>, Motor<T>) + - Constructor for class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem +
    +
    +
    Create mecanum drivebase
    +
    +
    + sleep(double) + - Method in interface com.technototes.library.command.Command +
    +
    +
    Delay the command for some time
    +
    +
    + sleep(DoubleSupplier) + - Method in interface com.technototes.library.command.Command +
    +
    +
    Delay the command for some time
    +
    +
    + SmartConsumer<T> - Interface in + com.technototes.library.util +
    +
    +
    + This is a functional interface, when 'accept' is invoked, will only invoke the + 'consume' method when a different value is provided. +
    +
    +
    + SOME_ACTIVE + - Enum constant in enum class com.technototes.library.control.Binding.Type +
    +
     
    +
    + Speaker + - Class in + com.technototes.library.hardware +
    +
    +
    Deprecated.
    +
    +
    + Speaker(float, String...) + - Constructor for class com.technototes.library.hardware.Speaker +
    +
    +
    Deprecated.
    +   +
    +
    + Speaker(String...) + - Constructor for class com.technototes.library.hardware.Speaker +
    +
    +
    Deprecated.
    +   +
    +
    + start(String) + - Method in class com.technototes.library.hardware.Speaker +
    +
    +
    Deprecated.
    +   +
    +
    + startAt(double) + - Method in class com.technototes.library.hardware.servo.Servo +
    +
    +
    Deprecated.
    +
    Set position for the servo and return this
    +
    +
    + startAt(double) + - Method in class com.technototes.library.hardware.servo.ServoGroup +
    +
    +
    Deprecated.
    +   +
    +
    + STARTED + - Enum constant in enum class com.technototes.library.command.Command.CommandState +
    +
    +
    The command has been triggered
    +
    +
    + stateMap + - Static variable in interface com.technototes.library.command.Command +
    +
    +
    The Command to Current State of the Command lookup
    +
    +
    + Stick + - Interface in + com.technototes.library.control +
    +
    +
    Interface for objects that behave as sticks
    +
    +
    + stickButton + - Variable in class com.technototes.library.control.GamepadStick +
    +
    +
    The objects for the stick button
    +
    +
    + stop() + - Method in class com.technototes.library.hardware.Speaker +
    +
    +
    Deprecated.
    +   +
    +
    + stop() + - Method in class com.technototes.library.subsystem.drivebase.SimpleMecanumDrivebaseSubsystem +
    +
     
    +
    + stop() + - Method in class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem +
    +
     
    +
    + stop() + - Method in class com.technototes.library.subsystem.motor.MotorSubsystem +
    +
     
    +
    + stopRumble() + - Method in class com.technototes.library.control.GamepadBase +
    +
    +
    Stop rumbling on the gamepad
    +
    +
    + StringEntry + - Class in + com.technototes.library.logger.entry +
    +
     
    +
    + StringEntry(String, Supplier<String>, int, String) + - Constructor for class com.technototes.library.logger.entry.StringEntry +
    +
     
    +
    + Subsystem + - Interface in + com.technototes.library.subsystem +
    +
     
    +
    + supplier + - Variable in class com.technototes.library.logger.entry.Entry +
    +
    +
    The function called to get the value to display
    +
    +
    +

    T

    +
    +
    + TankDrivebaseSubsystem<T + extends com.qualcomm.robotcore.hardware.DcMotorSimple> - Class in + com.technototes.library.subsystem.drivebase +
    +
    +
    Class for drivebase subsystems
    +
    +
    + TankDrivebaseSubsystem(Motor<T>, Motor<T>) + - Constructor for class com.technototes.library.subsystem.drivebase.TankDrivebaseSubsystem +
    +
    +
    Create tank drivebase
    +
    +
    + tare() + - Method in class com.technototes.library.hardware.motor.EncodedMotor +
    +
    +
    Zero the encoder
    +
    +
    + tare() + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + telemetry + - Variable in class com.technototes.library.structure.CommandOpMode +
    +
     
    +
    + terminate() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
     
    +
    + terminateOpMode() + - Method in class com.technototes.library.command.CommandScheduler +
    +
    +
    Forcefully halt the opmode
    +
    +
    + timeMap + - Static variable in interface com.technototes.library.command.Command +
    +
    +
    The Command to Total Time Spent Running lookup
    +
    +
    + toggle(Command, Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    + For scheduling a pair of "opposite" commands for toggling when something is or is + not being toggled +
    +
    +
    + toggleEnabled() + - Method in interface com.technototes.library.general.Enablable +
    +
    +
    Toggle whether this object is enabled or not
    +
    +
    + tolerance(int) + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    + toString() + - Method in class com.technototes.library.logger.entry.BooleanEntry +
    +
     
    +
    + toString() + - Method in class com.technototes.library.logger.entry.Entry +
    +
    +
    The String for the logged item
    +
    +
    + toString() + - Method in class com.technototes.library.logger.entry.NumberEntry +
    +
     
    +
    + toString() + - Method in class com.technototes.library.logger.entry.StringEntry +
    +
     
    +
    + translateTargetPosition(double) + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + trueValue() + - Element in annotation interface com.technototes.library.logger.Log.Boolean +
    +
    +
    Store the string when the annotated method returns true
    +
    +
    +

    U

    +
    +
    + universalLoop() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Runs constantly during all periods
    +
    +
    + up + - Variable in class com.technototes.library.control.GamepadDpad +
    +
    +
    The objects for the dpad buttons
    +
    +
    + update() + - Method in class com.technototes.library.hardware.servo.ServoProfiler +
    +
     
    +
    + update(double) + - Method in class com.technototes.library.util.Integral +
    +
    +
    + Update the accumulated value for the number of seconds since last update +
    +
    +
    + uponInit() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Runs once when op mode is initialized
    +
    +
    + uponStart() + - Method in class com.technototes.library.structure.CommandOpMode +
    +
    +
    Runs once when op mode is started
    +
    +
    +

    V

    +
    +
    + value() + - Method in interface com.technototes.library.hardware.sensor.IColorSensor +
    +
    +
    Get HSV value (not entire HSV, just 'V')
    +
    +
    + value() + - Element in annotation interface com.technototes.library.logger.Log.Logs +
    +
     
    +
    + value() + - Element in annotation interface com.technototes.library.logger.LogConfig.AllowList +
    +
    +
    The allowed opmodes
    +
    +
    + value() + - Element in annotation interface com.technototes.library.logger.LogConfig.DenyList +
    +
    +
    The denied opmodes
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.library.command.Command.CommandState +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.library.control.Binding.Type +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.library.control.GamepadBase.Axis +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.library.structure.CommandOpMode.OpModeState +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.library.util.Alliance +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.library.util.Color +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + valueOf(String) + - Static method in enum class com.technototes.library.util.Differential.DifferentialPriority +
    +
    +
    + Returns the enum constant of this class with the specified name. +
    +
    +
    + values() + - Static method in enum class com.technototes.library.command.Command.CommandState +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + values() + - Static method in enum class com.technototes.library.control.Binding.Type +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + values() + - Static method in enum class com.technototes.library.control.GamepadBase.Axis +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + values() + - Static method in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + values() + - Static method in enum class com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + values() + - Static method in enum class com.technototes.library.hardware.sensor.IMU.AxesSigns +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + values() + - Static method in enum class com.technototes.library.hardware2.IMUBuilder.AxesSigns +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + values() + - Static method in enum class com.technototes.library.structure.CommandOpMode.OpModeState +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + values() + - Static method in enum class com.technototes.library.util.Alliance +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + values() + - Static method in enum class com.technototes.library.util.Color +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + values() + - Static method in enum class com.technototes.library.util.Differential.DifferentialPriority +
    +
    +
    + Returns an array containing the constants of this enum class, in the order they are + declared. +
    +
    +
    + velocity(PIDFCoefficients) + - Method in class com.technototes.library.hardware2.MotorBuilder +
    +
     
    +
    +

    W

    +
    +
    + WaitCommand + - Class in + com.technototes.library.command +
    +
    +
    A command to do nothing but wait for a span of time.
    +
    +
    + WaitCommand(double) + - Constructor for class com.technototes.library.command.WaitCommand +
    +
    +
    Create a wait command for a fixed number of seconds
    +
    +
    + WaitCommand(DoubleSupplier) + - Constructor for class com.technototes.library.command.WaitCommand +
    +
    +
    + Create a wait command for a number of seconds that can be calculated when the + commannd is triggered +
    +
    +
    + waitUntil(BooleanSupplier) + - Method in interface com.technototes.library.command.Command +
    +
    +
    After this command, wait until the condition function is true
    +
    +
    + whenInverseToggled(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    + Schedule the command to be run when the input has only stopped being toggled +
    +
    +
    + whenPressed(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    Schedule a command to be run once the input is pressed.
    +
    +
    + whenPressedReleased(Command, Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    + For scheduling a pair commands for when the input is pressed and released. +
    +
    +
    + whenReleased(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    Schedule a command to be run once the input is released.
    +
    +
    + whenToggled(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    + Schedule a command to be run when the input was just toggled (From pressed to + released, or released to pressed) +
    +
    +
    + whileInverseToggled(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    + Schedule the command to run over & over while the input is *not* changing It + will be canceled once the input is toggled. +
    +
    +
    + whilePressed(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    + Schedule a command to be run over & over while the input is pressed, but once + it's released, the command will be cancelled. +
    +
    +
    + whilePressedContinuous(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    + Schedule a command to be run over & over while the input is pressed +
    +
    +
    + whilePressedOnce(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    + Schedule a command to be run while the input is pressed, but only once, and if the + command takes so long that the input is released, the command will be cancelled. +
    +
    +
    + whilePressedReleased(Command, Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    + For scheduling a pair commands for while the input is pressed and released. +
    +
    +
    + whileReleased(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    + Schedule a command to be run over & over while the input is released, but once + it's pressed, the command will be cancelled. +
    +
    +
    + whileReleasedOnce(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    + Schdule the command to be run when the input is released, but only once! +
    +
    +
    + whileToggled(Command) + - Method in interface com.technototes.library.control.CommandInput +
    +
    +
    Schedule the command to be run while the input is changing.
    +
    +
    + WHITE + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    + withTimeout(double) + - Method in interface com.technototes.library.command.Command +
    +
    +
    + Runs this command until it either finishes, or the timeout has elapsed +
    +
    +
    +

    X

    +
    +
    + x + - Variable in class com.technototes.library.logger.entry.Entry +
    +
    +
    The index (in the list) of the entry
    +
    +
    + xAxis + - Variable in class com.technototes.library.control.GamepadStick +
    +
    +
    The objects for the stick axis
    +
    +
    + xbox_a + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the XBox game controller
    +
    +
    + XBOX_A + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    XBox A button
    +
    +
    + xbox_b + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the XBox game controller
    +
    +
    + XBOX_B + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    XBox B button
    +
    +
    + xbox_back + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the XBox game controller
    +
    +
    + XBOX_BACK + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    XBox Back button
    +
    +
    + xbox_start + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the XBox game controller
    +
    +
    + XBOX_START + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    XBox Start button
    +
    +
    + xbox_x + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the XBox game controller
    +
    +
    + XBOX_X + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    XBox X button
    +
    +
    + xbox_y + - Variable in class com.technototes.library.control.GamepadBase +
    +
    +
    The button objects for the XBox game controller
    +
    +
    + XBOX_Y + - Enum constant in enum class com.technototes.library.control.GamepadBase.Button +
    +
    +
    XBox Y button
    +
    +
    +

    Y

    +
    +
    + yAxis + - Variable in class com.technototes.library.control.GamepadStick +
    +
    +
    The objects for the stick axis
    +
    +
    + YELLOW + - Enum constant in enum class com.technototes.library.util.Color +
    +
     
    +
    +

    Z

    +
    +
    + zero() + - Method in interface com.technototes.library.hardware.sensor.IGyro +
    +
    +
    Zeroes the current heading (in default units)
    +
    +
    + zero() + - Method in class com.technototes.library.util.Integral +
    +
    +
    Set the value to zero
    +
    +
    + zeroEncoder() + - Method in interface com.technototes.library.hardware.sensor.encoder.Encoder +
    +
    +
    zero the encoder
    +
    +
    + zeroEncoder() + - Method in class com.technototes.library.hardware.sensor.encoder.ExternalEncoder +
    +
    +
    Set the current device value as "zero"
    +
    +
    + zeroEncoder() + - Method in class com.technototes.library.hardware.sensor.encoder.MotorEncoder +
    +
     
    +
    + A B C D E F G H I J L M N O P R S T U V W X Y Z 
    All Classes and Interfaces|All Packages|Constant Field Values +
    +
    +
    + diff --git a/docs/TechnoLib/index.html b/docs/TechnoLib/index.html index ebc040b2..18b7b9fb 100644 --- a/docs/TechnoLib/index.html +++ b/docs/TechnoLib/index.html @@ -1,100 +1,212 @@ - + - - -Overview (RobotLibrary API) - - - - - - - - - - - - - - - - + + + Overview (RobotLibrary API) + + + + + + + + + + + + + + +
    + + +
    + diff --git a/docs/TechnoLib/jquery-ui.overrides.css b/docs/TechnoLib/jquery-ui.overrides.css index facf852c..bc437535 100644 --- a/docs/TechnoLib/jquery-ui.overrides.css +++ b/docs/TechnoLib/jquery-ui.overrides.css @@ -29,7 +29,7 @@ a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover { - /* Overrides the color of selection used in jQuery UI */ - background: #F8981D; - border: 1px solid #F8981D; + /* Overrides the color of selection used in jQuery UI */ + background: #f8981d; + border: 1px solid #f8981d; } diff --git a/docs/TechnoLib/member-search-index.js b/docs/TechnoLib/member-search-index.js index ec3f354c..0bef481d 100644 --- a/docs/TechnoLib/member-search-index.js +++ b/docs/TechnoLib/member-search-index.js @@ -1 +1,2290 @@ -memberSearchIndex = [{"p":"com.technototes.library.util","c":"SmartConsumer","l":"accept(T)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"addCommands(Command...)","u":"addCommands(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"additionalInitConditions()"},{"p":"com.technototes.library.command","c":"Command","l":"addRequirements(Subsystem...)","u":"addRequirements(com.technototes.library.subsystem.Subsystem...)"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"addSongs(String...)","u":"addSongs(java.lang.String...)"},{"p":"com.technototes.library.control","c":"Binding.Type","l":"ALL_ACTIVE"},{"p":"com.technototes.library.command","c":"Command","l":"alongWith(Command...)","u":"alongWith(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"alpha()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"analog(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"analog(String)","u":"analog(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"AnalogBuilder","l":"AnalogBuilder(AnalogSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogSensor)"},{"p":"com.technototes.library.hardware2","c":"AnalogBuilder","l":"AnalogBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"AnalogBuilder","l":"AnalogBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"AnalogSensor","l":"AnalogSensor(AnalogInput)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogInput)"},{"p":"com.technototes.library.hardware.sensor","c":"AnalogSensor","l":"AnalogSensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.command","c":"Command","l":"andThen(Command...)","u":"andThen(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"anyCancelled"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"apply(UnaryOperator)","u":"apply(java.util.function.UnaryOperator)"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"arcadeDrive(double, double)","u":"arcadeDrive(double,double)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"argb()"},{"p":"com.technototes.library.hardware.sensor","c":"ColorSensor","l":"argb()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"argb()"},{"p":"com.technototes.library.command","c":"Command","l":"asConditional(BooleanSupplier)","u":"asConditional(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"at(double)"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"AVERAGE"},{"p":"com.technototes.library.control","c":"AxisBase","l":"AxisBase(DoubleSupplier)","u":"%3Cinit%3E(java.util.function.DoubleSupplier)"},{"p":"com.technototes.library.control","c":"AxisBase","l":"AxisBase(DoubleSupplier, double)","u":"%3Cinit%3E(java.util.function.DoubleSupplier,double)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"axisInstance(DoubleSupplier)","u":"axisInstance(java.util.function.DoubleSupplier)"},{"p":"com.technototes.library.util","c":"Color","l":"BLACK"},{"p":"com.technototes.library.util","c":"Alliance","l":"BLUE"},{"p":"com.technototes.library.util","c":"Color","l":"BLUE"},{"p":"com.technototes.library.util","c":"Characters","l":"BLUE_CIRCLE"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"blue()"},{"p":"com.technototes.library.logger.entry","c":"BooleanEntry","l":"BooleanEntry(String, Supplier, int, String, String)","u":"%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,java.lang.String,java.lang.String)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"booleanSupplier"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"brake()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"brake()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"brake()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"build()"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"build()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"ButtonBase(BooleanSupplier)","u":"%3Cinit%3E(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"buttonInstance(BooleanSupplier)","u":"buttonInstance(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"bVal"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"bVal"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"calculateA(double, double, double, double)","u":"calculateA(double,double,double,double)"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"calculateS(double, double, double, double)","u":"calculateS(double,double,double,double)"},{"p":"com.technototes.library.command","c":"Command","l":"cancel()"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"CANCELLED"},{"p":"com.technototes.library.command","c":"Command","l":"cancelUpon(BooleanSupplier)","u":"cancelUpon(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.logger","c":"Logger","l":"captionDivider"},{"p":"com.technototes.library.util","c":"Characters","l":"Characters()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.command","c":"ChoiceCommand","l":"ChoiceCommand(BooleanSupplier, Command)","u":"%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"ChoiceCommand","l":"ChoiceCommand(Pair...)","u":"%3Cinit%3E(android.util.Pair...)"},{"p":"com.technototes.library.command","c":"Command","l":"clear()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"close()"},{"p":"com.technototes.library.util","c":"MathUtils","l":"closestTo(double, double...)","u":"closestTo(double,double...)"},{"p":"com.technototes.library.util","c":"MathUtils","l":"closestTo(double, int...)","u":"closestTo(double,int...)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"coast()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"coast()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"coast()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"codriverGamepad"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"color(String)","u":"color(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"ColorBuilder","l":"ColorBuilder(ColorSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorSensor)"},{"p":"com.technototes.library.hardware2","c":"ColorBuilder","l":"ColorBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"ColorDistanceSensor(ColorRangeSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorRangeSensor)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"ColorDistanceSensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"colorRange(String)","u":"colorRange(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"ColorRangeBuilder(ColorRangeSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorRangeSensor)"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"ColorRangeBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorSensor","l":"ColorSensor(ColorSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorSensor)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorSensor","l":"ColorSensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"CommandAxis(DoubleSupplier)","u":"%3Cinit%3E(java.util.function.DoubleSupplier)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"CommandAxis(DoubleSupplier, double)","u":"%3Cinit%3E(java.util.function.DoubleSupplier,double)"},{"p":"com.technototes.library.command","c":"CommandBase","l":"CommandBase()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.control","c":"CommandBinding","l":"CommandBinding(Binding.Type, CommandInput...)","u":"%3Cinit%3E(com.technototes.library.control.Binding.Type,com.technototes.library.control.CommandInput...)"},{"p":"com.technototes.library.control","c":"CommandBinding","l":"CommandBinding(CommandInput...)","u":"%3Cinit%3E(com.technototes.library.control.CommandInput...)"},{"p":"com.technototes.library.control","c":"CommandButton","l":"CommandButton(BooleanSupplier)","u":"%3Cinit%3E(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"CommandGamepad(Gamepad)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.Gamepad)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"CommandGroup(boolean, Command...)","u":"%3Cinit%3E(boolean,com.technototes.library.command.Command...)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"commandMap"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"CommandOpMode()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.command","c":"ConditionalCommand","l":"ConditionalCommand(BooleanSupplier)","u":"%3Cinit%3E(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.command","c":"ConditionalCommand","l":"ConditionalCommand(BooleanSupplier, Command)","u":"%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"ConditionalCommand","l":"ConditionalCommand(BooleanSupplier, Command, Command)","u":"%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.util","c":"MathUtils","l":"constrain(double, double, double)","u":"constrain(double,double,double)"},{"p":"com.technototes.library.util","c":"MathUtils","l":"constrain(int, int, int)","u":"constrain(int,int,int)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"Constraints(double, double, double)","u":"%3Cinit%3E(double,double,double)"},{"p":"com.technototes.library.util","c":"SmartConsumer","l":"consume(T)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"countCancel"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"countCancel()"},{"p":"com.technototes.library.command","c":"Command","l":"create(Command, Subsystem...)","u":"create(com.technototes.library.command.Command,com.technototes.library.subsystem.Subsystem...)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"create(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"create(String)","u":"create(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"crServo(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"crServo(String)","u":"crServo(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"CRServoBuilder(CRServo)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.CRServo)"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"CRServoBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"CRServoBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.util","c":"Color","l":"CYAN"},{"p":"com.technototes.library.util","c":"Characters","l":"CYCLE"},{"p":"com.technototes.library.util","c":"Color","l":"DARK_GRAY"},{"p":"com.technototes.library.command","c":"Command","l":"deadline(Command...)","u":"deadline(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.control","c":"AxisBase","l":"DEFAULT_TRIGGER_THRESHOLD"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"degrees()"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"degrees()"},{"p":"com.technototes.library.hardware","c":"HardwareDevice","l":"device"},{"p":"com.technototes.library.subsystem","c":"DeviceSubsystem","l":"device"},{"p":"com.technototes.library.subsystem","c":"DeviceSubsystem","l":"DeviceSubsystem(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"DIFFERENCE"},{"p":"com.technototes.library.util","c":"Differential","l":"Differential(DoubleConsumer, DoubleConsumer)","u":"%3Cinit%3E(java.util.function.DoubleConsumer,java.util.function.DoubleConsumer)"},{"p":"com.technototes.library.util","c":"Differential","l":"Differential(DoubleConsumer, DoubleConsumer, Differential.DifferentialPriority)","u":"%3Cinit%3E(java.util.function.DoubleConsumer,java.util.function.DoubleConsumer,com.technototes.library.util.Differential.DifferentialPriority)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"digital(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"digital(String)","u":"digital(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"DigitalBuilder(DigitalChannel)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DigitalChannel)"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"DigitalBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"DigitalBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"DigitalSensor","l":"DigitalSensor(DigitalChannel)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DigitalChannel)"},{"p":"com.technototes.library.hardware.sensor","c":"DigitalSensor","l":"DigitalSensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"direction(DcMotorSimple.Direction)","u":"direction(com.qualcomm.robotcore.hardware.DcMotorSimple.Direction)"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"direction(DcMotorSimple.Direction)","u":"direction(com.qualcomm.robotcore.hardware.DcMotorSimple.Direction)"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"direction(Servo.Direction)","u":"direction(com.qualcomm.robotcore.hardware.Servo.Direction)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"disable()"},{"p":"com.technototes.library.general","c":"Enablable","l":"disable()"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"disable()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"disable()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"distance(String)","u":"distance(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"DistanceBuilder","l":"DistanceBuilder(DistanceSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DistanceSensor)"},{"p":"com.technototes.library.hardware2","c":"DistanceBuilder","l":"DistanceBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.control","c":"AxisBase","l":"doubleSupplier"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"down"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"dpad"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"dpadDown"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"dpadLeft"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"dpadRight"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"dpadUp"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"drive(double, double)","u":"drive(double,double)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"drive(double, double, double)","u":"drive(double,double,double)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"drive(double, double, double, double)","u":"drive(double,double,double,double)"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"DrivebaseSubsystem(DoubleSupplier, Motor...)","u":"%3Cinit%3E(java.util.function.DoubleSupplier,com.technototes.library.hardware.motor.Motor...)"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"DrivebaseSubsystem(Motor...)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.Motor...)"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"driverGamepad"},{"p":"com.technototes.library.util","c":"Characters","l":"DUCK"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"DummyDevice(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.logger","c":"LogConfig.Run","l":"duringInit()"},{"p":"com.technototes.library.logger","c":"LogConfig.Run","l":"duringRun()"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"enable()"},{"p":"com.technototes.library.general","c":"Enablable","l":"enable()"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"enable()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"enable()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"EncodedMotor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"EncodedMotor(String, Encoder)","u":"%3Cinit%3E(java.lang.String,com.technototes.library.hardware.sensor.encoder.Encoder)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"EncodedMotor(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"EncodedMotor(T, Encoder)","u":"%3Cinit%3E(T,com.technototes.library.hardware.sensor.encoder.Encoder)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"EncodedMotorGroup(EncodedMotor, Motor...)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.Motor...)"},{"p":"com.technototes.library.subsystem.motor","c":"EncodedMotorSubsystem","l":"EncodedMotorSubsystem(EncodedMotor)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor)"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"END"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"end()"},{"p":"com.technototes.library.command","c":"Command","l":"end(boolean)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"end(boolean)"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"Entry(String, Supplier, int)","u":"%3Cinit%3E(java.lang.String,java.util.function.Supplier,int)"},{"p":"com.technototes.library.command","c":"Command","l":"execute()"},{"p":"com.technototes.library.command","c":"CommandBase","l":"execute()"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"execute()"},{"p":"com.technototes.library.command","c":"ConditionalCommand","l":"execute()"},{"p":"com.technototes.library.command","c":"WaitCommand","l":"execute()"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"EXECUTING"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"expandedPWM()"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"expandedRange()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"ExternalEncoder","l":"ExternalEncoder(AnalogInput)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogInput)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"ExternalEncoder","l":"ExternalEncoder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.logger","c":"Log.Boolean","l":"falseValue()"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"FINISHED"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"flMotor"},{"p":"com.technototes.library.logger","c":"Log","l":"format()"},{"p":"com.technototes.library.util","c":"Color","l":"format(Object)","u":"format(java.lang.Object)"},{"p":"com.technototes.library.util","c":"Color","l":"format(String, Object...)","u":"format(java.lang.String,java.lang.Object...)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder.Direction","l":"FORWARD"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"forward()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"forward()"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"forward()"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"frMotor"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"gain(float)"},{"p":"com.technototes.library.util","c":"Characters","l":"GAMEPAD"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"gamepad1"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"gamepad2"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"GamepadBase(Gamepad, Class, Class)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.Gamepad,java.lang.Class,java.lang.Class)"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"GamepadDpad(T, T, T, T)","u":"%3Cinit%3E(T,T,T,T)"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"GamepadStick(T, T, U)","u":"%3Cinit%3E(T,T,U)"},{"p":"com.technototes.library.command","c":"Command","l":"get()"},{"p":"com.technototes.library.control","c":"Binding","l":"get()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"get()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"get()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"get()"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"get()"},{"p":"com.technototes.library.control","c":"Binding","l":"get(Binding.Type)","u":"get(com.technototes.library.control.Binding.Type)"},{"p":"com.technototes.library.util","c":"Alliance","l":"get(Class)","u":"get(java.lang.Class)"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"getAllDeviceList()"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"getAllDevices()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"getAllDevices()"},{"p":"com.technototes.library.hardware.motor","c":"MotorGroup","l":"getAllDevices()"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"getAllDevices()"},{"p":"com.technototes.library.control","c":"Stick","l":"getAngle()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"getAngularOrientation()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"getAngularOrientation(AngleUnit)","u":"getAngularOrientation(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"getAngularVelocity()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"getAngularVelocity(AngleUnit)","u":"getAngularVelocity(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)"},{"p":"com.technototes.library.control","c":"Binding","l":"getAsBoolean()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"getAsBoolean()"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"getAsButton()"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"getAsButton(double)"},{"p":"com.technototes.library.control","c":"AxisBase","l":"getAsDouble()"},{"p":"com.technototes.library.hardware","c":"Sensored","l":"getAsDouble()"},{"p":"com.technototes.library.util","c":"Differential","l":"getAverage()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getAxis(GamepadBase.Axis)","u":"getAxis(com.technototes.library.control.GamepadBase.Axis)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getAxisAsBoolean(GamepadBase.Axis)","u":"getAxisAsBoolean(com.technototes.library.control.GamepadBase.Axis)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getAxisAsDouble(GamepadBase.Axis)","u":"getAxisAsDouble(com.technototes.library.control.GamepadBase.Axis)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getButton(GamepadBase.Button)","u":"getButton(com.technototes.library.control.GamepadBase.Button)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getButtonAsBoolean(GamepadBase.Button)","u":"getButtonAsBoolean(com.technototes.library.control.GamepadBase.Button)"},{"p":"com.technototes.library.util","c":"Alliance","l":"getColor()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"getConnectionInfo()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"getCorrectedVelocity()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"getCurrent(Subsystem)","u":"getCurrent(com.technototes.library.subsystem.Subsystem)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"getCurrentPosition()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getCurrentPosition()"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"getCurrentSong()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"getDefault(Subsystem)","u":"getDefault(com.technototes.library.subsystem.Subsystem)"},{"p":"com.technototes.library.subsystem","c":"Subsystem","l":"getDefaultCommand()"},{"p":"com.technototes.library.control","c":"Binding","l":"getDefaultType()"},{"p":"com.technototes.library.control","c":"CommandBinding","l":"getDefaultType()"},{"p":"com.technototes.library.util","c":"Differential","l":"getDeviation()"},{"p":"com.technototes.library.hardware","c":"HardwareDevice","l":"getDevice()"},{"p":"com.technototes.library.subsystem","c":"DeviceSubsystem","l":"getDevice()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"getDeviceName()"},{"p":"com.technototes.library.util","c":"Differential","l":"getDifferentialPriority()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"getDirection()"},{"p":"com.technototes.library.hardware.sensor","c":"IDistanceSensor","l":"getDistance()"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"getDistance(DistanceUnit)","u":"getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"IDistanceSensor","l":"getDistance(DistanceUnit)","u":"getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"Rev2MDistanceSensor","l":"getDistance(DistanceUnit)","u":"getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.control","c":"Stick","l":"getDistanceFromCenter()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getDpad()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"getEncoder()"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"getFollowerist()"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"getFollowers()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"getFollowers()"},{"p":"com.technototes.library.hardware.motor","c":"MotorGroup","l":"getFollowers()"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"getFollowers()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getGamepad()"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"getGyro()"},{"p":"com.technototes.library.util","c":"Color","l":"getHexValue()"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"getIndex()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"getInstance()"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"getInstance()"},{"p":"com.technototes.library.control","c":"CommandButton","l":"getInstance()"},{"p":"com.technototes.library.control","c":"CommandInput","l":"getInstance()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"getInverted()"},{"p":"com.technototes.library.general","c":"Invertable","l":"getInverted()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"getInverted()"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"getInverted()"},{"p":"com.technototes.library.util","c":"SmartConsumer","l":"getLast()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getLeftStick()"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"getLight()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"getLogger()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"getManufacturer()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"getMap()"},{"p":"com.technototes.library.util","c":"MathUtils","l":"getMax(double...)"},{"p":"com.technototes.library.util","c":"MathUtils","l":"getMax(int...)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getMaxAccel()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"getMaxAcceleration()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getMaxVel()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"getMaxVelocity()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder.Direction","l":"getMultiplier()"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"getName()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"getOpModeRuntime()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"getOpModeRuntime()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"getOpModeState()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"Encoder","l":"getPosition()"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"getPosition()"},{"p":"com.technototes.library.subsystem.servo","c":"ServoSubsystem","l":"getPosition()"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"getPriority()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"getProportion()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"getRawVelocity()"},{"p":"com.technototes.library.command","c":"Command","l":"getRequirements()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"getRightStick()"},{"p":"com.technototes.library.command","c":"Command","l":"getRuntime()"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"getScale(double...)"},{"p":"com.technototes.library.command","c":"WaitCommand","l":"getSeconds()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"getSensorValue()"},{"p":"com.technototes.library.hardware.sensor","c":"AnalogSensor","l":"getSensorValue()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"ExternalEncoder","l":"getSensorValue()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"getSensorValue()"},{"p":"com.technototes.library.hardware","c":"Sensored","l":"getSensorValue()"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"getSensorValue()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getServo()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"getSpeed()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"getSpeed()"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"getSpeed()"},{"p":"com.technototes.library.subsystem.motor","c":"MotorSubsystem","l":"getSpeed()"},{"p":"com.technototes.library.command","c":"Command","l":"getState()"},{"p":"com.technototes.library.control","c":"Binding","l":"getSuppliers()"},{"p":"com.technototes.library.control","c":"CommandBinding","l":"getSuppliers()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getTargetPosition()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"getTargetTolerance()"},{"p":"com.technototes.library.control","c":"AxisBase","l":"getTriggerThreshold()"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"getUnit()"},{"p":"com.technototes.library.hardware.sensor","c":"IDistanceSensor","l":"getUnit()"},{"p":"com.technototes.library.hardware.sensor","c":"Rev2MDistanceSensor","l":"getUnit()"},{"p":"com.technototes.library.hardware.sensor","c":"DigitalSensor","l":"getValue()"},{"p":"com.technototes.library.util","c":"Integral","l":"getValue()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"getVelocity()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"getVersion()"},{"p":"com.technototes.library","c":"RobotLibrary","l":"getVersion()"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"getVolume()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"getXAxis()"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"getXAxis()"},{"p":"com.technototes.library.control","c":"Stick","l":"getXAxis()"},{"p":"com.technototes.library.control","c":"Stick","l":"getXSupplier()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"getYAxis()"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"getYAxis()"},{"p":"com.technototes.library.control","c":"Stick","l":"getYAxis()"},{"p":"com.technototes.library.control","c":"Stick","l":"getYSupplier()"},{"p":"com.technototes.library.util","c":"Color","l":"GREEN"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"green()"},{"p":"com.technototes.library.hardware.sensor","c":"IGyro","l":"gyroHeading()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"gyroHeading()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"gyroHeading(AngleUnit)","u":"gyroHeading(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"IGyro","l":"gyroHeadingInDegrees()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"gyroHeadingInDegrees()"},{"p":"com.technototes.library.hardware.sensor","c":"IGyro","l":"gyroHeadingInRadians()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"gyroHeadingInRadians()"},{"p":"com.technototes.library.subsystem.drivebase","c":"DrivebaseSubsystem","l":"gyroSupplier"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"HardwareBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"HardwareBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"HardwareBuilder(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.hardware","c":"HardwareDevice","l":"HardwareDevice(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware","c":"HardwareDevice","l":"HardwareDevice(T)","u":"%3Cinit%3E(T)"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"hardwareMap"},{"p":"com.technototes.library.hardware","c":"HardwareDevice","l":"hardwareMap"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"hsv()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"hsvArray()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"hue()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"idle(DcMotor.ZeroPowerBehavior)","u":"idle(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"ignoreCancel()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"IMU(IMU, IMU.Parameters)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.IMU,com.qualcomm.robotcore.hardware.IMU.Parameters)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"IMU(IMU, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.IMU,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.LogoFacingDirection,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.UsbFacingDirection)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"imu(String)","u":"imu(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"IMU(String, IMU.Parameters)","u":"%3Cinit%3E(java.lang.String,com.qualcomm.robotcore.hardware.IMU.Parameters)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"IMU(String, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection)","u":"%3Cinit%3E(java.lang.String,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.LogoFacingDirection,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.UsbFacingDirection)"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"IMUBuilder(BNO055IMUImpl)","u":"%3Cinit%3E(com.qualcomm.hardware.bosch.BNO055IMUImpl)"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"IMUBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"incrementPosition(double)"},{"p":"com.technototes.library.logger","c":"Log.Boolean","l":"index()"},{"p":"com.technototes.library.logger","c":"Log","l":"index()"},{"p":"com.technototes.library.logger","c":"Log.Number","l":"index()"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"INIT"},{"p":"com.technototes.library.logger","c":"Logger","l":"initEntries"},{"p":"com.technototes.library.command","c":"Command","l":"initialize()"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"initialize()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"initialize(IMU.Parameters)","u":"initialize(com.qualcomm.robotcore.hardware.IMU.Parameters)"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"INITIALIZING"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"initLoop()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"initMap(HardwareMap)","u":"initMap(com.qualcomm.robotcore.hardware.HardwareMap)"},{"p":"com.technototes.library.logger","c":"Logger","l":"initUpdate()"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"input()"},{"p":"com.technototes.library.util","c":"Range","l":"inRange(double)"},{"p":"com.technototes.library.util","c":"Integral","l":"Integral()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.util","c":"Integral","l":"Integral(double)","u":"%3Cinit%3E(double)"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"INTERRUPTED"},{"p":"com.technototes.library.general","c":"Invertable","l":"invert()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"invert()"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"invert()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"invert()"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"isAtPosition(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"isAtTarget()"},{"p":"com.technototes.library.command","c":"Command","l":"isCancelled()"},{"p":"com.technototes.library.general","c":"Enablable","l":"isDisabled()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isEnabled()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"isEnabled()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"isEnabled()"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"isEnabled()"},{"p":"com.technototes.library.general","c":"Enablable","l":"isEnabled()"},{"p":"com.technototes.library.command","c":"Command","l":"isFinished()"},{"p":"com.technototes.library.command","c":"CommandBase","l":"isFinished()"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"isFinished()"},{"p":"com.technototes.library.command","c":"ConditionalCommand","l":"isFinished()"},{"p":"com.technototes.library.command","c":"ParallelCommandGroup","l":"isFinished()"},{"p":"com.technototes.library.command","c":"ParallelDeadlineGroup","l":"isFinished()"},{"p":"com.technototes.library.command","c":"ParallelRaceGroup","l":"isFinished()"},{"p":"com.technototes.library.command","c":"SequentialCommandGroup","l":"isFinished()"},{"p":"com.technototes.library.command","c":"WaitCommand","l":"isFinished()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isInverseToggled()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isJustInverseToggled()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isJustPressed()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isJustReleased()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isJustToggled()"},{"p":"com.technototes.library","c":"RobotLibrary","l":"isPreRelease()"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isPressed()"},{"p":"com.technototes.library.util","c":"MathUtils","l":"isPrime(int)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isReleased()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"isRumbling()"},{"p":"com.technototes.library.command","c":"Command","l":"isRunning()"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"isState(CommandOpMode.OpModeState...)","u":"isState(com.technototes.library.structure.CommandOpMode.OpModeState...)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"isToggled()"},{"p":"com.technototes.library.command","c":"IterativeCommand","l":"IterativeCommand(Function, BooleanSupplier)","u":"%3Cinit%3E(java.util.function.Function,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.command","c":"IterativeCommand","l":"IterativeCommand(Function, int)","u":"%3Cinit%3E(java.util.function.Function,int)"},{"p":"com.technototes.library.command","c":"IterativeCommand","l":"IterativeCommand(Function, int, BooleanSupplier)","u":"%3Cinit%3E(java.util.function.Function,int,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.command","c":"IterativeCommand","l":"IterativeCommand(Function, T, T, Function)","u":"%3Cinit%3E(java.util.function.Function,T,T,java.util.function.Function)"},{"p":"com.technototes.library.command","c":"IterativeCommand","l":"IterativeCommand(Function, T, T, Function, BooleanSupplier)","u":"%3Cinit%3E(java.util.function.Function,T,T,java.util.function.Function,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"joystickDrive(double, double, double)","u":"joystickDrive(double,double,double)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"joystickDriveWithGyro(double, double, double, double)","u":"joystickDriveWithGyro(double,double,double,double)"},{"p":"com.technototes.library.command","c":"Command","l":"justFinished()"},{"p":"com.technototes.library.command","c":"Command","l":"justFinishedNoCancel()"},{"p":"com.technototes.library.command","c":"Command","l":"justStarted()"},{"p":"com.technototes.library.command","c":"SequentialCommandGroup","l":"lastCommand"},{"p":"com.technototes.library.hardware2","c":"ColorRangeBuilder","l":"led(boolean)"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"left"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"LEFT_BUMPER"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"LEFT_STICK_BUTTON"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"LEFT_STICK_X"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"LEFT_STICK_Y"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"LEFT_TRIGGER"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftBumper"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"leftSide"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftStick"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftStickButton"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftStickX"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftStickY"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"leftTrigger"},{"p":"com.technototes.library.util","c":"Color","l":"LIGHT_GRAY"},{"p":"com.technototes.library.util","c":"Color","l":"LIME"},{"p":"com.technototes.library.logger","c":"Logger","l":"Logger(OpMode)","u":"%3Cinit%3E(com.qualcomm.robotcore.eventloop.opmode.OpMode)"},{"p":"com.technototes.library.util","c":"Color","l":"MAGENTA"},{"p":"com.technototes.library.util","c":"SmartConsumer","l":"map"},{"p":"com.technototes.library.util","c":"MathUtils","l":"map(double, double, double, double, double)","u":"map(double,double,double,double,double)"},{"p":"com.technototes.library.util","c":"MapUtils","l":"MapUtils()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.util","c":"MathUtils","l":"MathUtils()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.util","c":"Range","l":"max"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"maxAcceleration"},{"p":"com.technototes.library.subsystem.motor","c":"EncodedMotorSubsystem","l":"maxSpeed"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"maxVelocity"},{"p":"com.technototes.library.util","c":"Range","l":"middle()"},{"p":"com.technototes.library.util","c":"Range","l":"min"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"mode(DcMotor.RunMode)","u":"mode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"mode(DigitalChannel.Mode)","u":"mode(com.qualcomm.robotcore.hardware.DigitalChannel.Mode)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"motor(int)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"motor(String)","u":"motor(java.lang.String)"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"Motor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"Motor(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"MotorBuilder(DcMotorEx)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx)"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"MotorBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"MotorBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"MotorEncoder(DcMotorEx)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"MotorEncoder(DcMotorEx, ElapsedTime)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx,com.qualcomm.robotcore.util.ElapsedTime)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"MotorEncoder(EncodedMotor)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"MotorEncoder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.motor","c":"MotorGroup","l":"MotorGroup(Motor...)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.Motor...)"},{"p":"com.technototes.library.subsystem.motor","c":"MotorSubsystem","l":"MotorSubsystem(T)","u":"%3Cinit%3E(T)"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"msStuckDetectStop"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"name"},{"p":"com.technototes.library.logger","c":"Log.Boolean","l":"name()"},{"p":"com.technototes.library.logger","c":"Log","l":"name()"},{"p":"com.technototes.library.logger","c":"Log.Number","l":"name()"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"NEUTRAL"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"NNN"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"NNN"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"NNP"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"NNP"},{"p":"com.technototes.library.util","c":"Color","l":"NO_COLOR"},{"p":"com.technototes.library.util","c":"Alliance","l":"NONE"},{"p":"com.technototes.library.control","c":"Binding.Type","l":"NONE_ACTIVE"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"NPN"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"NPN"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"NPP"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"NPP"},{"p":"com.technototes.library.logger.entry","c":"NumberEntry","l":"numberColor"},{"p":"com.technototes.library.logger.entry","c":"NumberEntry","l":"NumberEntry(String, Supplier, int)","u":"%3Cinit%3E(java.lang.String,java.util.function.Supplier,int)"},{"p":"com.technototes.library.util","c":"MapUtils","l":"of(Pair...)","u":"of(android.util.Pair...)"},{"p":"com.technototes.library.util","c":"Alliance.Selector","l":"of(T, T)","u":"of(T,T)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"offset"},{"p":"com.technototes.library.command","c":"Command","l":"onlyIf(BooleanSupplier)","u":"onlyIf(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"onRange(double, double)","u":"onRange(double,double)"},{"p":"com.technototes.library.hardware.sensor","c":"ColorDistanceSensor","l":"onUnit(DistanceUnit)","u":"onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"IDistanceSensor","l":"onUnit(DistanceUnit)","u":"onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.hardware.sensor","c":"Rev2MDistanceSensor","l":"onUnit(DistanceUnit)","u":"onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)"},{"p":"com.technototes.library.util","c":"Color","l":"ORANGE"},{"p":"com.technototes.library.hardware2","c":"DigitalBuilder","l":"output()"},{"p":"com.technototes.library.command","c":"ParallelCommandGroup","l":"ParallelCommandGroup(Command...)","u":"%3Cinit%3E(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.command","c":"ParallelDeadlineGroup","l":"ParallelDeadlineGroup(Command, Command...)","u":"%3Cinit%3E(com.technototes.library.command.Command,com.technototes.library.command.Command...)"},{"p":"com.technototes.library.command","c":"ParallelRaceGroup","l":"ParallelRaceGroup(Command...)","u":"%3Cinit%3E(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"parameter(Consumer)","u":"parameter(java.util.function.Consumer)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"periodic()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"periodic()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"periodic()"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"periodic()"},{"p":"com.technototes.library.general","c":"Periodic","l":"periodic()"},{"p":"com.technototes.library.subsystem","c":"DeviceSubsystem","l":"periodic()"},{"p":"com.technototes.library.subsystem","c":"Subsystem","l":"periodic()"},{"p":"com.technototes.library.util","c":"Color","l":"PINK"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"PNN"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"PNN"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"PNP"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"PNP"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"position(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"positionThreshold"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"PPN"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"PPN"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"PPP"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"PPP"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"priority"},{"p":"com.technototes.library.logger","c":"Log.Boolean","l":"priority()"},{"p":"com.technototes.library.logger","c":"Log.Number","l":"priority()"},{"p":"com.technototes.library.logger","c":"Log","l":"priority()"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"product"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"propagate(double)"},{"p":"com.technototes.library.hardware","c":"HardwareDeviceGroup","l":"propogate(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"propogate(double)"},{"p":"com.technototes.library.hardware.motor","c":"MotorGroup","l":"propogate(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"propogate(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler.Constraints","l":"proportion"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_circle"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_CIRCLE"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_cross"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_CROSS"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_options"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_OPTIONS"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_share"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_SHARE"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_square"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_SQUARE"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"ps_triangle"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"PS_TRIANGLE"},{"p":"com.technototes.library.util","c":"Color","l":"PURPLE"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"pwmRange(double, double)","u":"pwmRange(double,double)"},{"p":"com.technototes.library.util","c":"MathUtils","l":"pythag(double...)"},{"p":"com.technototes.library.command","c":"Command","l":"raceWith(Command...)","u":"raceWith(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"radians()"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"radians()"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"range(double, double)","u":"range(double,double)"},{"p":"com.technototes.library.util","c":"Range","l":"Range(double, double)","u":"%3Cinit%3E(double,double)"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"raw()"},{"p":"com.technototes.library.util","c":"Alliance","l":"RED"},{"p":"com.technototes.library.util","c":"Color","l":"RED"},{"p":"com.technototes.library.util","c":"Characters","l":"RED_SQUARE"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"red()"},{"p":"com.technototes.library.subsystem","c":"Subsystem","l":"register()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"register(Periodic)","u":"register(com.technototes.library.general.Periodic)"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder","l":"remap(AxesOrder, IMUBuilder.AxesSigns)","u":"remap(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware2.IMUBuilder.AxesSigns)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"remapAxesAndSigns(AxesOrder, IMU.AxesSigns)","u":"remapAxesAndSigns(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware.sensor.IMU.AxesSigns)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"remapLegacyAxes(AxesOrder, IMU.AxesSigns)","u":"remapLegacyAxes(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware.sensor.IMU.AxesSigns)"},{"p":"com.technototes.library.logger","c":"Logger","l":"repeat(String, int)","u":"repeat(java.lang.String,int)"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"requestOpModeStop()"},{"p":"com.technototes.library.command","c":"Command","l":"requirementMap"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"RESET"},{"p":"com.technototes.library.util","c":"SmartConsumer","l":"reset()"},{"p":"com.technototes.library.hardware","c":"DummyDevice","l":"resetDeviceConfigurationForOpMode()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"resetScheduler()"},{"p":"com.technototes.library.hardware.sensor","c":"Rev2MDistanceSensor","l":"Rev2MDistanceSensor(DistanceSensor)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.DistanceSensor)"},{"p":"com.technototes.library.hardware.sensor","c":"Rev2MDistanceSensor","l":"Rev2MDistanceSensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder.Direction","l":"REVERSE"},{"p":"com.technototes.library.hardware2","c":"CRServoBuilder","l":"reverse()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"reverse()"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"reverse()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"rgb()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"right"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"RIGHT_BUMPER"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"RIGHT_STICK_BUTTON"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"RIGHT_STICK_X"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"RIGHT_STICK_Y"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"RIGHT_TRIGGER"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightBumper"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"rightSide"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightStick"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightStickButton"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightStickX"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightStickY"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rightTrigger"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"rlMotor"},{"p":"com.technototes.library","c":"RobotLibrary","l":"RobotLibrary()","u":"%3Cinit%3E()"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"rrMotor"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rumble()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rumble(double)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rumbleBlip()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"rumbleBlips(int)"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"RUN"},{"p":"com.technototes.library.command","c":"Command","l":"run()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"run()"},{"p":"com.technototes.library.logger","c":"Logger","l":"runEntries"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"runLoop()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"runOpMode()"},{"p":"com.technototes.library.logger","c":"Logger","l":"runUpdate()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"saturation()"},{"p":"com.technototes.library.util","c":"Range","l":"scale(double)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"scalePWM(double, double)","u":"scalePWM(double,double)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"schedule(BooleanSupplier, Command)","u":"schedule(java.util.function.BooleanSupplier,com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandGroup","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"ParallelCommandGroup","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"ParallelDeadlineGroup","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"ParallelRaceGroup","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"SequentialCommandGroup","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"schedule(Command)","u":"schedule(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"schedule(Command, BooleanSupplier)","u":"schedule(com.technototes.library.command.Command,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.control","c":"CommandButton","l":"schedule(Consumer)","u":"schedule(java.util.function.Consumer)"},{"p":"com.technototes.library.control","c":"CommandButton","l":"schedule(Function)","u":"schedule(java.util.function.Function)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"schedule(Function)","u":"schedule(java.util.function.Function)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleAfterOther(Command, Command)","u":"scheduleAfterOther(com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleAfterOther(Command, Command, BooleanSupplier)","u":"scheduleAfterOther(com.technototes.library.command.Command,com.technototes.library.command.Command,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleDefault(Command, Subsystem)","u":"scheduleDefault(com.technototes.library.command.Command,com.technototes.library.subsystem.Subsystem)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleDpad(BiConsumer)","u":"scheduleDpad(java.util.function.BiConsumer)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleDpad(BiFunction)","u":"scheduleDpad(java.util.function.BiFunction)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleForState(Command, BooleanSupplier, CommandOpMode.OpModeState...)","u":"scheduleForState(com.technototes.library.command.Command,java.util.function.BooleanSupplier,com.technototes.library.structure.CommandOpMode.OpModeState...)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleForState(Command, CommandOpMode.OpModeState...)","u":"scheduleForState(com.technototes.library.command.Command,com.technototes.library.structure.CommandOpMode.OpModeState...)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleInit(Command)","u":"scheduleInit(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleInit(Command, BooleanSupplier)","u":"scheduleInit(com.technototes.library.command.Command,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleJoystick(Command)","u":"scheduleJoystick(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleJoystick(Command, BooleanSupplier)","u":"scheduleJoystick(com.technototes.library.command.Command,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleLeftStick(BiConsumer)","u":"scheduleLeftStick(java.util.function.BiConsumer)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleLeftStick(BiFunction)","u":"scheduleLeftStick(java.util.function.BiFunction)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleOnce(Command)","u":"scheduleOnce(com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleOnceForState(Command, CommandOpMode.OpModeState)","u":"scheduleOnceForState(com.technototes.library.command.Command,com.technototes.library.structure.CommandOpMode.OpModeState)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"schedulePressed(Function)","u":"schedulePressed(java.util.function.Function)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleRightStick(BiConsumer)","u":"scheduleRightStick(java.util.function.BiConsumer)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleRightStick(BiFunction)","u":"scheduleRightStick(java.util.function.BiFunction)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleStick(Stick, BiConsumer)","u":"scheduleStick(com.technototes.library.control.Stick,java.util.function.BiConsumer)"},{"p":"com.technototes.library.control","c":"CommandGamepad","l":"scheduleStick(Stick, BiFunction)","u":"scheduleStick(com.technototes.library.control.Stick,java.util.function.BiFunction)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleWithOther(Command, Command)","u":"scheduleWithOther(com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"scheduleWithOther(Command, Command, BooleanSupplier)","u":"scheduleWithOther(com.technototes.library.command.Command,com.technototes.library.command.Command,java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.util","c":"Alliance.Selector","l":"select(Alliance)","u":"select(com.technototes.library.util.Alliance)"},{"p":"com.technototes.library.util","c":"Alliance.Selector","l":"selectOf(Alliance, T, T)","u":"selectOf(com.technototes.library.util.Alliance,T,T)"},{"p":"com.technototes.library.util","c":"Alliance","l":"selectOf(T, T)","u":"selectOf(T,T)"},{"p":"com.technototes.library.util","c":"Alliance.Selector","l":"Selector(T, T)","u":"%3Cinit%3E(T,T)"},{"p":"com.technototes.library.hardware.sensor","c":"Sensor","l":"Sensor(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"Sensor","l":"Sensor(T)","u":"%3Cinit%3E(T)"},{"p":"com.technototes.library.command","c":"SequentialCommandGroup","l":"SequentialCommandGroup(Command...)","u":"%3Cinit%3E(com.technototes.library.command.Command...)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"servo(int)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"Servo(Servo)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.Servo)"},{"p":"com.technototes.library.hardware2","c":"HardwareBuilder","l":"servo(String)","u":"servo(java.lang.String)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"Servo(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"ServoBuilder(int)","u":"%3Cinit%3E(int)"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"ServoBuilder(Servo)","u":"%3Cinit%3E(com.qualcomm.robotcore.hardware.Servo)"},{"p":"com.technototes.library.hardware2","c":"ServoBuilder","l":"ServoBuilder(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"ServoGroup(Servo...)","u":"%3Cinit%3E(com.technototes.library.hardware.servo.Servo...)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"ServoProfiler(Servo)","u":"%3Cinit%3E(com.technototes.library.hardware.servo.Servo)"},{"p":"com.technototes.library.subsystem.servo","c":"ServoSubsystem","l":"ServoSubsystem(Servo)","u":"%3Cinit%3E(com.technototes.library.hardware.servo.Servo)"},{"p":"com.technototes.library.subsystem.servo","c":"ServoSubsystem","l":"ServoSubsystem(Servo...)","u":"%3Cinit%3E(com.technototes.library.hardware.servo.Servo...)"},{"p":"com.technototes.library.util","c":"Integral","l":"set(double)"},{"p":"com.technototes.library.util","c":"Differential","l":"setAverageOutput(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"setConstraints(double, double, double)","u":"setConstraints(double,double,double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"setConstraints(ServoProfiler.Constraints)","u":"setConstraints(com.technototes.library.hardware.servo.ServoProfiler.Constraints)"},{"p":"com.technototes.library.subsystem","c":"Subsystem","l":"setDefaultCommand(Command)","u":"setDefaultCommand(com.technototes.library.command.Command)"},{"p":"com.technototes.library.util","c":"Differential","l":"setDeviationOutput(double)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"setDirection(MotorEncoder.Direction)","u":"setDirection(com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"setEnabled(boolean)"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"setEnabled(boolean)"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"setEnabled(boolean)"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"setEnabled(boolean)"},{"p":"com.technototes.library.general","c":"Enablable","l":"setEnabled(boolean)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setEncoder(Encoder)","u":"setEncoder(com.technototes.library.hardware.sensor.encoder.Encoder)"},{"p":"com.technototes.library.hardware.sensor","c":"IGyro","l":"setHeading(double)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU","l":"setHeading(double)"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"setIndex(int)"},{"p":"com.technototes.library.control","c":"ButtonBase","l":"setInverted(boolean)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"setInverted(boolean)"},{"p":"com.technototes.library.control","c":"CommandButton","l":"setInverted(boolean)"},{"p":"com.technototes.library.general","c":"Invertable","l":"setInverted(boolean)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setInverted(boolean)"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"setInverted(boolean)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"setInverted(boolean)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setLimits(double, double)","u":"setLimits(double,double)"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"setLimits(double, double)","u":"setLimits(double,double)"},{"p":"com.technototes.library.util","c":"Differential","l":"setLimits(double, double)","u":"setLimits(double,double)"},{"p":"com.technototes.library.subsystem.motor","c":"EncodedMotorSubsystem","l":"setMaxSpeed(double)"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"setOpMode(CommandOpMode)","u":"setOpMode(com.technototes.library.structure.CommandOpMode)"},{"p":"com.technototes.library.util","c":"Differential","l":"setOutputs(double, double)","u":"setOutputs(double,double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setPIDFCoeffecients(double, double, double, double)","u":"setPIDFCoeffecients(double,double,double,double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setPIDFCoeffecients(PIDFCoefficients)","u":"setPIDFCoeffecients(com.qualcomm.robotcore.hardware.PIDFCoefficients)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setPosition(double)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"setPosition(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"setPosition(double)"},{"p":"com.technototes.library.subsystem.motor","c":"EncodedMotorSubsystem","l":"setPosition(double)"},{"p":"com.technototes.library.subsystem.servo","c":"ServoSubsystem","l":"setPosition(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setPosition(double, double)","u":"setPosition(double,double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"setPosition(double, double)","u":"setPosition(double,double)"},{"p":"com.technototes.library.subsystem.motor","c":"EncodedMotorSubsystem","l":"setPosition(double, double)","u":"setPosition(double,double)"},{"p":"com.technototes.library.util","c":"Differential","l":"setPriority(Differential.DifferentialPriority)","u":"setPriority(com.technototes.library.util.Differential.DifferentialPriority)"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"setPriority(int)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setRunMode(DcMotor.RunMode)","u":"setRunMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"setServoRange(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setSpeed(double)"},{"p":"com.technototes.library.hardware.motor","c":"Motor","l":"setSpeed(double)"},{"p":"com.technototes.library.hardware.motor","c":"MotorGroup","l":"setSpeed(double)"},{"p":"com.technototes.library.subsystem.motor","c":"MotorSubsystem","l":"setSpeed(double)"},{"p":"com.technototes.library.command","c":"Command","l":"setState(Command.CommandState)","u":"setState(com.technototes.library.command.Command.CommandState)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"setTargetPosition(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"setTargetTolerance(double)"},{"p":"com.technototes.library.control","c":"AxisBase","l":"setTriggerThreshold(double)"},{"p":"com.technototes.library.control","c":"CommandAxis","l":"setTriggerThreshold(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"setVelocity(double)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotorGroup","l":"setVelocity(double)"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"setVolume(float)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"SimpleMecanumDrivebaseSubsystem(DoubleSupplier, Motor, Motor, Motor, Motor)","u":"%3Cinit%3E(java.util.function.DoubleSupplier,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"SimpleMecanumDrivebaseSubsystem(Motor, Motor, Motor, Motor)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)"},{"p":"com.technototes.library.command","c":"Command","l":"sleep(double)"},{"p":"com.technototes.library.command","c":"Command","l":"sleep(DoubleSupplier)","u":"sleep(java.util.function.DoubleSupplier)"},{"p":"com.technototes.library.control","c":"Binding.Type","l":"SOME_ACTIVE"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"Speaker(float, String...)","u":"%3Cinit%3E(float,java.lang.String...)"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"Speaker(String...)","u":"%3Cinit%3E(java.lang.String...)"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"start(String)","u":"start(java.lang.String)"},{"p":"com.technototes.library.hardware.servo","c":"Servo","l":"startAt(double)"},{"p":"com.technototes.library.hardware.servo","c":"ServoGroup","l":"startAt(double)"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"STARTED"},{"p":"com.technototes.library.command","c":"Command","l":"stateMap"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"stickButton"},{"p":"com.technototes.library.hardware","c":"Speaker","l":"stop()"},{"p":"com.technototes.library.subsystem.drivebase","c":"SimpleMecanumDrivebaseSubsystem","l":"stop()"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"stop()"},{"p":"com.technototes.library.subsystem.motor","c":"MotorSubsystem","l":"stop()"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"stopRumble()"},{"p":"com.technototes.library.logger.entry","c":"StringEntry","l":"StringEntry(String, Supplier, int, String)","u":"%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,java.lang.String)"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"supplier"},{"p":"com.technototes.library.subsystem.drivebase","c":"TankDrivebaseSubsystem","l":"TankDrivebaseSubsystem(Motor, Motor)","u":"%3Cinit%3E(com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)"},{"p":"com.technototes.library.hardware.motor","c":"EncodedMotor","l":"tare()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"tare()"},{"p":"com.qualcomm.robotcore.eventloop.opmode","c":"CommandOpMode","l":"telemetry"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"terminate()"},{"p":"com.technototes.library.command","c":"CommandScheduler","l":"terminateOpMode()"},{"p":"com.technototes.library.command","c":"Command","l":"timeMap"},{"p":"com.technototes.library.control","c":"CommandInput","l":"toggle(Command, Command)","u":"toggle(com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.general","c":"Enablable","l":"toggleEnabled()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"tolerance(int)"},{"p":"com.technototes.library.logger.entry","c":"BooleanEntry","l":"toString()"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"toString()"},{"p":"com.technototes.library.logger.entry","c":"NumberEntry","l":"toString()"},{"p":"com.technototes.library.logger.entry","c":"StringEntry","l":"toString()"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"translateTargetPosition(double)"},{"p":"com.technototes.library.logger","c":"Log.Boolean","l":"trueValue()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"universalLoop()"},{"p":"com.technototes.library.control","c":"GamepadDpad","l":"up"},{"p":"com.technototes.library.hardware.servo","c":"ServoProfiler","l":"update()"},{"p":"com.technototes.library.util","c":"Integral","l":"update(double)"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"uponInit()"},{"p":"com.technototes.library.structure","c":"CommandOpMode","l":"uponStart()"},{"p":"com.technototes.library.hardware.sensor","c":"IColorSensor","l":"value()"},{"p":"com.technototes.library.logger","c":"Log.Logs","l":"value()"},{"p":"com.technototes.library.logger","c":"LogConfig.AllowList","l":"value()"},{"p":"com.technototes.library.logger","c":"LogConfig.DenyList","l":"value()"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.control","c":"Binding.Type","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder.Direction","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.util","c":"Alliance","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.util","c":"Color","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"com.technototes.library.command","c":"Command.CommandState","l":"values()"},{"p":"com.technototes.library.control","c":"Binding.Type","l":"values()"},{"p":"com.technototes.library.control","c":"GamepadBase.Axis","l":"values()"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"values()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder.Direction","l":"values()"},{"p":"com.technototes.library.hardware.sensor","c":"IMU.AxesSigns","l":"values()"},{"p":"com.technototes.library.hardware2","c":"IMUBuilder.AxesSigns","l":"values()"},{"p":"com.technototes.library.structure","c":"CommandOpMode.OpModeState","l":"values()"},{"p":"com.technototes.library.util","c":"Alliance","l":"values()"},{"p":"com.technototes.library.util","c":"Color","l":"values()"},{"p":"com.technototes.library.util","c":"Differential.DifferentialPriority","l":"values()"},{"p":"com.technototes.library.hardware2","c":"MotorBuilder","l":"velocity(PIDFCoefficients)","u":"velocity(com.qualcomm.robotcore.hardware.PIDFCoefficients)"},{"p":"com.technototes.library.command","c":"WaitCommand","l":"WaitCommand(double)","u":"%3Cinit%3E(double)"},{"p":"com.technototes.library.command","c":"WaitCommand","l":"WaitCommand(DoubleSupplier)","u":"%3Cinit%3E(java.util.function.DoubleSupplier)"},{"p":"com.technototes.library.command","c":"Command","l":"waitUntil(BooleanSupplier)","u":"waitUntil(java.util.function.BooleanSupplier)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whenInverseToggled(Command)","u":"whenInverseToggled(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whenPressed(Command)","u":"whenPressed(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whenPressedReleased(Command, Command)","u":"whenPressedReleased(com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whenReleased(Command)","u":"whenReleased(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whenToggled(Command)","u":"whenToggled(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whileInverseToggled(Command)","u":"whileInverseToggled(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whilePressed(Command)","u":"whilePressed(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whilePressedContinuous(Command)","u":"whilePressedContinuous(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whilePressedOnce(Command)","u":"whilePressedOnce(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whilePressedReleased(Command, Command)","u":"whilePressedReleased(com.technototes.library.command.Command,com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whileReleased(Command)","u":"whileReleased(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whileReleasedOnce(Command)","u":"whileReleasedOnce(com.technototes.library.command.Command)"},{"p":"com.technototes.library.control","c":"CommandInput","l":"whileToggled(Command)","u":"whileToggled(com.technototes.library.command.Command)"},{"p":"com.technototes.library.util","c":"Color","l":"WHITE"},{"p":"com.technototes.library.command","c":"Command","l":"withTimeout(double)"},{"p":"com.technototes.library.logger.entry","c":"Entry","l":"x"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"xAxis"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_a"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_A"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_b"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_B"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_back"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_BACK"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_start"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_START"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_x"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_X"},{"p":"com.technototes.library.control","c":"GamepadBase","l":"xbox_y"},{"p":"com.technototes.library.control","c":"GamepadBase.Button","l":"XBOX_Y"},{"p":"com.technototes.library.control","c":"GamepadStick","l":"yAxis"},{"p":"com.technototes.library.util","c":"Color","l":"YELLOW"},{"p":"com.technototes.library.hardware.sensor","c":"IGyro","l":"zero()"},{"p":"com.technototes.library.util","c":"Integral","l":"zero()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"Encoder","l":"zeroEncoder()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"ExternalEncoder","l":"zeroEncoder()"},{"p":"com.technototes.library.hardware.sensor.encoder","c":"MotorEncoder","l":"zeroEncoder()"}];updateSearchResults(); \ No newline at end of file +memberSearchIndex = [ + { p: 'com.technototes.library.util', c: 'SmartConsumer', l: 'accept(T)' }, + { + p: 'com.technototes.library.command', + c: 'CommandGroup', + l: 'addCommands(Command...)', + u: 'addCommands(com.technototes.library.command.Command...)', + }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'additionalInitConditions()' }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'addRequirements(Subsystem...)', + u: 'addRequirements(com.technototes.library.subsystem.Subsystem...)', + }, + { + p: 'com.technototes.library.hardware', + c: 'Speaker', + l: 'addSongs(String...)', + u: 'addSongs(java.lang.String...)', + }, + { p: 'com.technototes.library.control', c: 'Binding.Type', l: 'ALL_ACTIVE' }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'alongWith(Command...)', + u: 'alongWith(com.technototes.library.command.Command...)', + }, + { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'alpha()' }, + { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'analog(int)' }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'analog(String)', + u: 'analog(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'AnalogBuilder', + l: 'AnalogBuilder(AnalogSensor)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogSensor)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'AnalogBuilder', + l: 'AnalogBuilder(int)', + u: '%3Cinit%3E(int)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'AnalogBuilder', + l: 'AnalogBuilder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'AnalogSensor', + l: 'AnalogSensor(AnalogInput)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogInput)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'AnalogSensor', + l: 'AnalogSensor(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'andThen(Command...)', + u: 'andThen(com.technototes.library.command.Command...)', + }, + { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'anyCancelled' }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'apply(UnaryOperator)', + u: 'apply(java.util.function.UnaryOperator)', + }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'TankDrivebaseSubsystem', + l: 'arcadeDrive(double, double)', + u: 'arcadeDrive(double,double)', + }, + { p: 'com.technototes.library.hardware.sensor', c: 'ColorDistanceSensor', l: 'argb()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'ColorSensor', l: 'argb()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'argb()' }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'asConditional(BooleanSupplier)', + u: 'asConditional(java.util.function.BooleanSupplier)', + }, + { p: 'com.technototes.library.hardware2', c: 'ServoBuilder', l: 'at(double)' }, + { p: 'com.technototes.library.util', c: 'Differential.DifferentialPriority', l: 'AVERAGE' }, + { + p: 'com.technototes.library.control', + c: 'AxisBase', + l: 'AxisBase(DoubleSupplier)', + u: '%3Cinit%3E(java.util.function.DoubleSupplier)', + }, + { + p: 'com.technototes.library.control', + c: 'AxisBase', + l: 'AxisBase(DoubleSupplier, double)', + u: '%3Cinit%3E(java.util.function.DoubleSupplier,double)', + }, + { + p: 'com.technototes.library.control', + c: 'GamepadBase', + l: 'axisInstance(DoubleSupplier)', + u: 'axisInstance(java.util.function.DoubleSupplier)', + }, + { p: 'com.technototes.library.util', c: 'Color', l: 'BLACK' }, + { p: 'com.technototes.library.util', c: 'Alliance', l: 'BLUE' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'BLUE' }, + { p: 'com.technototes.library.util', c: 'Characters', l: 'BLUE_CIRCLE' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'blue()' }, + { + p: 'com.technototes.library.logger.entry', + c: 'BooleanEntry', + l: 'BooleanEntry(String, Supplier, int, String, String)', + u: '%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,java.lang.String,java.lang.String)', + }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'booleanSupplier' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'brake()' }, + { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'brake()' }, + { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'brake()' }, + { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'build()' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder', l: 'build()' }, + { + p: 'com.technototes.library.control', + c: 'ButtonBase', + l: 'ButtonBase(BooleanSupplier)', + u: '%3Cinit%3E(java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.control', + c: 'GamepadBase', + l: 'buttonInstance(BooleanSupplier)', + u: 'buttonInstance(java.util.function.BooleanSupplier)', + }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'bVal' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'bVal' }, + { + p: 'com.technototes.library.util', + c: 'Differential.DifferentialPriority', + l: 'calculateA(double, double, double, double)', + u: 'calculateA(double,double,double,double)', + }, + { + p: 'com.technototes.library.util', + c: 'Differential.DifferentialPriority', + l: 'calculateS(double, double, double, double)', + u: 'calculateS(double,double,double,double)', + }, + { p: 'com.technototes.library.command', c: 'Command', l: 'cancel()' }, + { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'CANCELLED' }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'cancelUpon(BooleanSupplier)', + u: 'cancelUpon(java.util.function.BooleanSupplier)', + }, + { p: 'com.technototes.library.logger', c: 'Logger', l: 'captionDivider' }, + { p: 'com.technototes.library.util', c: 'Characters', l: 'Characters()', u: '%3Cinit%3E()' }, + { + p: 'com.technototes.library.command', + c: 'ChoiceCommand', + l: 'ChoiceCommand(BooleanSupplier, Command)', + u: '%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'ChoiceCommand', + l: 'ChoiceCommand(Pair...)', + u: '%3Cinit%3E(android.util.Pair...)', + }, + { p: 'com.technototes.library.command', c: 'Command', l: 'clear()' }, + { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'close()' }, + { + p: 'com.technototes.library.util', + c: 'MathUtils', + l: 'closestTo(double, double...)', + u: 'closestTo(double,double...)', + }, + { + p: 'com.technototes.library.util', + c: 'MathUtils', + l: 'closestTo(double, int...)', + u: 'closestTo(double,int...)', + }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'coast()' }, + { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'coast()' }, + { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'coast()' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'codriverGamepad' }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'color(String)', + u: 'color(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'ColorBuilder', + l: 'ColorBuilder(ColorSensor)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorSensor)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'ColorBuilder', + l: 'ColorBuilder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'ColorDistanceSensor', + l: 'ColorDistanceSensor(ColorRangeSensor)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorRangeSensor)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'ColorDistanceSensor', + l: 'ColorDistanceSensor(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'colorRange(String)', + u: 'colorRange(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'ColorRangeBuilder', + l: 'ColorRangeBuilder(ColorRangeSensor)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorRangeSensor)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'ColorRangeBuilder', + l: 'ColorRangeBuilder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'ColorSensor', + l: 'ColorSensor(ColorSensor)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.ColorSensor)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'ColorSensor', + l: 'ColorSensor(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandAxis', + l: 'CommandAxis(DoubleSupplier)', + u: '%3Cinit%3E(java.util.function.DoubleSupplier)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandAxis', + l: 'CommandAxis(DoubleSupplier, double)', + u: '%3Cinit%3E(java.util.function.DoubleSupplier,double)', + }, + { p: 'com.technototes.library.command', c: 'CommandBase', l: 'CommandBase()', u: '%3Cinit%3E()' }, + { + p: 'com.technototes.library.control', + c: 'CommandBinding', + l: 'CommandBinding(Binding.Type, CommandInput...)', + u: '%3Cinit%3E(com.technototes.library.control.Binding.Type,com.technototes.library.control.CommandInput...)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandBinding', + l: 'CommandBinding(CommandInput...)', + u: '%3Cinit%3E(com.technototes.library.control.CommandInput...)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandButton', + l: 'CommandButton(BooleanSupplier)', + u: '%3Cinit%3E(java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandGamepad', + l: 'CommandGamepad(Gamepad)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.Gamepad)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandGroup', + l: 'CommandGroup(boolean, Command...)', + u: '%3Cinit%3E(boolean,com.technototes.library.command.Command...)', + }, + { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'commandMap' }, + { + p: 'com.technototes.library.structure', + c: 'CommandOpMode', + l: 'CommandOpMode()', + u: '%3Cinit%3E()', + }, + { + p: 'com.technototes.library.command', + c: 'ConditionalCommand', + l: 'ConditionalCommand(BooleanSupplier)', + u: '%3Cinit%3E(java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.command', + c: 'ConditionalCommand', + l: 'ConditionalCommand(BooleanSupplier, Command)', + u: '%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'ConditionalCommand', + l: 'ConditionalCommand(BooleanSupplier, Command, Command)', + u: '%3Cinit%3E(java.util.function.BooleanSupplier,com.technototes.library.command.Command,com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.util', + c: 'MathUtils', + l: 'constrain(double, double, double)', + u: 'constrain(double,double,double)', + }, + { + p: 'com.technototes.library.util', + c: 'MathUtils', + l: 'constrain(int, int, int)', + u: 'constrain(int,int,int)', + }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoProfiler.Constraints', + l: 'Constraints(double, double, double)', + u: '%3Cinit%3E(double,double,double)', + }, + { p: 'com.technototes.library.util', c: 'SmartConsumer', l: 'consume(T)' }, + { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'countCancel' }, + { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'countCancel()' }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'create(Command, Subsystem...)', + u: 'create(com.technototes.library.command.Command,com.technototes.library.subsystem.Subsystem...)', + }, + { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'create(int)' }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'create(String)', + u: 'create(java.lang.String)', + }, + { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'crServo(int)' }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'crServo(String)', + u: 'crServo(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'CRServoBuilder', + l: 'CRServoBuilder(CRServo)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.CRServo)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'CRServoBuilder', + l: 'CRServoBuilder(int)', + u: '%3Cinit%3E(int)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'CRServoBuilder', + l: 'CRServoBuilder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { p: 'com.technototes.library.util', c: 'Color', l: 'CYAN' }, + { p: 'com.technototes.library.util', c: 'Characters', l: 'CYCLE' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'DARK_GRAY' }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'deadline(Command...)', + u: 'deadline(com.technototes.library.command.Command...)', + }, + { p: 'com.technototes.library.control', c: 'AxisBase', l: 'DEFAULT_TRIGGER_THRESHOLD' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'degrees()' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder', l: 'degrees()' }, + { p: 'com.technototes.library.hardware', c: 'HardwareDevice', l: 'device' }, + { p: 'com.technototes.library.subsystem', c: 'DeviceSubsystem', l: 'device' }, + { + p: 'com.technototes.library.subsystem', + c: 'DeviceSubsystem', + l: 'DeviceSubsystem(T)', + u: '%3Cinit%3E(T)', + }, + { p: 'com.technototes.library.util', c: 'Differential.DifferentialPriority', l: 'DIFFERENCE' }, + { + p: 'com.technototes.library.util', + c: 'Differential', + l: 'Differential(DoubleConsumer, DoubleConsumer)', + u: '%3Cinit%3E(java.util.function.DoubleConsumer,java.util.function.DoubleConsumer)', + }, + { + p: 'com.technototes.library.util', + c: 'Differential', + l: 'Differential(DoubleConsumer, DoubleConsumer, Differential.DifferentialPriority)', + u: '%3Cinit%3E(java.util.function.DoubleConsumer,java.util.function.DoubleConsumer,com.technototes.library.util.Differential.DifferentialPriority)', + }, + { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'digital(int)' }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'digital(String)', + u: 'digital(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'DigitalBuilder', + l: 'DigitalBuilder(DigitalChannel)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DigitalChannel)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'DigitalBuilder', + l: 'DigitalBuilder(int)', + u: '%3Cinit%3E(int)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'DigitalBuilder', + l: 'DigitalBuilder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'DigitalSensor', + l: 'DigitalSensor(DigitalChannel)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DigitalChannel)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'DigitalSensor', + l: 'DigitalSensor(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'CRServoBuilder', + l: 'direction(DcMotorSimple.Direction)', + u: 'direction(com.qualcomm.robotcore.hardware.DcMotorSimple.Direction)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'MotorBuilder', + l: 'direction(DcMotorSimple.Direction)', + u: 'direction(com.qualcomm.robotcore.hardware.DcMotorSimple.Direction)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'ServoBuilder', + l: 'direction(Servo.Direction)', + u: 'direction(com.qualcomm.robotcore.hardware.Servo.Direction)', + }, + { p: 'com.technototes.library.control', c: 'CommandGamepad', l: 'disable()' }, + { p: 'com.technototes.library.general', c: 'Enablable', l: 'disable()' }, + { p: 'com.technototes.library.hardware2', c: 'ColorRangeBuilder', l: 'disable()' }, + { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'disable()' }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'distance(String)', + u: 'distance(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'DistanceBuilder', + l: 'DistanceBuilder(DistanceSensor)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DistanceSensor)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'DistanceBuilder', + l: 'DistanceBuilder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { p: 'com.technototes.library.control', c: 'AxisBase', l: 'doubleSupplier' }, + { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'down' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'dpad' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'dpadDown' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'dpadLeft' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'dpadRight' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'dpadUp' }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'TankDrivebaseSubsystem', + l: 'drive(double, double)', + u: 'drive(double,double)', + }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'SimpleMecanumDrivebaseSubsystem', + l: 'drive(double, double, double)', + u: 'drive(double,double,double)', + }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'SimpleMecanumDrivebaseSubsystem', + l: 'drive(double, double, double, double)', + u: 'drive(double,double,double,double)', + }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'DrivebaseSubsystem', + l: 'DrivebaseSubsystem(DoubleSupplier, Motor...)', + u: '%3Cinit%3E(java.util.function.DoubleSupplier,com.technototes.library.hardware.motor.Motor...)', + }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'DrivebaseSubsystem', + l: 'DrivebaseSubsystem(Motor...)', + u: '%3Cinit%3E(com.technototes.library.hardware.motor.Motor...)', + }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'driverGamepad' }, + { p: 'com.technototes.library.util', c: 'Characters', l: 'DUCK' }, + { + p: 'com.technototes.library.hardware', + c: 'DummyDevice', + l: 'DummyDevice(T)', + u: '%3Cinit%3E(T)', + }, + { p: 'com.technototes.library.logger', c: 'LogConfig.Run', l: 'duringInit()' }, + { p: 'com.technototes.library.logger', c: 'LogConfig.Run', l: 'duringRun()' }, + { p: 'com.technototes.library.control', c: 'CommandGamepad', l: 'enable()' }, + { p: 'com.technototes.library.general', c: 'Enablable', l: 'enable()' }, + { p: 'com.technototes.library.hardware2', c: 'ColorRangeBuilder', l: 'enable()' }, + { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'enable()' }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotor', + l: 'EncodedMotor(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotor', + l: 'EncodedMotor(String, Encoder)', + u: '%3Cinit%3E(java.lang.String,com.technototes.library.hardware.sensor.encoder.Encoder)', + }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotor', + l: 'EncodedMotor(T)', + u: '%3Cinit%3E(T)', + }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotor', + l: 'EncodedMotor(T, Encoder)', + u: '%3Cinit%3E(T,com.technototes.library.hardware.sensor.encoder.Encoder)', + }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotorGroup', + l: 'EncodedMotorGroup(EncodedMotor, Motor...)', + u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor,com.technototes.library.hardware.motor.Motor...)', + }, + { + p: 'com.technototes.library.subsystem.motor', + c: 'EncodedMotorSubsystem', + l: 'EncodedMotorSubsystem(EncodedMotor)', + u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor)', + }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode.OpModeState', l: 'END' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'end()' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'end(boolean)' }, + { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'end(boolean)' }, + { + p: 'com.technototes.library.logger.entry', + c: 'Entry', + l: 'Entry(String, Supplier, int)', + u: '%3Cinit%3E(java.lang.String,java.util.function.Supplier,int)', + }, + { p: 'com.technototes.library.command', c: 'Command', l: 'execute()' }, + { p: 'com.technototes.library.command', c: 'CommandBase', l: 'execute()' }, + { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'execute()' }, + { p: 'com.technototes.library.command', c: 'ConditionalCommand', l: 'execute()' }, + { p: 'com.technototes.library.command', c: 'WaitCommand', l: 'execute()' }, + { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'EXECUTING' }, + { p: 'com.technototes.library.hardware2', c: 'ServoBuilder', l: 'expandedPWM()' }, + { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'expandedRange()' }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'ExternalEncoder', + l: 'ExternalEncoder(AnalogInput)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.AnalogInput)', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'ExternalEncoder', + l: 'ExternalEncoder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'falseValue()' }, + { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'FINISHED' }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'SimpleMecanumDrivebaseSubsystem', + l: 'flMotor', + }, + { p: 'com.technototes.library.logger', c: 'Log', l: 'format()' }, + { + p: 'com.technototes.library.util', + c: 'Color', + l: 'format(Object)', + u: 'format(java.lang.Object)', + }, + { + p: 'com.technototes.library.util', + c: 'Color', + l: 'format(String, Object...)', + u: 'format(java.lang.String,java.lang.Object...)', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder.Direction', + l: 'FORWARD', + }, + { p: 'com.technototes.library.hardware2', c: 'CRServoBuilder', l: 'forward()' }, + { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'forward()' }, + { p: 'com.technototes.library.hardware2', c: 'ServoBuilder', l: 'forward()' }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'SimpleMecanumDrivebaseSubsystem', + l: 'frMotor', + }, + { p: 'com.technototes.library.hardware2', c: 'ColorRangeBuilder', l: 'gain(float)' }, + { p: 'com.technototes.library.util', c: 'Characters', l: 'GAMEPAD' }, + { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'gamepad1' }, + { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'gamepad2' }, + { + p: 'com.technototes.library.control', + c: 'GamepadBase', + l: 'GamepadBase(Gamepad, Class, Class)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.Gamepad,java.lang.Class,java.lang.Class)', + }, + { + p: 'com.technototes.library.control', + c: 'GamepadDpad', + l: 'GamepadDpad(T, T, T, T)', + u: '%3Cinit%3E(T,T,T,T)', + }, + { + p: 'com.technototes.library.control', + c: 'GamepadStick', + l: 'GamepadStick(T, T, U)', + u: '%3Cinit%3E(T,T,U)', + }, + { p: 'com.technototes.library.command', c: 'Command', l: 'get()' }, + { p: 'com.technototes.library.control', c: 'Binding', l: 'get()' }, + { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'get()' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'get()' }, + { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'get()' }, + { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'get()' }, + { + p: 'com.technototes.library.control', + c: 'Binding', + l: 'get(Binding.Type)', + u: 'get(com.technototes.library.control.Binding.Type)', + }, + { + p: 'com.technototes.library.util', + c: 'Alliance', + l: 'get(Class)', + u: 'get(java.lang.Class)', + }, + { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'getAllDeviceList()' }, + { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'getAllDevices()' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotorGroup', l: 'getAllDevices()' }, + { p: 'com.technototes.library.hardware.motor', c: 'MotorGroup', l: 'getAllDevices()' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoGroup', l: 'getAllDevices()' }, + { p: 'com.technototes.library.control', c: 'Stick', l: 'getAngle()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'getAngularOrientation()' }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IMU', + l: 'getAngularOrientation(AngleUnit)', + u: 'getAngularOrientation(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)', + }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'getAngularVelocity()' }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IMU', + l: 'getAngularVelocity(AngleUnit)', + u: 'getAngularVelocity(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)', + }, + { p: 'com.technototes.library.control', c: 'Binding', l: 'getAsBoolean()' }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'getAsBoolean()' }, + { p: 'com.technototes.library.control', c: 'CommandAxis', l: 'getAsButton()' }, + { p: 'com.technototes.library.control', c: 'CommandAxis', l: 'getAsButton(double)' }, + { p: 'com.technototes.library.control', c: 'AxisBase', l: 'getAsDouble()' }, + { p: 'com.technototes.library.hardware', c: 'Sensored', l: 'getAsDouble()' }, + { p: 'com.technototes.library.util', c: 'Differential', l: 'getAverage()' }, + { + p: 'com.technototes.library.control', + c: 'GamepadBase', + l: 'getAxis(GamepadBase.Axis)', + u: 'getAxis(com.technototes.library.control.GamepadBase.Axis)', + }, + { + p: 'com.technototes.library.control', + c: 'GamepadBase', + l: 'getAxisAsBoolean(GamepadBase.Axis)', + u: 'getAxisAsBoolean(com.technototes.library.control.GamepadBase.Axis)', + }, + { + p: 'com.technototes.library.control', + c: 'GamepadBase', + l: 'getAxisAsDouble(GamepadBase.Axis)', + u: 'getAxisAsDouble(com.technototes.library.control.GamepadBase.Axis)', + }, + { + p: 'com.technototes.library.control', + c: 'GamepadBase', + l: 'getButton(GamepadBase.Button)', + u: 'getButton(com.technototes.library.control.GamepadBase.Button)', + }, + { + p: 'com.technototes.library.control', + c: 'GamepadBase', + l: 'getButtonAsBoolean(GamepadBase.Button)', + u: 'getButtonAsBoolean(com.technototes.library.control.GamepadBase.Button)', + }, + { p: 'com.technototes.library.util', c: 'Alliance', l: 'getColor()' }, + { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'getConnectionInfo()' }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder', + l: 'getCorrectedVelocity()', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'getCurrent(Subsystem)', + u: 'getCurrent(com.technototes.library.subsystem.Subsystem)', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder', + l: 'getCurrentPosition()', + }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getCurrentPosition()' }, + { p: 'com.technototes.library.hardware', c: 'Speaker', l: 'getCurrentSong()' }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'getDefault(Subsystem)', + u: 'getDefault(com.technototes.library.subsystem.Subsystem)', + }, + { p: 'com.technototes.library.subsystem', c: 'Subsystem', l: 'getDefaultCommand()' }, + { p: 'com.technototes.library.control', c: 'Binding', l: 'getDefaultType()' }, + { p: 'com.technototes.library.control', c: 'CommandBinding', l: 'getDefaultType()' }, + { p: 'com.technototes.library.util', c: 'Differential', l: 'getDeviation()' }, + { p: 'com.technototes.library.hardware', c: 'HardwareDevice', l: 'getDevice()' }, + { p: 'com.technototes.library.subsystem', c: 'DeviceSubsystem', l: 'getDevice()' }, + { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'getDeviceName()' }, + { p: 'com.technototes.library.util', c: 'Differential', l: 'getDifferentialPriority()' }, + { p: 'com.technototes.library.hardware.sensor.encoder', c: 'MotorEncoder', l: 'getDirection()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IDistanceSensor', l: 'getDistance()' }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'ColorDistanceSensor', + l: 'getDistance(DistanceUnit)', + u: 'getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IDistanceSensor', + l: 'getDistance(DistanceUnit)', + u: 'getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'Rev2MDistanceSensor', + l: 'getDistance(DistanceUnit)', + u: 'getDistance(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', + }, + { p: 'com.technototes.library.control', c: 'Stick', l: 'getDistanceFromCenter()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'getDpad()' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'getEncoder()' }, + { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'getFollowerist()' }, + { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'getFollowers()' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotorGroup', l: 'getFollowers()' }, + { p: 'com.technototes.library.hardware.motor', c: 'MotorGroup', l: 'getFollowers()' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoGroup', l: 'getFollowers()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'getGamepad()' }, + { p: 'com.technototes.library.subsystem.drivebase', c: 'DrivebaseSubsystem', l: 'getGyro()' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'getHexValue()' }, + { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'getIndex()' }, + { p: 'com.technototes.library.command', c: 'CommandScheduler', l: 'getInstance()' }, + { p: 'com.technototes.library.control', c: 'CommandAxis', l: 'getInstance()' }, + { p: 'com.technototes.library.control', c: 'CommandButton', l: 'getInstance()' }, + { p: 'com.technototes.library.control', c: 'CommandInput', l: 'getInstance()' }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'getInverted()' }, + { p: 'com.technototes.library.general', c: 'Invertable', l: 'getInverted()' }, + { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'getInverted()' }, + { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'getInverted()' }, + { p: 'com.technototes.library.util', c: 'SmartConsumer', l: 'getLast()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'getLeftStick()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'ColorDistanceSensor', l: 'getLight()' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'getLogger()' }, + { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'getManufacturer()' }, + { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'getMap()' }, + { p: 'com.technototes.library.util', c: 'MathUtils', l: 'getMax(double...)' }, + { p: 'com.technototes.library.util', c: 'MathUtils', l: 'getMax(int...)' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getMaxAccel()' }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoProfiler.Constraints', + l: 'getMaxAcceleration()', + }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getMaxVel()' }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoProfiler.Constraints', + l: 'getMaxVelocity()', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder.Direction', + l: 'getMultiplier()', + }, + { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'getName()' }, + { p: 'com.technototes.library.command', c: 'CommandScheduler', l: 'getOpModeRuntime()' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'getOpModeRuntime()' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'getOpModeState()' }, + { p: 'com.technototes.library.hardware.sensor.encoder', c: 'Encoder', l: 'getPosition()' }, + { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'getPosition()' }, + { p: 'com.technototes.library.subsystem.servo', c: 'ServoSubsystem', l: 'getPosition()' }, + { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'getPriority()' }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoProfiler.Constraints', + l: 'getProportion()', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder', + l: 'getRawVelocity()', + }, + { p: 'com.technototes.library.command', c: 'Command', l: 'getRequirements()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'getRightStick()' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'getRuntime()' }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'DrivebaseSubsystem', + l: 'getScale(double...)', + }, + { p: 'com.technototes.library.command', c: 'WaitCommand', l: 'getSeconds()' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'getSensorValue()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'AnalogSensor', l: 'getSensorValue()' }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'ExternalEncoder', + l: 'getSensorValue()', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder', + l: 'getSensorValue()', + }, + { p: 'com.technototes.library.hardware', c: 'Sensored', l: 'getSensorValue()' }, + { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'getSensorValue()' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getServo()' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'getSpeed()' }, + { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'getSpeed()' }, + { p: 'com.technototes.library.subsystem.drivebase', c: 'DrivebaseSubsystem', l: 'getSpeed()' }, + { p: 'com.technototes.library.subsystem.motor', c: 'MotorSubsystem', l: 'getSpeed()' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'getState()' }, + { p: 'com.technototes.library.control', c: 'Binding', l: 'getSuppliers()' }, + { p: 'com.technototes.library.control', c: 'CommandBinding', l: 'getSuppliers()' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getTargetPosition()' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'getTargetTolerance()' }, + { p: 'com.technototes.library.control', c: 'AxisBase', l: 'getTriggerThreshold()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'ColorDistanceSensor', l: 'getUnit()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IDistanceSensor', l: 'getUnit()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'Rev2MDistanceSensor', l: 'getUnit()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'DigitalSensor', l: 'getValue()' }, + { p: 'com.technototes.library.util', c: 'Integral', l: 'getValue()' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'getVelocity()' }, + { p: 'com.technototes.library.hardware', c: 'DummyDevice', l: 'getVersion()' }, + { p: 'com.technototes.library', c: 'RobotLibrary', l: 'getVersion()' }, + { p: 'com.technototes.library.hardware', c: 'Speaker', l: 'getVolume()' }, + { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'getXAxis()' }, + { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'getXAxis()' }, + { p: 'com.technototes.library.control', c: 'Stick', l: 'getXAxis()' }, + { p: 'com.technototes.library.control', c: 'Stick', l: 'getXSupplier()' }, + { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'getYAxis()' }, + { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'getYAxis()' }, + { p: 'com.technototes.library.control', c: 'Stick', l: 'getYAxis()' }, + { p: 'com.technototes.library.control', c: 'Stick', l: 'getYSupplier()' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'GREEN' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'green()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IGyro', l: 'gyroHeading()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'gyroHeading()' }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IMU', + l: 'gyroHeading(AngleUnit)', + u: 'gyroHeading(org.firstinspires.ftc.robotcore.external.navigation.AngleUnit)', + }, + { p: 'com.technototes.library.hardware.sensor', c: 'IGyro', l: 'gyroHeadingInDegrees()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'gyroHeadingInDegrees()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IGyro', l: 'gyroHeadingInRadians()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'gyroHeadingInRadians()' }, + { p: 'com.technototes.library.subsystem.drivebase', c: 'DrivebaseSubsystem', l: 'gyroSupplier' }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'HardwareBuilder(int)', + u: '%3Cinit%3E(int)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'HardwareBuilder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'HardwareBuilder(T)', + u: '%3Cinit%3E(T)', + }, + { + p: 'com.technototes.library.hardware', + c: 'HardwareDevice', + l: 'HardwareDevice(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware', + c: 'HardwareDevice', + l: 'HardwareDevice(T)', + u: '%3Cinit%3E(T)', + }, + { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'hardwareMap' }, + { p: 'com.technototes.library.hardware', c: 'HardwareDevice', l: 'hardwareMap' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'hsv()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'hsvArray()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'hue()' }, + { + p: 'com.technototes.library.hardware2', + c: 'MotorBuilder', + l: 'idle(DcMotor.ZeroPowerBehavior)', + u: 'idle(com.qualcomm.robotcore.hardware.DcMotor.ZeroPowerBehavior)', + }, + { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'ignoreCancel()' }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IMU', + l: 'IMU(IMU, IMU.Parameters)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.IMU,com.qualcomm.robotcore.hardware.IMU.Parameters)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IMU', + l: 'IMU(IMU, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.IMU,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.LogoFacingDirection,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.UsbFacingDirection)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'imu(String)', + u: 'imu(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IMU', + l: 'IMU(String, IMU.Parameters)', + u: '%3Cinit%3E(java.lang.String,com.qualcomm.robotcore.hardware.IMU.Parameters)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IMU', + l: 'IMU(String, RevHubOrientationOnRobot.LogoFacingDirection, RevHubOrientationOnRobot.UsbFacingDirection)', + u: '%3Cinit%3E(java.lang.String,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.LogoFacingDirection,com.qualcomm.hardware.rev.RevHubOrientationOnRobot.UsbFacingDirection)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'IMUBuilder', + l: 'IMUBuilder(BNO055IMUImpl)', + u: '%3Cinit%3E(com.qualcomm.hardware.bosch.BNO055IMUImpl)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'IMUBuilder', + l: 'IMUBuilder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'incrementPosition(double)' }, + { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'index()' }, + { p: 'com.technototes.library.logger', c: 'Log', l: 'index()' }, + { p: 'com.technototes.library.logger', c: 'Log.Number', l: 'index()' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode.OpModeState', l: 'INIT' }, + { p: 'com.technototes.library.logger', c: 'Logger', l: 'initEntries' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'initialize()' }, + { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'initialize()' }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IMU', + l: 'initialize(IMU.Parameters)', + u: 'initialize(com.qualcomm.robotcore.hardware.IMU.Parameters)', + }, + { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'INITIALIZING' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'initLoop()' }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'initMap(HardwareMap)', + u: 'initMap(com.qualcomm.robotcore.hardware.HardwareMap)', + }, + { p: 'com.technototes.library.logger', c: 'Logger', l: 'initUpdate()' }, + { p: 'com.technototes.library.hardware2', c: 'DigitalBuilder', l: 'input()' }, + { p: 'com.technototes.library.util', c: 'Range', l: 'inRange(double)' }, + { p: 'com.technototes.library.util', c: 'Integral', l: 'Integral()', u: '%3Cinit%3E()' }, + { + p: 'com.technototes.library.util', + c: 'Integral', + l: 'Integral(double)', + u: '%3Cinit%3E(double)', + }, + { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'INTERRUPTED' }, + { p: 'com.technototes.library.general', c: 'Invertable', l: 'invert()' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'invert()' }, + { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'invert()' }, + { p: 'com.technototes.library.hardware.sensor.encoder', c: 'MotorEncoder', l: 'invert()' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'isAtPosition(double)' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'isAtTarget()' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'isCancelled()' }, + { p: 'com.technototes.library.general', c: 'Enablable', l: 'isDisabled()' }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isEnabled()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'isEnabled()' }, + { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'isEnabled()' }, + { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'isEnabled()' }, + { p: 'com.technototes.library.general', c: 'Enablable', l: 'isEnabled()' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'isFinished()' }, + { p: 'com.technototes.library.command', c: 'CommandBase', l: 'isFinished()' }, + { p: 'com.technototes.library.command', c: 'CommandGroup', l: 'isFinished()' }, + { p: 'com.technototes.library.command', c: 'ConditionalCommand', l: 'isFinished()' }, + { p: 'com.technototes.library.command', c: 'ParallelCommandGroup', l: 'isFinished()' }, + { p: 'com.technototes.library.command', c: 'ParallelDeadlineGroup', l: 'isFinished()' }, + { p: 'com.technototes.library.command', c: 'ParallelRaceGroup', l: 'isFinished()' }, + { p: 'com.technototes.library.command', c: 'SequentialCommandGroup', l: 'isFinished()' }, + { p: 'com.technototes.library.command', c: 'WaitCommand', l: 'isFinished()' }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isInverseToggled()' }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isJustInverseToggled()' }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isJustPressed()' }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isJustReleased()' }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isJustToggled()' }, + { p: 'com.technototes.library', c: 'RobotLibrary', l: 'isPreRelease()' }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isPressed()' }, + { p: 'com.technototes.library.util', c: 'MathUtils', l: 'isPrime(int)' }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isReleased()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'isRumbling()' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'isRunning()' }, + { + p: 'com.technototes.library.structure', + c: 'CommandOpMode.OpModeState', + l: 'isState(CommandOpMode.OpModeState...)', + u: 'isState(com.technototes.library.structure.CommandOpMode.OpModeState...)', + }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'isToggled()' }, + { + p: 'com.technototes.library.command', + c: 'IterativeCommand', + l: 'IterativeCommand(Function, BooleanSupplier)', + u: '%3Cinit%3E(java.util.function.Function,java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.command', + c: 'IterativeCommand', + l: 'IterativeCommand(Function, int)', + u: '%3Cinit%3E(java.util.function.Function,int)', + }, + { + p: 'com.technototes.library.command', + c: 'IterativeCommand', + l: 'IterativeCommand(Function, int, BooleanSupplier)', + u: '%3Cinit%3E(java.util.function.Function,int,java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.command', + c: 'IterativeCommand', + l: 'IterativeCommand(Function, T, T, Function)', + u: '%3Cinit%3E(java.util.function.Function,T,T,java.util.function.Function)', + }, + { + p: 'com.technototes.library.command', + c: 'IterativeCommand', + l: 'IterativeCommand(Function, T, T, Function, BooleanSupplier)', + u: '%3Cinit%3E(java.util.function.Function,T,T,java.util.function.Function,java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'SimpleMecanumDrivebaseSubsystem', + l: 'joystickDrive(double, double, double)', + u: 'joystickDrive(double,double,double)', + }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'SimpleMecanumDrivebaseSubsystem', + l: 'joystickDriveWithGyro(double, double, double, double)', + u: 'joystickDriveWithGyro(double,double,double,double)', + }, + { p: 'com.technototes.library.command', c: 'Command', l: 'justFinished()' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'justFinishedNoCancel()' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'justStarted()' }, + { p: 'com.technototes.library.command', c: 'SequentialCommandGroup', l: 'lastCommand' }, + { p: 'com.technototes.library.hardware2', c: 'ColorRangeBuilder', l: 'led(boolean)' }, + { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'left' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'LEFT_BUMPER' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'LEFT_STICK_BUTTON' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'LEFT_STICK_X' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'LEFT_STICK_Y' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'LEFT_TRIGGER' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftBumper' }, + { p: 'com.technototes.library.subsystem.drivebase', c: 'TankDrivebaseSubsystem', l: 'leftSide' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftStick' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftStickButton' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftStickX' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftStickY' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'leftTrigger' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'LIGHT_GRAY' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'LIME' }, + { + p: 'com.technototes.library.logger', + c: 'Logger', + l: 'Logger(OpMode)', + u: '%3Cinit%3E(com.qualcomm.robotcore.eventloop.opmode.OpMode)', + }, + { p: 'com.technototes.library.util', c: 'Color', l: 'MAGENTA' }, + { p: 'com.technototes.library.util', c: 'SmartConsumer', l: 'map' }, + { + p: 'com.technototes.library.util', + c: 'MathUtils', + l: 'map(double, double, double, double, double)', + u: 'map(double,double,double,double,double)', + }, + { p: 'com.technototes.library.util', c: 'MapUtils', l: 'MapUtils()', u: '%3Cinit%3E()' }, + { p: 'com.technototes.library.util', c: 'MathUtils', l: 'MathUtils()', u: '%3Cinit%3E()' }, + { p: 'com.technototes.library.util', c: 'Range', l: 'max' }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoProfiler.Constraints', + l: 'maxAcceleration', + }, + { p: 'com.technototes.library.subsystem.motor', c: 'EncodedMotorSubsystem', l: 'maxSpeed' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler.Constraints', l: 'maxVelocity' }, + { p: 'com.technototes.library.util', c: 'Range', l: 'middle()' }, + { p: 'com.technototes.library.util', c: 'Range', l: 'min' }, + { + p: 'com.technototes.library.hardware2', + c: 'MotorBuilder', + l: 'mode(DcMotor.RunMode)', + u: 'mode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'DigitalBuilder', + l: 'mode(DigitalChannel.Mode)', + u: 'mode(com.qualcomm.robotcore.hardware.DigitalChannel.Mode)', + }, + { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'motor(int)' }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'motor(String)', + u: 'motor(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.motor', + c: 'Motor', + l: 'Motor(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'Motor(T)', u: '%3Cinit%3E(T)' }, + { + p: 'com.technototes.library.hardware2', + c: 'MotorBuilder', + l: 'MotorBuilder(DcMotorEx)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'MotorBuilder', + l: 'MotorBuilder(int)', + u: '%3Cinit%3E(int)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'MotorBuilder', + l: 'MotorBuilder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder', + l: 'MotorEncoder(DcMotorEx)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx)', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder', + l: 'MotorEncoder(DcMotorEx, ElapsedTime)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DcMotorEx,com.qualcomm.robotcore.util.ElapsedTime)', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder', + l: 'MotorEncoder(EncodedMotor)', + u: '%3Cinit%3E(com.technototes.library.hardware.motor.EncodedMotor)', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder', + l: 'MotorEncoder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.motor', + c: 'MotorGroup', + l: 'MotorGroup(Motor...)', + u: '%3Cinit%3E(com.technototes.library.hardware.motor.Motor...)', + }, + { + p: 'com.technototes.library.subsystem.motor', + c: 'MotorSubsystem', + l: 'MotorSubsystem(T)', + u: '%3Cinit%3E(T)', + }, + { + p: 'com.qualcomm.robotcore.eventloop.opmode', + c: 'CommandOpMode', + l: 'MS_BEFORE_FORCE_STOP_AFTER_STOP_REQUESTED', + }, + { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'msStuckDetectStop' }, + { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'name' }, + { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'name()' }, + { p: 'com.technototes.library.logger', c: 'Log', l: 'name()' }, + { p: 'com.technototes.library.logger', c: 'Log.Number', l: 'name()' }, + { p: 'com.technototes.library.util', c: 'Differential.DifferentialPriority', l: 'NEUTRAL' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'NNN' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'NNN' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'NNP' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'NNP' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'NO_COLOR' }, + { p: 'com.technototes.library.util', c: 'Alliance', l: 'NONE' }, + { p: 'com.technototes.library.control', c: 'Binding.Type', l: 'NONE_ACTIVE' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'NPN' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'NPN' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'NPP' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'NPP' }, + { p: 'com.technototes.library.logger.entry', c: 'NumberEntry', l: 'numberColor' }, + { + p: 'com.technototes.library.logger.entry', + c: 'NumberEntry', + l: 'NumberEntry(String, Supplier, int)', + u: '%3Cinit%3E(java.lang.String,java.util.function.Supplier,int)', + }, + { + p: 'com.technototes.library.util', + c: 'MapUtils', + l: 'of(Pair...)', + u: 'of(android.util.Pair...)', + }, + { p: 'com.technototes.library.util', c: 'Alliance.Selector', l: 'of(T, T)', u: 'of(T,T)' }, + { p: 'com.technototes.library.hardware.sensor.encoder', c: 'MotorEncoder', l: 'offset' }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'onlyIf(BooleanSupplier)', + u: 'onlyIf(java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.hardware.servo', + c: 'Servo', + l: 'onRange(double, double)', + u: 'onRange(double,double)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'ColorDistanceSensor', + l: 'onUnit(DistanceUnit)', + u: 'onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IDistanceSensor', + l: 'onUnit(DistanceUnit)', + u: 'onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'Rev2MDistanceSensor', + l: 'onUnit(DistanceUnit)', + u: 'onUnit(org.firstinspires.ftc.robotcore.external.navigation.DistanceUnit)', + }, + { p: 'com.technototes.library.util', c: 'Color', l: 'ORANGE' }, + { p: 'com.technototes.library.hardware2', c: 'DigitalBuilder', l: 'output()' }, + { + p: 'com.technototes.library.command', + c: 'ParallelCommandGroup', + l: 'ParallelCommandGroup(Command...)', + u: '%3Cinit%3E(com.technototes.library.command.Command...)', + }, + { + p: 'com.technototes.library.command', + c: 'ParallelDeadlineGroup', + l: 'ParallelDeadlineGroup(Command, Command...)', + u: '%3Cinit%3E(com.technototes.library.command.Command,com.technototes.library.command.Command...)', + }, + { + p: 'com.technototes.library.command', + c: 'ParallelRaceGroup', + l: 'ParallelRaceGroup(Command...)', + u: '%3Cinit%3E(com.technototes.library.command.Command...)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'IMUBuilder', + l: 'parameter(Consumer)', + u: 'parameter(java.util.function.Consumer)', + }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'periodic()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'periodic()' }, + { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'periodic()' }, + { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'periodic()' }, + { p: 'com.technototes.library.general', c: 'Periodic', l: 'periodic()' }, + { p: 'com.technototes.library.subsystem', c: 'DeviceSubsystem', l: 'periodic()' }, + { p: 'com.technototes.library.subsystem', c: 'Subsystem', l: 'periodic()' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'PINK' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'PNN' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'PNN' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'PNP' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'PNP' }, + { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'position(double)' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'positionThreshold' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'PPN' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'PPN' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'PPP' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'PPP' }, + { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'priority' }, + { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'priority()' }, + { p: 'com.technototes.library.logger', c: 'Log.Number', l: 'priority()' }, + { p: 'com.technototes.library.logger', c: 'Log', l: 'priority()' }, + { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'product' }, + { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'propagate(double)' }, + { p: 'com.technototes.library.hardware', c: 'HardwareDeviceGroup', l: 'propogate(double)' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotorGroup', l: 'propogate(double)' }, + { p: 'com.technototes.library.hardware.motor', c: 'MotorGroup', l: 'propogate(double)' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoGroup', l: 'propogate(double)' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler.Constraints', l: 'proportion' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'ps_circle' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'PS_CIRCLE' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'ps_cross' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'PS_CROSS' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'ps_options' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'PS_OPTIONS' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'ps_share' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'PS_SHARE' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'ps_square' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'PS_SQUARE' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'ps_triangle' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'PS_TRIANGLE' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'PURPLE' }, + { + p: 'com.technototes.library.hardware2', + c: 'ServoBuilder', + l: 'pwmRange(double, double)', + u: 'pwmRange(double,double)', + }, + { p: 'com.technototes.library.util', c: 'MathUtils', l: 'pythag(double...)' }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'raceWith(Command...)', + u: 'raceWith(com.technototes.library.command.Command...)', + }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'radians()' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder', l: 'radians()' }, + { + p: 'com.technototes.library.hardware2', + c: 'ServoBuilder', + l: 'range(double, double)', + u: 'range(double,double)', + }, + { + p: 'com.technototes.library.util', + c: 'Range', + l: 'Range(double, double)', + u: '%3Cinit%3E(double,double)', + }, + { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'raw()' }, + { p: 'com.technototes.library.util', c: 'Alliance', l: 'RED' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'RED' }, + { p: 'com.technototes.library.util', c: 'Characters', l: 'RED_SQUARE' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'red()' }, + { p: 'com.technototes.library.subsystem', c: 'Subsystem', l: 'register()' }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'register(Periodic)', + u: 'register(com.technototes.library.general.Periodic)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'IMUBuilder', + l: 'remap(AxesOrder, IMUBuilder.AxesSigns)', + u: 'remap(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware2.IMUBuilder.AxesSigns)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IMU', + l: 'remapAxesAndSigns(AxesOrder, IMU.AxesSigns)', + u: 'remapAxesAndSigns(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware.sensor.IMU.AxesSigns)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IMU', + l: 'remapLegacyAxes(AxesOrder, IMU.AxesSigns)', + u: 'remapLegacyAxes(org.firstinspires.ftc.robotcore.external.navigation.AxesOrder,com.technototes.library.hardware.sensor.IMU.AxesSigns)', + }, + { + p: 'com.technototes.library.logger', + c: 'Logger', + l: 'repeat(String, int)', + u: 'repeat(java.lang.String,int)', + }, + { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'requestOpModeStop()' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'requirementMap' }, + { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'RESET' }, + { p: 'com.technototes.library.util', c: 'SmartConsumer', l: 'reset()' }, + { + p: 'com.technototes.library.hardware', + c: 'DummyDevice', + l: 'resetDeviceConfigurationForOpMode()', + }, + { p: 'com.technototes.library.command', c: 'CommandScheduler', l: 'resetScheduler()' }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'Rev2MDistanceSensor', + l: 'Rev2MDistanceSensor(DistanceSensor)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.DistanceSensor)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'Rev2MDistanceSensor', + l: 'Rev2MDistanceSensor(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder.Direction', + l: 'REVERSE', + }, + { p: 'com.technototes.library.hardware2', c: 'CRServoBuilder', l: 'reverse()' }, + { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'reverse()' }, + { p: 'com.technototes.library.hardware2', c: 'ServoBuilder', l: 'reverse()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'rgb()' }, + { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'right' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'RIGHT_BUMPER' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'RIGHT_STICK_BUTTON' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'RIGHT_STICK_X' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'RIGHT_STICK_Y' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'RIGHT_TRIGGER' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightBumper' }, + { p: 'com.technototes.library.subsystem.drivebase', c: 'TankDrivebaseSubsystem', l: 'rightSide' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightStick' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightStickButton' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightStickX' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightStickY' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rightTrigger' }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'SimpleMecanumDrivebaseSubsystem', + l: 'rlMotor', + }, + { p: 'com.technototes.library', c: 'RobotLibrary', l: 'RobotLibrary()', u: '%3Cinit%3E()' }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'SimpleMecanumDrivebaseSubsystem', + l: 'rrMotor', + }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rumble()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rumble(double)' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rumbleBlip()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'rumbleBlips(int)' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode.OpModeState', l: 'RUN' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'run()' }, + { p: 'com.technototes.library.command', c: 'CommandScheduler', l: 'run()' }, + { p: 'com.technototes.library.logger', c: 'Logger', l: 'runEntries' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'runLoop()' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'runOpMode()' }, + { p: 'com.technototes.library.logger', c: 'Logger', l: 'runUpdate()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'saturation()' }, + { p: 'com.technototes.library.util', c: 'Range', l: 'scale(double)' }, + { + p: 'com.technototes.library.hardware.servo', + c: 'Servo', + l: 'scalePWM(double, double)', + u: 'scalePWM(double,double)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'schedule(BooleanSupplier, Command)', + u: 'schedule(java.util.function.BooleanSupplier,com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandGroup', + l: 'schedule(Command)', + u: 'schedule(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'schedule(Command)', + u: 'schedule(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'ParallelCommandGroup', + l: 'schedule(Command)', + u: 'schedule(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'ParallelDeadlineGroup', + l: 'schedule(Command)', + u: 'schedule(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'ParallelRaceGroup', + l: 'schedule(Command)', + u: 'schedule(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'SequentialCommandGroup', + l: 'schedule(Command)', + u: 'schedule(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'schedule(Command)', + u: 'schedule(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'schedule(Command, BooleanSupplier)', + u: 'schedule(com.technototes.library.command.Command,java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandButton', + l: 'schedule(Consumer)', + u: 'schedule(java.util.function.Consumer)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandButton', + l: 'schedule(Function)', + u: 'schedule(java.util.function.Function)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandAxis', + l: 'schedule(Function)', + u: 'schedule(java.util.function.Function)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleAfterOther(Command, Command)', + u: 'scheduleAfterOther(com.technototes.library.command.Command,com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleAfterOther(Command, Command, BooleanSupplier)', + u: 'scheduleAfterOther(com.technototes.library.command.Command,com.technototes.library.command.Command,java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleDefault(Command, Subsystem)', + u: 'scheduleDefault(com.technototes.library.command.Command,com.technototes.library.subsystem.Subsystem)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandGamepad', + l: 'scheduleDpad(BiConsumer)', + u: 'scheduleDpad(java.util.function.BiConsumer)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandGamepad', + l: 'scheduleDpad(BiFunction)', + u: 'scheduleDpad(java.util.function.BiFunction)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleForState(Command, BooleanSupplier, CommandOpMode.OpModeState...)', + u: 'scheduleForState(com.technototes.library.command.Command,java.util.function.BooleanSupplier,com.technototes.library.structure.CommandOpMode.OpModeState...)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleForState(Command, CommandOpMode.OpModeState...)', + u: 'scheduleForState(com.technototes.library.command.Command,com.technototes.library.structure.CommandOpMode.OpModeState...)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleInit(Command)', + u: 'scheduleInit(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleInit(Command, BooleanSupplier)', + u: 'scheduleInit(com.technototes.library.command.Command,java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleJoystick(Command)', + u: 'scheduleJoystick(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleJoystick(Command, BooleanSupplier)', + u: 'scheduleJoystick(com.technototes.library.command.Command,java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandGamepad', + l: 'scheduleLeftStick(BiConsumer)', + u: 'scheduleLeftStick(java.util.function.BiConsumer)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandGamepad', + l: 'scheduleLeftStick(BiFunction)', + u: 'scheduleLeftStick(java.util.function.BiFunction)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleOnce(Command)', + u: 'scheduleOnce(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleOnceForState(Command, CommandOpMode.OpModeState)', + u: 'scheduleOnceForState(com.technototes.library.command.Command,com.technototes.library.structure.CommandOpMode.OpModeState)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandAxis', + l: 'schedulePressed(Function)', + u: 'schedulePressed(java.util.function.Function)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandGamepad', + l: 'scheduleRightStick(BiConsumer)', + u: 'scheduleRightStick(java.util.function.BiConsumer)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandGamepad', + l: 'scheduleRightStick(BiFunction)', + u: 'scheduleRightStick(java.util.function.BiFunction)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandGamepad', + l: 'scheduleStick(Stick, BiConsumer)', + u: 'scheduleStick(com.technototes.library.control.Stick,java.util.function.BiConsumer)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandGamepad', + l: 'scheduleStick(Stick, BiFunction)', + u: 'scheduleStick(com.technototes.library.control.Stick,java.util.function.BiFunction)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleWithOther(Command, Command)', + u: 'scheduleWithOther(com.technototes.library.command.Command,com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'scheduleWithOther(Command, Command, BooleanSupplier)', + u: 'scheduleWithOther(com.technototes.library.command.Command,com.technototes.library.command.Command,java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.util', + c: 'Alliance.Selector', + l: 'select(Alliance)', + u: 'select(com.technototes.library.util.Alliance)', + }, + { + p: 'com.technototes.library.util', + c: 'Alliance.Selector', + l: 'selectOf(Alliance, T, T)', + u: 'selectOf(com.technototes.library.util.Alliance,T,T)', + }, + { p: 'com.technototes.library.util', c: 'Alliance', l: 'selectOf(T, T)', u: 'selectOf(T,T)' }, + { + p: 'com.technototes.library.util', + c: 'Alliance.Selector', + l: 'Selector(T, T)', + u: '%3Cinit%3E(T,T)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'Sensor', + l: 'Sensor(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { p: 'com.technototes.library.hardware.sensor', c: 'Sensor', l: 'Sensor(T)', u: '%3Cinit%3E(T)' }, + { + p: 'com.technototes.library.command', + c: 'SequentialCommandGroup', + l: 'SequentialCommandGroup(Command...)', + u: '%3Cinit%3E(com.technototes.library.command.Command...)', + }, + { p: 'com.technototes.library.hardware2', c: 'HardwareBuilder', l: 'servo(int)' }, + { + p: 'com.technototes.library.hardware.servo', + c: 'Servo', + l: 'Servo(Servo)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.Servo)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'HardwareBuilder', + l: 'servo(String)', + u: 'servo(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.servo', + c: 'Servo', + l: 'Servo(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'ServoBuilder', + l: 'ServoBuilder(int)', + u: '%3Cinit%3E(int)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'ServoBuilder', + l: 'ServoBuilder(Servo)', + u: '%3Cinit%3E(com.qualcomm.robotcore.hardware.Servo)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'ServoBuilder', + l: 'ServoBuilder(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoGroup', + l: 'ServoGroup(Servo...)', + u: '%3Cinit%3E(com.technototes.library.hardware.servo.Servo...)', + }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoProfiler', + l: 'ServoProfiler(Servo)', + u: '%3Cinit%3E(com.technototes.library.hardware.servo.Servo)', + }, + { + p: 'com.technototes.library.subsystem.servo', + c: 'ServoSubsystem', + l: 'ServoSubsystem(Servo)', + u: '%3Cinit%3E(com.technototes.library.hardware.servo.Servo)', + }, + { + p: 'com.technototes.library.subsystem.servo', + c: 'ServoSubsystem', + l: 'ServoSubsystem(Servo...)', + u: '%3Cinit%3E(com.technototes.library.hardware.servo.Servo...)', + }, + { p: 'com.technototes.library.util', c: 'Integral', l: 'set(double)' }, + { p: 'com.technototes.library.util', c: 'Differential', l: 'setAverageOutput(double)' }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoProfiler', + l: 'setConstraints(double, double, double)', + u: 'setConstraints(double,double,double)', + }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoProfiler', + l: 'setConstraints(ServoProfiler.Constraints)', + u: 'setConstraints(com.technototes.library.hardware.servo.ServoProfiler.Constraints)', + }, + { + p: 'com.technototes.library.subsystem', + c: 'Subsystem', + l: 'setDefaultCommand(Command)', + u: 'setDefaultCommand(com.technototes.library.command.Command)', + }, + { p: 'com.technototes.library.util', c: 'Differential', l: 'setDeviationOutput(double)' }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder', + l: 'setDirection(MotorEncoder.Direction)', + u: 'setDirection(com.technototes.library.hardware.sensor.encoder.MotorEncoder.Direction)', + }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'setEnabled(boolean)' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'setEnabled(boolean)' }, + { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'setEnabled(boolean)' }, + { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'setEnabled(boolean)' }, + { p: 'com.technototes.library.general', c: 'Enablable', l: 'setEnabled(boolean)' }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotor', + l: 'setEncoder(Encoder)', + u: 'setEncoder(com.technototes.library.hardware.sensor.encoder.Encoder)', + }, + { p: 'com.technototes.library.hardware.sensor', c: 'IGyro', l: 'setHeading(double)' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU', l: 'setHeading(double)' }, + { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'setIndex(int)' }, + { p: 'com.technototes.library.control', c: 'ButtonBase', l: 'setInverted(boolean)' }, + { p: 'com.technototes.library.control', c: 'CommandAxis', l: 'setInverted(boolean)' }, + { p: 'com.technototes.library.control', c: 'CommandButton', l: 'setInverted(boolean)' }, + { p: 'com.technototes.library.general', c: 'Invertable', l: 'setInverted(boolean)' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'setInverted(boolean)' }, + { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'setInverted(boolean)' }, + { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'setInverted(boolean)' }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotor', + l: 'setLimits(double, double)', + u: 'setLimits(double,double)', + }, + { + p: 'com.technototes.library.hardware.motor', + c: 'Motor', + l: 'setLimits(double, double)', + u: 'setLimits(double,double)', + }, + { + p: 'com.technototes.library.util', + c: 'Differential', + l: 'setLimits(double, double)', + u: 'setLimits(double,double)', + }, + { + p: 'com.technototes.library.subsystem.motor', + c: 'EncodedMotorSubsystem', + l: 'setMaxSpeed(double)', + }, + { + p: 'com.technototes.library.command', + c: 'CommandScheduler', + l: 'setOpMode(CommandOpMode)', + u: 'setOpMode(com.technototes.library.structure.CommandOpMode)', + }, + { + p: 'com.technototes.library.util', + c: 'Differential', + l: 'setOutputs(double, double)', + u: 'setOutputs(double,double)', + }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotor', + l: 'setPIDFCoeffecients(double, double, double, double)', + u: 'setPIDFCoeffecients(double,double,double,double)', + }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotor', + l: 'setPIDFCoeffecients(PIDFCoefficients)', + u: 'setPIDFCoeffecients(com.qualcomm.robotcore.hardware.PIDFCoefficients)', + }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'setPosition(double)' }, + { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'setPosition(double)' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoGroup', l: 'setPosition(double)' }, + { + p: 'com.technototes.library.subsystem.motor', + c: 'EncodedMotorSubsystem', + l: 'setPosition(double)', + }, + { p: 'com.technototes.library.subsystem.servo', c: 'ServoSubsystem', l: 'setPosition(double)' }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotor', + l: 'setPosition(double, double)', + u: 'setPosition(double,double)', + }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotorGroup', + l: 'setPosition(double, double)', + u: 'setPosition(double,double)', + }, + { + p: 'com.technototes.library.subsystem.motor', + c: 'EncodedMotorSubsystem', + l: 'setPosition(double, double)', + u: 'setPosition(double,double)', + }, + { + p: 'com.technototes.library.util', + c: 'Differential', + l: 'setPriority(Differential.DifferentialPriority)', + u: 'setPriority(com.technototes.library.util.Differential.DifferentialPriority)', + }, + { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'setPriority(int)' }, + { + p: 'com.technototes.library.hardware.motor', + c: 'EncodedMotor', + l: 'setRunMode(DcMotor.RunMode)', + u: 'setRunMode(com.qualcomm.robotcore.hardware.DcMotor.RunMode)', + }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'setServoRange(double)' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'setSpeed(double)' }, + { p: 'com.technototes.library.hardware.motor', c: 'Motor', l: 'setSpeed(double)' }, + { p: 'com.technototes.library.hardware.motor', c: 'MotorGroup', l: 'setSpeed(double)' }, + { p: 'com.technototes.library.subsystem.motor', c: 'MotorSubsystem', l: 'setSpeed(double)' }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'setState(Command.CommandState)', + u: 'setState(com.technototes.library.command.Command.CommandState)', + }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoProfiler', + l: 'setTargetPosition(double)', + }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoProfiler', + l: 'setTargetTolerance(double)', + }, + { p: 'com.technototes.library.control', c: 'AxisBase', l: 'setTriggerThreshold(double)' }, + { p: 'com.technototes.library.control', c: 'CommandAxis', l: 'setTriggerThreshold(double)' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'setVelocity(double)' }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotorGroup', l: 'setVelocity(double)' }, + { p: 'com.technototes.library.hardware', c: 'Speaker', l: 'setVolume(float)' }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'SimpleMecanumDrivebaseSubsystem', + l: 'SimpleMecanumDrivebaseSubsystem(DoubleSupplier, Motor, Motor, Motor, Motor)', + u: '%3Cinit%3E(java.util.function.DoubleSupplier,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)', + }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'SimpleMecanumDrivebaseSubsystem', + l: 'SimpleMecanumDrivebaseSubsystem(Motor, Motor, Motor, Motor)', + u: '%3Cinit%3E(com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)', + }, + { p: 'com.technototes.library.command', c: 'Command', l: 'sleep(double)' }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'sleep(DoubleSupplier)', + u: 'sleep(java.util.function.DoubleSupplier)', + }, + { p: 'com.technototes.library.control', c: 'Binding.Type', l: 'SOME_ACTIVE' }, + { + p: 'com.technototes.library.hardware', + c: 'Speaker', + l: 'Speaker(float, String...)', + u: '%3Cinit%3E(float,java.lang.String...)', + }, + { + p: 'com.technototes.library.hardware', + c: 'Speaker', + l: 'Speaker(String...)', + u: '%3Cinit%3E(java.lang.String...)', + }, + { + p: 'com.technototes.library.hardware', + c: 'Speaker', + l: 'start(String)', + u: 'start(java.lang.String)', + }, + { p: 'com.technototes.library.hardware.servo', c: 'Servo', l: 'startAt(double)' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoGroup', l: 'startAt(double)' }, + { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'STARTED' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'stateMap' }, + { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'stickButton' }, + { p: 'com.technototes.library.hardware', c: 'Speaker', l: 'stop()' }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'SimpleMecanumDrivebaseSubsystem', + l: 'stop()', + }, + { p: 'com.technototes.library.subsystem.drivebase', c: 'TankDrivebaseSubsystem', l: 'stop()' }, + { p: 'com.technototes.library.subsystem.motor', c: 'MotorSubsystem', l: 'stop()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'stopRumble()' }, + { + p: 'com.technototes.library.logger.entry', + c: 'StringEntry', + l: 'StringEntry(String, Supplier, int, String)', + u: '%3Cinit%3E(java.lang.String,java.util.function.Supplier,int,java.lang.String)', + }, + { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'supplier' }, + { + p: 'com.technototes.library.subsystem.drivebase', + c: 'TankDrivebaseSubsystem', + l: 'TankDrivebaseSubsystem(Motor, Motor)', + u: '%3Cinit%3E(com.technototes.library.hardware.motor.Motor,com.technototes.library.hardware.motor.Motor)', + }, + { p: 'com.technototes.library.hardware.motor', c: 'EncodedMotor', l: 'tare()' }, + { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'tare()' }, + { p: 'com.qualcomm.robotcore.eventloop.opmode', c: 'CommandOpMode', l: 'telemetry' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'terminate()' }, + { p: 'com.technototes.library.command', c: 'CommandScheduler', l: 'terminateOpMode()' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'timeMap' }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'toggle(Command, Command)', + u: 'toggle(com.technototes.library.command.Command,com.technototes.library.command.Command)', + }, + { p: 'com.technototes.library.general', c: 'Enablable', l: 'toggleEnabled()' }, + { p: 'com.technototes.library.hardware2', c: 'MotorBuilder', l: 'tolerance(int)' }, + { p: 'com.technototes.library.logger.entry', c: 'BooleanEntry', l: 'toString()' }, + { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'toString()' }, + { p: 'com.technototes.library.logger.entry', c: 'NumberEntry', l: 'toString()' }, + { p: 'com.technototes.library.logger.entry', c: 'StringEntry', l: 'toString()' }, + { + p: 'com.technototes.library.hardware.servo', + c: 'ServoProfiler', + l: 'translateTargetPosition(double)', + }, + { p: 'com.technototes.library.logger', c: 'Log.Boolean', l: 'trueValue()' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'universalLoop()' }, + { p: 'com.technototes.library.control', c: 'GamepadDpad', l: 'up' }, + { p: 'com.technototes.library.hardware.servo', c: 'ServoProfiler', l: 'update()' }, + { p: 'com.technototes.library.util', c: 'Integral', l: 'update(double)' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'uponInit()' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode', l: 'uponStart()' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IColorSensor', l: 'value()' }, + { p: 'com.technototes.library.logger', c: 'Log.Logs', l: 'value()' }, + { p: 'com.technototes.library.logger', c: 'LogConfig.AllowList', l: 'value()' }, + { p: 'com.technototes.library.logger', c: 'LogConfig.DenyList', l: 'value()' }, + { + p: 'com.technototes.library.command', + c: 'Command.CommandState', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.library.control', + c: 'Binding.Type', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.library.control', + c: 'GamepadBase.Axis', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.library.control', + c: 'GamepadBase.Button', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder.Direction', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware.sensor', + c: 'IMU.AxesSigns', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.library.hardware2', + c: 'IMUBuilder.AxesSigns', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.library.structure', + c: 'CommandOpMode.OpModeState', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.library.util', + c: 'Alliance', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.library.util', + c: 'Color', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { + p: 'com.technototes.library.util', + c: 'Differential.DifferentialPriority', + l: 'valueOf(String)', + u: 'valueOf(java.lang.String)', + }, + { p: 'com.technototes.library.command', c: 'Command.CommandState', l: 'values()' }, + { p: 'com.technototes.library.control', c: 'Binding.Type', l: 'values()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Axis', l: 'values()' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'values()' }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'MotorEncoder.Direction', + l: 'values()', + }, + { p: 'com.technototes.library.hardware.sensor', c: 'IMU.AxesSigns', l: 'values()' }, + { p: 'com.technototes.library.hardware2', c: 'IMUBuilder.AxesSigns', l: 'values()' }, + { p: 'com.technototes.library.structure', c: 'CommandOpMode.OpModeState', l: 'values()' }, + { p: 'com.technototes.library.util', c: 'Alliance', l: 'values()' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'values()' }, + { p: 'com.technototes.library.util', c: 'Differential.DifferentialPriority', l: 'values()' }, + { + p: 'com.technototes.library.hardware2', + c: 'MotorBuilder', + l: 'velocity(PIDFCoefficients)', + u: 'velocity(com.qualcomm.robotcore.hardware.PIDFCoefficients)', + }, + { + p: 'com.technototes.library.command', + c: 'WaitCommand', + l: 'WaitCommand(double)', + u: '%3Cinit%3E(double)', + }, + { + p: 'com.technototes.library.command', + c: 'WaitCommand', + l: 'WaitCommand(DoubleSupplier)', + u: '%3Cinit%3E(java.util.function.DoubleSupplier)', + }, + { + p: 'com.technototes.library.command', + c: 'Command', + l: 'waitUntil(BooleanSupplier)', + u: 'waitUntil(java.util.function.BooleanSupplier)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whenInverseToggled(Command)', + u: 'whenInverseToggled(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whenPressed(Command)', + u: 'whenPressed(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whenPressedReleased(Command, Command)', + u: 'whenPressedReleased(com.technototes.library.command.Command,com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whenReleased(Command)', + u: 'whenReleased(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whenToggled(Command)', + u: 'whenToggled(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whileInverseToggled(Command)', + u: 'whileInverseToggled(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whilePressed(Command)', + u: 'whilePressed(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whilePressedContinuous(Command)', + u: 'whilePressedContinuous(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whilePressedOnce(Command)', + u: 'whilePressedOnce(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whilePressedReleased(Command, Command)', + u: 'whilePressedReleased(com.technototes.library.command.Command,com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whileReleased(Command)', + u: 'whileReleased(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whileReleasedOnce(Command)', + u: 'whileReleasedOnce(com.technototes.library.command.Command)', + }, + { + p: 'com.technototes.library.control', + c: 'CommandInput', + l: 'whileToggled(Command)', + u: 'whileToggled(com.technototes.library.command.Command)', + }, + { p: 'com.technototes.library.util', c: 'Color', l: 'WHITE' }, + { p: 'com.technototes.library.command', c: 'Command', l: 'withTimeout(double)' }, + { p: 'com.technototes.library.logger.entry', c: 'Entry', l: 'x' }, + { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'xAxis' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'xbox_a' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'XBOX_A' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'xbox_b' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'XBOX_B' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'xbox_back' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'XBOX_BACK' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'xbox_start' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'XBOX_START' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'xbox_x' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'XBOX_X' }, + { p: 'com.technototes.library.control', c: 'GamepadBase', l: 'xbox_y' }, + { p: 'com.technototes.library.control', c: 'GamepadBase.Button', l: 'XBOX_Y' }, + { p: 'com.technototes.library.control', c: 'GamepadStick', l: 'yAxis' }, + { p: 'com.technototes.library.util', c: 'Color', l: 'YELLOW' }, + { p: 'com.technototes.library.hardware.sensor', c: 'IGyro', l: 'zero()' }, + { p: 'com.technototes.library.util', c: 'Integral', l: 'zero()' }, + { p: 'com.technototes.library.hardware.sensor.encoder', c: 'Encoder', l: 'zeroEncoder()' }, + { + p: 'com.technototes.library.hardware.sensor.encoder', + c: 'ExternalEncoder', + l: 'zeroEncoder()', + }, + { p: 'com.technototes.library.hardware.sensor.encoder', c: 'MotorEncoder', l: 'zeroEncoder()' }, +]; +updateSearchResults(); diff --git a/docs/TechnoLib/module-search-index.js b/docs/TechnoLib/module-search-index.js index 0d59754f..a6f96499 100644 --- a/docs/TechnoLib/module-search-index.js +++ b/docs/TechnoLib/module-search-index.js @@ -1 +1,2 @@ -moduleSearchIndex = [];updateSearchResults(); \ No newline at end of file +moduleSearchIndex = []; +updateSearchResults(); diff --git a/docs/TechnoLib/overview-summary.html b/docs/TechnoLib/overview-summary.html index 7bc09700..db00b11a 100644 --- a/docs/TechnoLib/overview-summary.html +++ b/docs/TechnoLib/overview-summary.html @@ -1,25 +1,27 @@ - + - - -RobotLibrary API - - - - - - - - - - -
    - -

    index.html

    -
    - + + + RobotLibrary API + + + + + + + + + + +
    + +

    index.html

    +
    + diff --git a/docs/TechnoLib/overview-tree.html b/docs/TechnoLib/overview-tree.html index 541f2f17..39c56ae2 100644 --- a/docs/TechnoLib/overview-tree.html +++ b/docs/TechnoLib/overview-tree.html @@ -1,306 +1,1450 @@ - + - - -Class Hierarchy (RobotLibrary API) - - - - - - - - - - - - - - -
    - -
    -
    - -
    -

    Class Hierarchy

    - -
    -
    -

    Interface Hierarchy

    - -
    -
    -

    Annotation Interface Hierarchy

    - -
    -
    -

    Enum Class Hierarchy

    - -
    -
    -
    -
    - + + + Class Hierarchy (RobotLibrary API) + + + + + + + + + + + + + + +
    + +
    +
    + +
    +

    Class Hierarchy

    + +
    +
    +

    Interface Hierarchy

    +
      +
    • + java.util.function.BooleanSupplier +
        +
      • + com.technototes.library.control.Binding<T> +
      • +
      • + com.technototes.library.control.CommandInput<T> +
      • +
      +
    • +
    • + java.util.function.DoubleSupplier +
        +
      • + com.technototes.library.hardware.Sensored +
          +
        • + com.technototes.library.hardware.sensor.encoder.Encoder +
        • +
        +
      • +
      +
    • +
    • + com.technototes.library.general.Enablable<T> +
        +
      • + com.technototes.library.control.Stick + (also extends com.technototes.library.general.Periodic) +
      • +
      +
    • +
    • + com.technototes.library.hardware.HardwareDeviceGroup<T> +
    • +
    • + com.technototes.library.hardware.sensor.IColorSensor +
    • +
    • + com.technototes.library.hardware.sensor.IDistanceSensor +
    • +
    • + com.technototes.library.hardware.sensor.IGyro +
    • +
    • + com.technototes.library.hardware.sensor.ILightSensor +
    • +
    • + com.technototes.library.general.Invertable<T> +
    • +
    • + com.technototes.library.logger.Loggable +
    • +
    • + com.technototes.library.general.Periodic +
        +
      • + com.technototes.library.control.Stick + (also extends com.technototes.library.general.Enablable<T>) +
      • +
      • + com.technototes.library.subsystem.Subsystem +
      • +
      +
    • +
    • + java.lang.Runnable +
        +
      • + com.technototes.library.command.Command + (also extends java.util.function.Supplier<T>) +
      • +
      +
    • +
    • + com.technototes.library.util.SmartConsumer<T> +
    • +
    • + java.util.function.Supplier<T> +
        +
      • + com.technototes.library.command.Command + (also extends java.lang.Runnable) +
      • +
      +
    • +
    +
    +
    +

    Annotation Interface Hierarchy

    + +
    +
    +

    Enum Class Hierarchy

    + +
    +
    +
    +
    + diff --git a/docs/TechnoLib/package-search-index.js b/docs/TechnoLib/package-search-index.js index 3d70a1b1..a587d2d3 100644 --- a/docs/TechnoLib/package-search-index.js +++ b/docs/TechnoLib/package-search-index.js @@ -1 +1,22 @@ -packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"l":"com.technototes.library"},{"l":"com.technototes.library.command"},{"l":"com.technototes.library.control"},{"l":"com.technototes.library.general"},{"l":"com.technototes.library.hardware"},{"l":"com.technototes.library.hardware.motor"},{"l":"com.technototes.library.hardware.sensor"},{"l":"com.technototes.library.hardware.sensor.encoder"},{"l":"com.technototes.library.hardware.servo"},{"l":"com.technototes.library.hardware2"},{"l":"com.technototes.library.logger"},{"l":"com.technototes.library.logger.entry"},{"l":"com.technototes.library.structure"},{"l":"com.technototes.library.subsystem"},{"l":"com.technototes.library.subsystem.drivebase"},{"l":"com.technototes.library.subsystem.motor"},{"l":"com.technototes.library.subsystem.servo"},{"l":"com.technototes.library.util"}];updateSearchResults(); \ No newline at end of file +packageSearchIndex = [ + { l: 'All Packages', u: 'allpackages-index.html' }, + { l: 'com.technototes.library' }, + { l: 'com.technototes.library.command' }, + { l: 'com.technototes.library.control' }, + { l: 'com.technototes.library.general' }, + { l: 'com.technototes.library.hardware' }, + { l: 'com.technototes.library.hardware.motor' }, + { l: 'com.technototes.library.hardware.sensor' }, + { l: 'com.technototes.library.hardware.sensor.encoder' }, + { l: 'com.technototes.library.hardware.servo' }, + { l: 'com.technototes.library.hardware2' }, + { l: 'com.technototes.library.logger' }, + { l: 'com.technototes.library.logger.entry' }, + { l: 'com.technototes.library.structure' }, + { l: 'com.technototes.library.subsystem' }, + { l: 'com.technototes.library.subsystem.drivebase' }, + { l: 'com.technototes.library.subsystem.motor' }, + { l: 'com.technototes.library.subsystem.servo' }, + { l: 'com.technototes.library.util' }, +]; +updateSearchResults(); diff --git a/docs/TechnoLib/script.js b/docs/TechnoLib/script.js index 864989cf..a6efd285 100644 --- a/docs/TechnoLib/script.js +++ b/docs/TechnoLib/script.js @@ -29,104 +29,106 @@ var typeSearchIndex; var memberSearchIndex; var tagSearchIndex; function loadScripts(doc, tag) { - createElem(doc, tag, 'search.js'); + createElem(doc, tag, 'search.js'); - createElem(doc, tag, 'module-search-index.js'); - createElem(doc, tag, 'package-search-index.js'); - createElem(doc, tag, 'type-search-index.js'); - createElem(doc, tag, 'member-search-index.js'); - createElem(doc, tag, 'tag-search-index.js'); + createElem(doc, tag, 'module-search-index.js'); + createElem(doc, tag, 'package-search-index.js'); + createElem(doc, tag, 'type-search-index.js'); + createElem(doc, tag, 'member-search-index.js'); + createElem(doc, tag, 'tag-search-index.js'); } function createElem(doc, tag, path) { - var script = doc.createElement(tag); - var scriptElement = doc.getElementsByTagName(tag)[0]; - script.src = pathtoroot + path; - scriptElement.parentNode.insertBefore(script, scriptElement); + var script = doc.createElement(tag); + var scriptElement = doc.getElementsByTagName(tag)[0]; + script.src = pathtoroot + path; + scriptElement.parentNode.insertBefore(script, scriptElement); } function show(tableId, selected, columns) { - if (tableId !== selected) { - document.querySelectorAll('div.' + tableId + ':not(.' + selected + ')') - .forEach(function(elem) { - elem.style.display = 'none'; - }); - } - document.querySelectorAll('div.' + selected) - .forEach(function(elem, index) { - elem.style.display = ''; - var isEvenRow = index % (columns * 2) < columns; - elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); - elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); - }); - updateTabs(tableId, selected); + if (tableId !== selected) { + document + .querySelectorAll('div.' + tableId + ':not(.' + selected + ')') + .forEach(function (elem) { + elem.style.display = 'none'; + }); + } + document.querySelectorAll('div.' + selected).forEach(function (elem, index) { + elem.style.display = ''; + var isEvenRow = index % (columns * 2) < columns; + elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); + elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); + }); + updateTabs(tableId, selected); } function updateTabs(tableId, selected) { - document.querySelector('div#' + tableId +' .summary-table') - .setAttribute('aria-labelledby', selected); - document.querySelectorAll('button[id^="' + tableId + '"]') - .forEach(function(tab, index) { - if (selected === tab.id || (tableId === selected && index === 0)) { - tab.className = activeTableTab; - tab.setAttribute('aria-selected', true); - tab.setAttribute('tabindex',0); - } else { - tab.className = tableTab; - tab.setAttribute('aria-selected', false); - tab.setAttribute('tabindex',-1); - } - }); + document + .querySelector('div#' + tableId + ' .summary-table') + .setAttribute('aria-labelledby', selected); + document.querySelectorAll('button[id^="' + tableId + '"]').forEach(function (tab, index) { + if (selected === tab.id || (tableId === selected && index === 0)) { + tab.className = activeTableTab; + tab.setAttribute('aria-selected', true); + tab.setAttribute('tabindex', 0); + } else { + tab.className = tableTab; + tab.setAttribute('aria-selected', false); + tab.setAttribute('tabindex', -1); + } + }); } function switchTab(e) { - var selected = document.querySelector('[aria-selected=true]'); - if (selected) { - if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { - // left or up arrow key pressed: move focus to previous tab - selected.previousSibling.click(); - selected.previousSibling.focus(); - e.preventDefault(); - } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { - // right or down arrow key pressed: move focus to next tab - selected.nextSibling.click(); - selected.nextSibling.focus(); - e.preventDefault(); - } + var selected = document.querySelector('[aria-selected=true]'); + if (selected) { + if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { + // left or up arrow key pressed: move focus to previous tab + selected.previousSibling.click(); + selected.previousSibling.focus(); + e.preventDefault(); + } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { + // right or down arrow key pressed: move focus to next tab + selected.nextSibling.click(); + selected.nextSibling.focus(); + e.preventDefault(); } + } } -var updateSearchResults = function() {}; +var updateSearchResults = function () {}; function indexFilesLoaded() { - return moduleSearchIndex - && packageSearchIndex - && typeSearchIndex - && memberSearchIndex - && tagSearchIndex; + return ( + moduleSearchIndex && + packageSearchIndex && + typeSearchIndex && + memberSearchIndex && + tagSearchIndex + ); } // Workaround for scroll position not being included in browser history (8249133) -document.addEventListener("DOMContentLoaded", function(e) { - var contentDiv = document.querySelector("div.flex-content"); - window.addEventListener("popstate", function(e) { - if (e.state !== null) { - contentDiv.scrollTop = e.state; - } - }); - window.addEventListener("hashchange", function(e) { - history.replaceState(contentDiv.scrollTop, document.title); - }); - contentDiv.addEventListener("scroll", function(e) { - var timeoutID; - if (!timeoutID) { - timeoutID = setTimeout(function() { - history.replaceState(contentDiv.scrollTop, document.title); - timeoutID = null; - }, 100); - } - }); - if (!location.hash) { +document.addEventListener('DOMContentLoaded', function (e) { + var contentDiv = document.querySelector('div.flex-content'); + window.addEventListener('popstate', function (e) { + if (e.state !== null) { + contentDiv.scrollTop = e.state; + } + }); + window.addEventListener('hashchange', function (e) { + history.replaceState(contentDiv.scrollTop, document.title); + }); + contentDiv.addEventListener('scroll', function (e) { + var timeoutID; + if (!timeoutID) { + timeoutID = setTimeout(function () { history.replaceState(contentDiv.scrollTop, document.title); + timeoutID = null; + }, 100); } + }); + if (!location.hash) { + history.replaceState(contentDiv.scrollTop, document.title); + } }); diff --git a/docs/TechnoLib/search.js b/docs/TechnoLib/search.js index db3b2f4a..3ba91721 100644 --- a/docs/TechnoLib/search.js +++ b/docs/TechnoLib/search.js @@ -23,332 +23,354 @@ * questions. */ -var noResult = {l: "No results found"}; -var loading = {l: "Loading search index..."}; -var catModules = "Modules"; -var catPackages = "Packages"; -var catTypes = "Classes and Interfaces"; -var catMembers = "Members"; -var catSearchTags = "Search Tags"; -var highlight = "$&"; -var searchPattern = ""; -var fallbackPattern = ""; +var noResult = { l: 'No results found' }; +var loading = { l: 'Loading search index...' }; +var catModules = 'Modules'; +var catPackages = 'Packages'; +var catTypes = 'Classes and Interfaces'; +var catMembers = 'Members'; +var catSearchTags = 'Search Tags'; +var highlight = '$&'; +var searchPattern = ''; +var fallbackPattern = ''; var RANKING_THRESHOLD = 2; var NO_MATCH = 0xffff; var MIN_RESULTS = 3; var MAX_RESULTS = 500; -var UNNAMED = ""; +var UNNAMED = ''; function escapeHtml(str) { - return str.replace(//g, ">"); + return str.replace(//g, '>'); } function getHighlightedText(item, matcher, fallbackMatcher) { - var escapedItem = escapeHtml(item); - var highlighted = escapedItem.replace(matcher, highlight); - if (highlighted === escapedItem) { - highlighted = escapedItem.replace(fallbackMatcher, highlight) - } - return highlighted; + var escapedItem = escapeHtml(item); + var highlighted = escapedItem.replace(matcher, highlight); + if (highlighted === escapedItem) { + highlighted = escapedItem.replace(fallbackMatcher, highlight); + } + return highlighted; } function getURLPrefix(ui) { - var urlPrefix=""; - var slash = "/"; - if (ui.item.category === catModules) { - return ui.item.l + slash; - } else if (ui.item.category === catPackages && ui.item.m) { - return ui.item.m + slash; - } else if (ui.item.category === catTypes || ui.item.category === catMembers) { - if (ui.item.m) { - urlPrefix = ui.item.m + slash; - } else { - $.each(packageSearchIndex, function(index, item) { - if (item.m && ui.item.p === item.l) { - urlPrefix = item.m + slash; - } - }); + var urlPrefix = ''; + var slash = '/'; + if (ui.item.category === catModules) { + return ui.item.l + slash; + } else if (ui.item.category === catPackages && ui.item.m) { + return ui.item.m + slash; + } else if (ui.item.category === catTypes || ui.item.category === catMembers) { + if (ui.item.m) { + urlPrefix = ui.item.m + slash; + } else { + $.each(packageSearchIndex, function (index, item) { + if (item.m && ui.item.p === item.l) { + urlPrefix = item.m + slash; } + }); } - return urlPrefix; + } + return urlPrefix; } function createSearchPattern(term) { - var pattern = ""; - var isWordToken = false; - term.replace(/,\s*/g, ", ").trim().split(/\s+/).forEach(function(w, index) { - if (index > 0) { - // whitespace between identifiers is significant - pattern += (isWordToken && /^\w/.test(w)) ? "\\s+" : "\\s*"; + var pattern = ''; + var isWordToken = false; + term + .replace(/,\s*/g, ', ') + .trim() + .split(/\s+/) + .forEach(function (w, index) { + if (index > 0) { + // whitespace between identifiers is significant + pattern += isWordToken && /^\w/.test(w) ? '\\s+' : '\\s*'; + } + var tokens = w.split(/(?=[A-Z,.()<>[\/])/); + for (var i = 0; i < tokens.length; i++) { + var s = tokens[i]; + if (s === '') { + continue; } - var tokens = w.split(/(?=[A-Z,.()<>[\/])/); - for (var i = 0; i < tokens.length; i++) { - var s = tokens[i]; - if (s === "") { - continue; - } - pattern += $.ui.autocomplete.escapeRegex(s); - isWordToken = /\w$/.test(s); - if (isWordToken) { - pattern += "([a-z0-9_$<>\\[\\]]*?)"; - } + pattern += $.ui.autocomplete.escapeRegex(s); + isWordToken = /\w$/.test(s); + if (isWordToken) { + pattern += '([a-z0-9_$<>\\[\\]]*?)'; } + } }); - return pattern; + return pattern; } function createMatcher(pattern, flags) { - var isCamelCase = /[A-Z]/.test(pattern); - return new RegExp(pattern, flags + (isCamelCase ? "" : "i")); + var isCamelCase = /[A-Z]/.test(pattern); + return new RegExp(pattern, flags + (isCamelCase ? '' : 'i')); } var watermark = 'Search'; -$(function() { - var search = $("#search-input"); - var reset = $("#reset-button"); - search.val(''); - search.prop("disabled", false); - reset.prop("disabled", false); - search.val(watermark).addClass('watermark'); - search.blur(function() { - if ($(this).val().length === 0) { - $(this).val(watermark).addClass('watermark'); - } - }); - search.on('click keydown paste', function() { - if ($(this).val() === watermark) { - $(this).val('').removeClass('watermark'); - } - }); - reset.click(function() { - search.val('').focus(); - }); - search.focus()[0].setSelectionRange(0, 0); -}); -$.widget("custom.catcomplete", $.ui.autocomplete, { - _create: function() { - this._super(); - this.widget().menu("option", "items", "> :not(.ui-autocomplete-category)"); - }, - _renderMenu: function(ul, items) { - var rMenu = this; - var currentCategory = ""; - rMenu.menu.bindings = $(); - $.each(items, function(index, item) { - var li; - if (item.category && item.category !== currentCategory) { - ul.append("
  • " + item.category + "
  • "); - currentCategory = item.category; - } - li = rMenu._renderItemData(ul, item); - if (item.category) { - li.attr("aria-label", item.category + " : " + item.l); - li.attr("class", "result-item"); - } else { - li.attr("aria-label", item.l); - li.attr("class", "result-item"); - } - }); - }, - _renderItem: function(ul, item) { - var label = ""; - var matcher = createMatcher(escapeHtml(searchPattern), "g"); - var fallbackMatcher = new RegExp(fallbackPattern, "gi") - if (item.category === catModules) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catPackages) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catTypes) { - label = (item.p && item.p !== UNNAMED) - ? getHighlightedText(item.p + "." + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catMembers) { - label = (item.p && item.p !== UNNAMED) - ? getHighlightedText(item.p + "." + item.c + "." + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.c + "." + item.l, matcher, fallbackMatcher); - } else if (item.category === catSearchTags) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else { - label = item.l; - } - var li = $("
  • ").appendTo(ul); - var div = $("
    ").appendTo(li); - if (item.category === catSearchTags && item.h) { - if (item.d) { - div.html(label + " (" + item.h + ")
    " - + item.d + "
    "); - } else { - div.html(label + " (" + item.h + ")"); - } - } else { - if (item.m) { - div.html(item.m + "/" + label); - } else { - div.html(label); - } - } - return li; +$(function () { + var search = $('#search-input'); + var reset = $('#reset-button'); + search.val(''); + search.prop('disabled', false); + reset.prop('disabled', false); + search.val(watermark).addClass('watermark'); + search.blur(function () { + if ($(this).val().length === 0) { + $(this).val(watermark).addClass('watermark'); } -}); -function rankMatch(match, category) { - if (!match) { - return NO_MATCH; - } - var index = match.index; - var input = match.input; - var leftBoundaryMatch = 2; - var periferalMatch = 0; - // make sure match is anchored on a left word boundary - if (index === 0 || /\W/.test(input[index - 1]) || "_" === input[index]) { - leftBoundaryMatch = 0; - } else if ("_" === input[index - 1] || (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input))) { - leftBoundaryMatch = 1; + }); + search.on('click keydown paste', function () { + if ($(this).val() === watermark) { + $(this).val('').removeClass('watermark'); } - var matchEnd = index + match[0].length; - var leftParen = input.indexOf("("); - var endOfName = leftParen > -1 ? leftParen : input.length; - // exclude peripheral matches - if (category !== catModules && category !== catSearchTags) { - var delim = category === catPackages ? "/" : "."; - if (leftParen > -1 && leftParen < index) { - periferalMatch += 2; - } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { - periferalMatch += 2; - } + }); + reset.click(function () { + search.val('').focus(); + }); + search.focus()[0].setSelectionRange(0, 0); +}); +$.widget('custom.catcomplete', $.ui.autocomplete, { + _create: function () { + this._super(); + this.widget().menu('option', 'items', '> :not(.ui-autocomplete-category)'); + }, + _renderMenu: function (ul, items) { + var rMenu = this; + var currentCategory = ''; + rMenu.menu.bindings = $(); + $.each(items, function (index, item) { + var li; + if (item.category && item.category !== currentCategory) { + ul.append('
  • ' + item.category + '
  • '); + currentCategory = item.category; + } + li = rMenu._renderItemData(ul, item); + if (item.category) { + li.attr('aria-label', item.category + ' : ' + item.l); + li.attr('class', 'result-item'); + } else { + li.attr('aria-label', item.l); + li.attr('class', 'result-item'); + } + }); + }, + _renderItem: function (ul, item) { + var label = ''; + var matcher = createMatcher(escapeHtml(searchPattern), 'g'); + var fallbackMatcher = new RegExp(fallbackPattern, 'gi'); + if (item.category === catModules) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catPackages) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catTypes) { + label = + item.p && item.p !== UNNAMED + ? getHighlightedText(item.p + '.' + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catMembers) { + label = + item.p && item.p !== UNNAMED + ? getHighlightedText(item.p + '.' + item.c + '.' + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.c + '.' + item.l, matcher, fallbackMatcher); + } else if (item.category === catSearchTags) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else { + label = item.l; } - var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match - for (var i = 1; i < match.length; i++) { - // lower ranking if parts of the name are missing - if (match[i]) - delta += match[i].length; + var li = $('
  • ').appendTo(ul); + var div = $('
    ').appendTo(li); + if (item.category === catSearchTags && item.h) { + if (item.d) { + div.html( + label + + ' (' + + item.h + + ')
    ' + + item.d + + '
    ', + ); + } else { + div.html(label + ' (' + item.h + ')'); + } + } else { + if (item.m) { + div.html(item.m + '/' + label); + } else { + div.html(label); + } } - if (category === catTypes) { - // lower ranking if a type name contains unmatched camel-case parts - if (/[A-Z]/.test(input.substring(matchEnd))) - delta += 5; - if (/[A-Z]/.test(input.substring(0, index))) - delta += 5; + return li; + }, +}); +function rankMatch(match, category) { + if (!match) { + return NO_MATCH; + } + var index = match.index; + var input = match.input; + var leftBoundaryMatch = 2; + var periferalMatch = 0; + // make sure match is anchored on a left word boundary + if (index === 0 || /\W/.test(input[index - 1]) || '_' === input[index]) { + leftBoundaryMatch = 0; + } else if ( + '_' === input[index - 1] || + (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input)) + ) { + leftBoundaryMatch = 1; + } + var matchEnd = index + match[0].length; + var leftParen = input.indexOf('('); + var endOfName = leftParen > -1 ? leftParen : input.length; + // exclude peripheral matches + if (category !== catModules && category !== catSearchTags) { + var delim = category === catPackages ? '/' : '.'; + if (leftParen > -1 && leftParen < index) { + periferalMatch += 2; + } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { + periferalMatch += 2; } - return leftBoundaryMatch + periferalMatch + (delta / 200); - + } + var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match + for (var i = 1; i < match.length; i++) { + // lower ranking if parts of the name are missing + if (match[i]) delta += match[i].length; + } + if (category === catTypes) { + // lower ranking if a type name contains unmatched camel-case parts + if (/[A-Z]/.test(input.substring(matchEnd))) delta += 5; + if (/[A-Z]/.test(input.substring(0, index))) delta += 5; + } + return leftBoundaryMatch + periferalMatch + delta / 200; } function doSearch(request, response) { - var result = []; - searchPattern = createSearchPattern(request.term); - fallbackPattern = createSearchPattern(request.term.toLowerCase()); - if (searchPattern === "") { - return this.close(); - } - var camelCaseMatcher = createMatcher(searchPattern, ""); - var fallbackMatcher = new RegExp(fallbackPattern, "i"); + var result = []; + searchPattern = createSearchPattern(request.term); + fallbackPattern = createSearchPattern(request.term.toLowerCase()); + if (searchPattern === '') { + return this.close(); + } + var camelCaseMatcher = createMatcher(searchPattern, ''); + var fallbackMatcher = new RegExp(fallbackPattern, 'i'); - function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { - if (indexArray) { - var newResults = []; - $.each(indexArray, function (i, item) { - item.category = category; - var ranking = rankMatch(matcher.exec(nameFunc(item)), category); - if (ranking < RANKING_THRESHOLD) { - newResults.push({ranking: ranking, item: item}); - } - return newResults.length <= MAX_RESULTS; - }); - return newResults.sort(function(e1, e2) { - return e1.ranking - e2.ranking; - }).map(function(e) { - return e.item; - }); + function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { + if (indexArray) { + var newResults = []; + $.each(indexArray, function (i, item) { + item.category = category; + var ranking = rankMatch(matcher.exec(nameFunc(item)), category); + if (ranking < RANKING_THRESHOLD) { + newResults.push({ ranking: ranking, item: item }); } - return []; + return newResults.length <= MAX_RESULTS; + }); + return newResults + .sort(function (e1, e2) { + return e1.ranking - e2.ranking; + }) + .map(function (e) { + return e.item; + }); } - function searchIndex(indexArray, category, nameFunc) { - var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); - result = result.concat(primaryResults); - if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { - var secondaryResults = searchIndexWithMatcher(indexArray, fallbackMatcher, category, nameFunc); - result = result.concat(secondaryResults.filter(function (item) { - return primaryResults.indexOf(item) === -1; - })); - } + return []; + } + function searchIndex(indexArray, category, nameFunc) { + var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); + result = result.concat(primaryResults); + if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { + var secondaryResults = searchIndexWithMatcher( + indexArray, + fallbackMatcher, + category, + nameFunc, + ); + result = result.concat( + secondaryResults.filter(function (item) { + return primaryResults.indexOf(item) === -1; + }), + ); } + } - searchIndex(moduleSearchIndex, catModules, function(item) { return item.l; }); - searchIndex(packageSearchIndex, catPackages, function(item) { - return (item.m && request.term.indexOf("/") > -1) - ? (item.m + "/" + item.l) : item.l; - }); - searchIndex(typeSearchIndex, catTypes, function(item) { - return request.term.indexOf(".") > -1 ? item.p + "." + item.l : item.l; - }); - searchIndex(memberSearchIndex, catMembers, function(item) { - return request.term.indexOf(".") > -1 - ? item.p + "." + item.c + "." + item.l : item.l; - }); - searchIndex(tagSearchIndex, catSearchTags, function(item) { return item.l; }); + searchIndex(moduleSearchIndex, catModules, function (item) { + return item.l; + }); + searchIndex(packageSearchIndex, catPackages, function (item) { + return item.m && request.term.indexOf('/') > -1 ? item.m + '/' + item.l : item.l; + }); + searchIndex(typeSearchIndex, catTypes, function (item) { + return request.term.indexOf('.') > -1 ? item.p + '.' + item.l : item.l; + }); + searchIndex(memberSearchIndex, catMembers, function (item) { + return request.term.indexOf('.') > -1 ? item.p + '.' + item.c + '.' + item.l : item.l; + }); + searchIndex(tagSearchIndex, catSearchTags, function (item) { + return item.l; + }); - if (!indexFilesLoaded()) { - updateSearchResults = function() { - doSearch(request, response); - } - result.unshift(loading); - } else { - updateSearchResults = function() {}; - } - response(result); + if (!indexFilesLoaded()) { + updateSearchResults = function () { + doSearch(request, response); + }; + result.unshift(loading); + } else { + updateSearchResults = function () {}; + } + response(result); } -$(function() { - $("#search-input").catcomplete({ - minLength: 1, - delay: 300, - source: doSearch, - response: function(event, ui) { - if (!ui.content.length) { - ui.content.push(noResult); - } else { - $("#search-input").empty(); - } - }, - autoFocus: true, - focus: function(event, ui) { - return false; - }, - position: { - collision: "flip" - }, - select: function(event, ui) { - if (ui.item.category) { - var url = getURLPrefix(ui); - if (ui.item.category === catModules) { - url += "module-summary.html"; - } else if (ui.item.category === catPackages) { - if (ui.item.u) { - url = ui.item.u; - } else { - url += ui.item.l.replace(/\./g, '/') + "/package-summary.html"; - } - } else if (ui.item.category === catTypes) { - if (ui.item.u) { - url = ui.item.u; - } else if (ui.item.p === UNNAMED) { - url += ui.item.l + ".html"; - } else { - url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.l + ".html"; - } - } else if (ui.item.category === catMembers) { - if (ui.item.p === UNNAMED) { - url += ui.item.c + ".html" + "#"; - } else { - url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.c + ".html" + "#"; - } - if (ui.item.u) { - url += ui.item.u; - } else { - url += ui.item.l; - } - } else if (ui.item.category === catSearchTags) { - url += ui.item.u; - } - if (top !== window) { - parent.classFrame.location = pathtoroot + url; - } else { - window.location.href = pathtoroot + url; - } - $("#search-input").focus(); - } +$(function () { + $('#search-input').catcomplete({ + minLength: 1, + delay: 300, + source: doSearch, + response: function (event, ui) { + if (!ui.content.length) { + ui.content.push(noResult); + } else { + $('#search-input').empty(); + } + }, + autoFocus: true, + focus: function (event, ui) { + return false; + }, + position: { + collision: 'flip', + }, + select: function (event, ui) { + if (ui.item.category) { + var url = getURLPrefix(ui); + if (ui.item.category === catModules) { + url += 'module-summary.html'; + } else if (ui.item.category === catPackages) { + if (ui.item.u) { + url = ui.item.u; + } else { + url += ui.item.l.replace(/\./g, '/') + '/package-summary.html'; + } + } else if (ui.item.category === catTypes) { + if (ui.item.u) { + url = ui.item.u; + } else if (ui.item.p === UNNAMED) { + url += ui.item.l + '.html'; + } else { + url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.l + '.html'; + } + } else if (ui.item.category === catMembers) { + if (ui.item.p === UNNAMED) { + url += ui.item.c + '.html' + '#'; + } else { + url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.c + '.html' + '#'; + } + if (ui.item.u) { + url += ui.item.u; + } else { + url += ui.item.l; + } + } else if (ui.item.category === catSearchTags) { + url += ui.item.u; } - }); + if (top !== window) { + parent.classFrame.location = pathtoroot + url; + } else { + window.location.href = pathtoroot + url; + } + $('#search-input').focus(); + } + }, + }); }); diff --git a/docs/TechnoLib/stylesheet.css b/docs/TechnoLib/stylesheet.css index 4a576bd2..236a306f 100644 --- a/docs/TechnoLib/stylesheet.css +++ b/docs/TechnoLib/stylesheet.css @@ -12,86 +12,89 @@ */ body { - background-color:#ffffff; - color:#353833; - font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size:14px; - margin:0; - padding:0; - height:100%; - width:100%; + background-color: #ffffff; + color: #353833; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 14px; + margin: 0; + padding: 0; + height: 100%; + width: 100%; } iframe { - margin:0; - padding:0; - height:100%; - width:100%; - overflow-y:scroll; - border:none; -} -a:link, a:visited { - text-decoration:none; - color:#4A6782; -} -a[href]:hover, a[href]:focus { - text-decoration:none; - color:#bb7a2a; + margin: 0; + padding: 0; + height: 100%; + width: 100%; + overflow-y: scroll; + border: none; +} +a:link, +a:visited { + text-decoration: none; + color: #4a6782; +} +a[href]:hover, +a[href]:focus { + text-decoration: none; + color: #bb7a2a; } a[name] { - color:#353833; + color: #353833; } pre { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; } h1 { - font-size:20px; + font-size: 20px; } h2 { - font-size:18px; + font-size: 18px; } h3 { - font-size:16px; + font-size: 16px; } h4 { - font-size:15px; + font-size: 15px; } h5 { - font-size:14px; + font-size: 14px; } h6 { - font-size:13px; + font-size: 13px; } ul { - list-style-type:disc; + list-style-type: disc; } -code, tt { - font-family:'DejaVu Sans Mono', monospace; +code, +tt { + font-family: 'DejaVu Sans Mono', monospace; } :not(h1, h2, h3, h4, h5, h6) > code, :not(h1, h2, h3, h4, h5, h6) > tt { - font-size:14px; - padding-top:4px; - margin-top:8px; - line-height:1.4em; + font-size: 14px; + padding-top: 4px; + margin-top: 8px; + line-height: 1.4em; } dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - padding-top:4px; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; + padding-top: 4px; } .summary-table dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - vertical-align:top; - padding-top:4px; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; + vertical-align: top; + padding-top: 4px; } sup { - font-size:8px; + font-size: 8px; } button { - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size: 14px; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 14px; } /* * Styles for HTML generated by javadoc. @@ -103,596 +106,654 @@ button { * Styles for document title and copyright. */ .clear { - clear:both; - height:0; - overflow:hidden; + clear: both; + height: 0; + overflow: hidden; } .about-language { - float:right; - padding:0 21px 8px 8px; - font-size:11px; - margin-top:-9px; - height:2.9em; + float: right; + padding: 0 21px 8px 8px; + font-size: 11px; + margin-top: -9px; + height: 2.9em; } .legal-copy { - margin-left:.5em; + margin-left: 0.5em; } .tab { - background-color:#0066FF; - color:#ffffff; - padding:8px; - width:5em; - font-weight:bold; + background-color: #0066ff; + color: #ffffff; + padding: 8px; + width: 5em; + font-weight: bold; } /* * Styles for navigation bar. */ @media screen { - .flex-box { - position:fixed; - display:flex; - flex-direction:column; - height: 100%; - width: 100%; - } - .flex-header { - flex: 0 0 auto; - } - .flex-content { - flex: 1 1 auto; - overflow-y: auto; - } + .flex-box { + position: fixed; + display: flex; + flex-direction: column; + height: 100%; + width: 100%; + } + .flex-header { + flex: 0 0 auto; + } + .flex-content { + flex: 1 1 auto; + overflow-y: auto; + } } .top-nav { - background-color:#4D7A97; - color:#FFFFFF; - float:left; - padding:0; - width:100%; - clear:right; - min-height:2.8em; - padding-top:10px; - overflow:hidden; - font-size:12px; + background-color: #4d7a97; + color: #ffffff; + float: left; + padding: 0; + width: 100%; + clear: right; + min-height: 2.8em; + padding-top: 10px; + overflow: hidden; + font-size: 12px; } .sub-nav { - background-color:#dee3e9; - float:left; - width:100%; - overflow:hidden; - font-size:12px; + background-color: #dee3e9; + float: left; + width: 100%; + overflow: hidden; + font-size: 12px; } .sub-nav div { - clear:left; - float:left; - padding:0 0 5px 6px; - text-transform:uppercase; + clear: left; + float: left; + padding: 0 0 5px 6px; + text-transform: uppercase; } .sub-nav .nav-list { - padding-top:5px; + padding-top: 5px; } ul.nav-list { - display:block; - margin:0 25px 0 0; - padding:0; + display: block; + margin: 0 25px 0 0; + padding: 0; } ul.sub-nav-list { - float:left; - margin:0 25px 0 0; - padding:0; + float: left; + margin: 0 25px 0 0; + padding: 0; } ul.nav-list li { - list-style:none; - float:left; - padding: 5px 6px; - text-transform:uppercase; + list-style: none; + float: left; + padding: 5px 6px; + text-transform: uppercase; } .sub-nav .nav-list-search { - float:right; - margin:0 0 0 0; - padding:5px 6px; - clear:none; + float: right; + margin: 0 0 0 0; + padding: 5px 6px; + clear: none; } .nav-list-search label { - position:relative; - right:-16px; + position: relative; + right: -16px; } ul.sub-nav-list li { - list-style:none; - float:left; - padding-top:10px; + list-style: none; + float: left; + padding-top: 10px; } -.top-nav a:link, .top-nav a:active, .top-nav a:visited { - color:#FFFFFF; - text-decoration:none; - text-transform:uppercase; +.top-nav a:link, +.top-nav a:active, +.top-nav a:visited { + color: #ffffff; + text-decoration: none; + text-transform: uppercase; } .top-nav a:hover { - text-decoration:none; - color:#bb7a2a; - text-transform:uppercase; + text-decoration: none; + color: #bb7a2a; + text-transform: uppercase; } .nav-bar-cell1-rev { - background-color:#F8981D; - color:#253441; - margin: auto 5px; + background-color: #f8981d; + color: #253441; + margin: auto 5px; } .skip-nav { - position:absolute; - top:auto; - left:-9999px; - overflow:hidden; + position: absolute; + top: auto; + left: -9999px; + overflow: hidden; } /* * Hide navigation links and search box in print layout */ @media print { - ul.nav-list, div.sub-nav { - display:none; - } + ul.nav-list, + div.sub-nav { + display: none; + } } /* * Styles for page header and footer. */ .title { - color:#2c4557; - margin:10px 0; + color: #2c4557; + margin: 10px 0; } .sub-title { - margin:5px 0 0 0; + margin: 5px 0 0 0; } .header ul { - margin:0 0 15px 0; - padding:0; + margin: 0 0 15px 0; + padding: 0; } -.header ul li, .footer ul li { - list-style:none; - font-size:13px; +.header ul li, +.footer ul li { + list-style: none; + font-size: 13px; } /* * Styles for headings. */ body.class-declaration-page .summary h2, body.class-declaration-page .details h2, -body.class-use-page h2, -body.module-declaration-page .block-list h2 { - font-style: italic; - padding:0; - margin:15px 0; +body.class-use-page h2, +body.module-declaration-page .block-list h2 { + font-style: italic; + padding: 0; + margin: 15px 0; } body.class-declaration-page .summary h3, body.class-declaration-page .details h3, body.class-declaration-page .summary .inherited-list h2 { - background-color:#dee3e9; - border:1px solid #d0d9e0; - margin:0 0 6px -8px; - padding:7px 5px; + background-color: #dee3e9; + border: 1px solid #d0d9e0; + margin: 0 0 6px -8px; + padding: 7px 5px; } /* * Styles for page layout containers. */ main { - clear:both; - padding:10px 20px; - position:relative; + clear: both; + padding: 10px 20px; + position: relative; } dl.notes > dt { - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size:12px; - font-weight:bold; - margin:10px 0 0 0; - color:#4E4E4E; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 12px; + font-weight: bold; + margin: 10px 0 0 0; + color: #4e4e4e; } dl.notes > dd { - margin:5px 10px 10px 0; - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + margin: 5px 10px 10px 0; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; } dl.name-value > dt { - margin-left:1px; - font-size:1.1em; - display:inline; - font-weight:bold; + margin-left: 1px; + font-size: 1.1em; + display: inline; + font-weight: bold; } dl.name-value > dd { - margin:0 0 0 1px; - font-size:1.1em; - display:inline; + margin: 0 0 0 1px; + font-size: 1.1em; + display: inline; } /* * Styles for lists. */ li.circle { - list-style:circle; + list-style: circle; } ul.horizontal li { - display:inline; - font-size:0.9em; + display: inline; + font-size: 0.9em; } div.inheritance { - margin:0; - padding:0; + margin: 0; + padding: 0; } div.inheritance div.inheritance { - margin-left:2em; + margin-left: 2em; } ul.block-list, ul.details-list, ul.member-list, ul.summary-list { - margin:10px 0 10px 0; - padding:0; + margin: 10px 0 10px 0; + padding: 0; } ul.block-list > li, ul.details-list > li, ul.member-list > li, ul.summary-list > li { - list-style:none; - margin-bottom:15px; - line-height:1.4; + list-style: none; + margin-bottom: 15px; + line-height: 1.4; } -.summary-table dl, .summary-table dl dt, .summary-table dl dd { - margin-top:0; - margin-bottom:1px; +.summary-table dl, +.summary-table dl dt, +.summary-table dl dd { + margin-top: 0; + margin-bottom: 1px; } -ul.see-list, ul.see-list-long { - padding-left: 0; - list-style: none; +ul.see-list, +ul.see-list-long { + padding-left: 0; + list-style: none; } ul.see-list li { - display: inline; + display: inline; } ul.see-list li:not(:last-child):after, ul.see-list-long li:not(:last-child):after { - content: ", "; - white-space: pre-wrap; + content: ', '; + white-space: pre-wrap; } /* * Styles for tables. */ -.summary-table, .details-table { - width:100%; - border-spacing:0; - border-left:1px solid #EEE; - border-right:1px solid #EEE; - border-bottom:1px solid #EEE; - padding:0; +.summary-table, +.details-table { + width: 100%; + border-spacing: 0; + border-left: 1px solid #eee; + border-right: 1px solid #eee; + border-bottom: 1px solid #eee; + padding: 0; } .caption { - position:relative; - text-align:left; - background-repeat:no-repeat; - color:#253441; - font-weight:bold; - clear:none; - overflow:hidden; - padding:0; - padding-top:10px; - padding-left:1px; - margin:0; - white-space:pre; -} -.caption a:link, .caption a:visited { - color:#1f389c; + position: relative; + text-align: left; + background-repeat: no-repeat; + color: #253441; + font-weight: bold; + clear: none; + overflow: hidden; + padding: 0; + padding-top: 10px; + padding-left: 1px; + margin: 0; + white-space: pre; +} +.caption a:link, +.caption a:visited { + color: #1f389c; } .caption a:hover, .caption a:active { - color:#FFFFFF; + color: #ffffff; } .caption span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - padding-bottom:7px; - display:inline-block; - float:left; - background-color:#F8981D; - border: none; - height:16px; + white-space: nowrap; + padding-top: 5px; + padding-left: 12px; + padding-right: 12px; + padding-bottom: 7px; + display: inline-block; + float: left; + background-color: #f8981d; + border: none; + height: 16px; } div.table-tabs { - padding:10px 0 0 1px; - margin:0; + padding: 10px 0 0 1px; + margin: 0; } div.table-tabs > button { - border: none; - cursor: pointer; - padding: 5px 12px 7px 12px; - font-weight: bold; - margin-right: 3px; + border: none; + cursor: pointer; + padding: 5px 12px 7px 12px; + font-weight: bold; + margin-right: 3px; } div.table-tabs > button.active-table-tab { - background: #F8981D; - color: #253441; + background: #f8981d; + color: #253441; } div.table-tabs > button.table-tab { - background: #4D7A97; - color: #FFFFFF; + background: #4d7a97; + color: #ffffff; } .two-column-summary { - display: grid; - grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); } .three-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); } .four-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax(10%, auto); + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax( + 10%, + auto + ); } @media screen and (max-width: 600px) { - .two-column-summary { - display: grid; - grid-template-columns: 1fr; - } + .two-column-summary { + display: grid; + grid-template-columns: 1fr; + } } @media screen and (max-width: 800px) { - .three-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(25%, auto); - } - .three-column-summary .col-last { - grid-column-end: span 2; - } + .three-column-summary { + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(25%, auto); + } + .three-column-summary .col-last { + grid-column-end: span 2; + } } @media screen and (max-width: 1000px) { - .four-column-summary { - display: grid; - grid-template-columns: minmax(15%, max-content) minmax(15%, auto); - } -} -.summary-table > div, .details-table > div { - text-align:left; - padding: 8px 3px 3px 7px; -} -.col-first, .col-second, .col-last, .col-constructor-name, .col-summary-item-name { - vertical-align:top; - padding-right:0; - padding-top:8px; - padding-bottom:3px; + .four-column-summary { + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + } +} +.summary-table > div, +.details-table > div { + text-align: left; + padding: 8px 3px 3px 7px; +} +.col-first, +.col-second, +.col-last, +.col-constructor-name, +.col-summary-item-name { + vertical-align: top; + padding-right: 0; + padding-top: 8px; + padding-bottom: 3px; } .table-header { - background:#dee3e9; - font-weight: bold; -} -.col-first, .col-first { - font-size:13px; -} -.col-second, .col-second, .col-last, .col-constructor-name, .col-summary-item-name, .col-last { - font-size:13px; + background: #dee3e9; + font-weight: bold; +} +.col-first, +.col-first { + font-size: 13px; +} +.col-second, +.col-second, +.col-last, +.col-constructor-name, +.col-summary-item-name, +.col-last { + font-size: 13px; } -.col-first, .col-second, .col-constructor-name { - vertical-align:top; - overflow: auto; +.col-first, +.col-second, +.col-constructor-name { + vertical-align: top; + overflow: auto; } .col-last { - white-space:normal; -} -.col-first a:link, .col-first a:visited, -.col-second a:link, .col-second a:visited, -.col-first a:link, .col-first a:visited, -.col-second a:link, .col-second a:visited, -.col-constructor-name a:link, .col-constructor-name a:visited, -.col-summary-item-name a:link, .col-summary-item-name a:visited, -.constant-values-container a:link, .constant-values-container a:visited, -.all-classes-container a:link, .all-classes-container a:visited, -.all-packages-container a:link, .all-packages-container a:visited { - font-weight:bold; + white-space: normal; +} +.col-first a:link, +.col-first a:visited, +.col-second a:link, +.col-second a:visited, +.col-first a:link, +.col-first a:visited, +.col-second a:link, +.col-second a:visited, +.col-constructor-name a:link, +.col-constructor-name a:visited, +.col-summary-item-name a:link, +.col-summary-item-name a:visited, +.constant-values-container a:link, +.constant-values-container a:visited, +.all-classes-container a:link, +.all-classes-container a:visited, +.all-packages-container a:link, +.all-packages-container a:visited { + font-weight: bold; } .table-sub-heading-color { - background-color:#EEEEFF; + background-color: #eeeeff; } -.even-row-color, .even-row-color .table-header { - background-color:#FFFFFF; +.even-row-color, +.even-row-color .table-header { + background-color: #ffffff; } -.odd-row-color, .odd-row-color .table-header { - background-color:#EEEEEF; +.odd-row-color, +.odd-row-color .table-header { + background-color: #eeeeef; } /* * Styles for contents. */ .deprecated-content { - margin:0; - padding:10px 0; + margin: 0; + padding: 10px 0; } div.block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; } .col-last div { - padding-top:0; + padding-top: 0; } .col-last a { - padding-bottom:3px; + padding-bottom: 3px; } .module-signature, .package-signature, .type-signature, .member-signature { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - margin:14px 0; - white-space: pre-wrap; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; + margin: 14px 0; + white-space: pre-wrap; } .module-signature, .package-signature, .type-signature { - margin-top: 0; + margin-top: 0; } .member-signature .type-parameters-long, .member-signature .parameters, .member-signature .exceptions { - display: inline-block; - vertical-align: top; - white-space: pre; + display: inline-block; + vertical-align: top; + white-space: pre; } .member-signature .type-parameters { - white-space: normal; + white-space: normal; } /* * Styles for formatting effect. */ .source-line-no { - color:green; - padding:0 30px 0 0; + color: green; + padding: 0 30px 0 0; } h1.hidden { - visibility:hidden; - overflow:hidden; - font-size:10px; + visibility: hidden; + overflow: hidden; + font-size: 10px; } .block { - display:block; - margin:0 10px 5px 0; - color:#474747; -} -.deprecated-label, .descfrm-type-label, .implementation-label, .member-name-label, .member-name-link, -.module-label-in-package, .module-label-in-type, .override-specify-label, .package-label-in-type, -.package-hierarchy-label, .type-name-label, .type-name-link, .search-tag-link, .preview-label { - font-weight:bold; -} -.deprecation-comment, .help-footnote, .preview-comment { - font-style:italic; + display: block; + margin: 0 10px 5px 0; + color: #474747; +} +.deprecated-label, +.descfrm-type-label, +.implementation-label, +.member-name-label, +.member-name-link, +.module-label-in-package, +.module-label-in-type, +.override-specify-label, +.package-label-in-type, +.package-hierarchy-label, +.type-name-label, +.type-name-link, +.search-tag-link, +.preview-label { + font-weight: bold; +} +.deprecation-comment, +.help-footnote, +.preview-comment { + font-style: italic; } .deprecation-block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; - border-style:solid; - border-width:thin; - border-radius:10px; - padding:10px; - margin-bottom:10px; - margin-right:10px; - display:inline-block; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; + border-style: solid; + border-width: thin; + border-radius: 10px; + padding: 10px; + margin-bottom: 10px; + margin-right: 10px; + display: inline-block; } .preview-block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; - border-style:solid; - border-width:thin; - border-radius:10px; - padding:10px; - margin-bottom:10px; - margin-right:10px; - display:inline-block; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; + border-style: solid; + border-width: thin; + border-radius: 10px; + padding: 10px; + margin-bottom: 10px; + margin-right: 10px; + display: inline-block; } div.block div.deprecation-comment { - font-style:normal; + font-style: normal; } /* * Styles specific to HTML5 elements. */ -main, nav, header, footer, section { - display:block; +main, +nav, +header, +footer, +section { + display: block; } /* * Styles for javadoc search. */ .ui-autocomplete-category { - font-weight:bold; - font-size:15px; - padding:7px 0 7px 3px; - background-color:#4D7A97; - color:#FFFFFF; + font-weight: bold; + font-size: 15px; + padding: 7px 0 7px 3px; + background-color: #4d7a97; + color: #ffffff; } .result-item { - font-size:13px; + font-size: 13px; } .ui-autocomplete { - max-height:85%; - max-width:65%; - overflow-y:scroll; - overflow-x:scroll; - white-space:nowrap; - box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23); + max-height: 85%; + max-width: 65%; + overflow-y: scroll; + overflow-x: scroll; + white-space: nowrap; + box-shadow: + 0 3px 6px rgba(0, 0, 0, 0.16), + 0 3px 6px rgba(0, 0, 0, 0.23); } ul.ui-autocomplete { - position:fixed; - z-index:999999; - background-color: #FFFFFF; + position: fixed; + z-index: 999999; + background-color: #ffffff; } -ul.ui-autocomplete li { - float:left; - clear:both; - width:100%; +ul.ui-autocomplete li { + float: left; + clear: both; + width: 100%; } .result-highlight { - font-weight:bold; + font-weight: bold; } .ui-autocomplete .result-item { - font-size: inherit; + font-size: inherit; } #search-input { - background-image:url('resources/glass.png'); - background-size:13px; - background-repeat:no-repeat; - background-position:2px 3px; - padding-left:20px; - position:relative; - right:-18px; - width:400px; + background-image: url('resources/glass.png'); + background-size: 13px; + background-repeat: no-repeat; + background-position: 2px 3px; + padding-left: 20px; + position: relative; + right: -18px; + width: 400px; } #reset-button { - background-color: rgb(255,255,255); - background-image:url('resources/x.png'); - background-position:center; - background-repeat:no-repeat; - background-size:12px; - border:0 none; - width:16px; - height:16px; - position:relative; - left:-4px; - top:-4px; - font-size:0px; + background-color: rgb(255, 255, 255); + background-image: url('resources/x.png'); + background-position: center; + background-repeat: no-repeat; + background-size: 12px; + border: 0 none; + width: 16px; + height: 16px; + position: relative; + left: -4px; + top: -4px; + font-size: 0px; } .watermark { - color:#545454; + color: #545454; } .search-tag-desc-result { - font-style:italic; - font-size:11px; + font-style: italic; + font-size: 11px; } .search-tag-holder-result { - font-style:italic; - font-size:12px; + font-style: italic; + font-size: 12px; } .search-tag-result:target { - background-color:yellow; + background-color: yellow; } .module-graph span { - display:none; - position:absolute; + display: none; + position: absolute; } .module-graph:hover span { - display:block; - margin: -100px 0 0 100px; - z-index: 1; + display: block; + margin: -100px 0 0 100px; + z-index: 1; } .inherited-list { - margin: 10px 0 10px 0; + margin: 10px 0 10px 0; } section.class-description { - line-height: 1.4; -} -.summary section[class$="-summary"], .details section[class$="-details"], -.class-uses .detail, .serialized-class-details { - padding: 0px 20px 5px 10px; - border: 1px solid #ededed; - background-color: #f8f8f8; -} -.inherited-list, section[class$="-details"] .detail { - padding:0 0 5px 8px; - background-color:#ffffff; - border:none; + line-height: 1.4; +} +.summary section[class$='-summary'], +.details section[class$='-details'], +.class-uses .detail, +.serialized-class-details { + padding: 0px 20px 5px 10px; + border: 1px solid #ededed; + background-color: #f8f8f8; +} +.inherited-list, +section[class$='-details'] .detail { + padding: 0 0 5px 8px; + background-color: #ffffff; + border: none; } .vertical-separator { - padding: 0 5px; + padding: 0 5px; } ul.help-section-list { - margin: 0; + margin: 0; } ul.help-subtoc > li { display: inline-block; @@ -700,32 +761,34 @@ ul.help-subtoc > li { font-size: smaller; } ul.help-subtoc > li::before { - content: "\2022" ; - padding-right:2px; + content: '\2022'; + padding-right: 2px; } span.help-note { - font-style: italic; + font-style: italic; } /* * Indicator icon for external links. */ -main a[href*="://"]::after { - content:""; - display:inline-block; - background-image:url('data:image/svg+xml; utf8, \ +main a[href*="://"]::after +{ + content: ''; + display: inline-block; + background-image: url('data:image/svg+xml; utf8, \ \ \ '); - background-size:100% 100%; - width:7px; - height:7px; - margin-left:2px; - margin-bottom:4px; + background-size: 100% 100%; + width: 7px; + height: 7px; + margin-left: 2px; + margin-bottom: 4px; } main a[href*="://"]:hover::after, -main a[href*="://"]:focus::after { - background-image:url('data:image/svg+xml; utf8, \ +main a[href*="://"]:focus::after +{ + background-image: url('data:image/svg+xml; utf8, \ \ \ @@ -754,116 +817,135 @@ main a[href*="://"]:focus::after { table.borderless, table.plain, table.striped { - margin-top: 10px; - margin-bottom: 10px; + margin-top: 10px; + margin-bottom: 10px; } table.borderless > caption, table.plain > caption, table.striped > caption { - font-weight: bold; - font-size: smaller; + font-weight: bold; + font-size: smaller; } -table.borderless th, table.borderless td, -table.plain th, table.plain td, -table.striped th, table.striped td { - padding: 2px 5px; +table.borderless th, +table.borderless td, +table.plain th, +table.plain td, +table.striped th, +table.striped td { + padding: 2px 5px; } table.borderless, -table.borderless > thead > tr > th, table.borderless > tbody > tr > th, table.borderless > tr > th, -table.borderless > thead > tr > td, table.borderless > tbody > tr > td, table.borderless > tr > td { - border: none; -} -table.borderless > thead > tr, table.borderless > tbody > tr, table.borderless > tr { - background-color: transparent; +table.borderless > thead > tr > th, +table.borderless > tbody > tr > th, +table.borderless > tr > th, +table.borderless > thead > tr > td, +table.borderless > tbody > tr > td, +table.borderless > tr > td { + border: none; +} +table.borderless > thead > tr, +table.borderless > tbody > tr, +table.borderless > tr { + background-color: transparent; } table.plain { - border-collapse: collapse; - border: 1px solid black; -} -table.plain > thead > tr, table.plain > tbody tr, table.plain > tr { - background-color: transparent; -} -table.plain > thead > tr > th, table.plain > tbody > tr > th, table.plain > tr > th, -table.plain > thead > tr > td, table.plain > tbody > tr > td, table.plain > tr > td { - border: 1px solid black; + border-collapse: collapse; + border: 1px solid black; +} +table.plain > thead > tr, +table.plain > tbody tr, +table.plain > tr { + background-color: transparent; +} +table.plain > thead > tr > th, +table.plain > tbody > tr > th, +table.plain > tr > th, +table.plain > thead > tr > td, +table.plain > tbody > tr > td, +table.plain > tr > td { + border: 1px solid black; } table.striped { - border-collapse: collapse; - border: 1px solid black; + border-collapse: collapse; + border: 1px solid black; } table.striped > thead { - background-color: #E3E3E3; + background-color: #e3e3e3; } -table.striped > thead > tr > th, table.striped > thead > tr > td { - border: 1px solid black; +table.striped > thead > tr > th, +table.striped > thead > tr > td { + border: 1px solid black; } table.striped > tbody > tr:nth-child(even) { - background-color: #EEE + background-color: #eee; } table.striped > tbody > tr:nth-child(odd) { - background-color: #FFF + background-color: #fff; } -table.striped > tbody > tr > th, table.striped > tbody > tr > td { - border-left: 1px solid black; - border-right: 1px solid black; +table.striped > tbody > tr > th, +table.striped > tbody > tr > td { + border-left: 1px solid black; + border-right: 1px solid black; } table.striped > tbody > tr > th { - font-weight: normal; + font-weight: normal; } /** * Tweak font sizes and paddings for small screens. */ @media screen and (max-width: 1050px) { - #search-input { - width: 300px; - } + #search-input { + width: 300px; + } } @media screen and (max-width: 800px) { - #search-input { - width: 200px; - } - .top-nav, - .bottom-nav { - font-size: 11px; - padding-top: 6px; - } - .sub-nav { - font-size: 11px; - } - .about-language { - padding-right: 16px; - } - ul.nav-list li, - .sub-nav .nav-list-search { - padding: 6px; - } - ul.sub-nav-list li { - padding-top: 5px; - } - main { - padding: 10px; - } - .summary section[class$="-summary"], .details section[class$="-details"], - .class-uses .detail, .serialized-class-details { - padding: 0 8px 5px 8px; - } - body { - -webkit-text-size-adjust: none; - } + #search-input { + width: 200px; + } + .top-nav, + .bottom-nav { + font-size: 11px; + padding-top: 6px; + } + .sub-nav { + font-size: 11px; + } + .about-language { + padding-right: 16px; + } + ul.nav-list li, + .sub-nav .nav-list-search { + padding: 6px; + } + ul.sub-nav-list li { + padding-top: 5px; + } + main { + padding: 10px; + } + .summary section[class$='-summary'], + .details section[class$='-details'], + .class-uses .detail, + .serialized-class-details { + padding: 0 8px 5px 8px; + } + body { + -webkit-text-size-adjust: none; + } } @media screen and (max-width: 500px) { - #search-input { - width: 150px; - } - .top-nav, - .bottom-nav { - font-size: 10px; - } - .sub-nav { - font-size: 10px; - } - .about-language { - font-size: 10px; - padding-right: 12px; - } + #search-input { + width: 150px; + } + .top-nav, + .bottom-nav { + font-size: 10px; + } + .sub-nav { + font-size: 10px; + } + .about-language { + font-size: 10px; + padding-right: 12px; + } } diff --git a/docs/TechnoLib/tag-search-index.js b/docs/TechnoLib/tag-search-index.js index f2a440c7..c559e8b6 100644 --- a/docs/TechnoLib/tag-search-index.js +++ b/docs/TechnoLib/tag-search-index.js @@ -1 +1,2 @@ -tagSearchIndex = [{"l":"Constant Field Values","h":"","u":"constant-values.html"}];updateSearchResults(); \ No newline at end of file +tagSearchIndex = [{ l: 'Constant Field Values', h: '', u: 'constant-values.html' }]; +updateSearchResults(); diff --git a/docs/TechnoLib/type-search-index.js b/docs/TechnoLib/type-search-index.js index bfa37814..584356d1 100644 --- a/docs/TechnoLib/type-search-index.js +++ b/docs/TechnoLib/type-search-index.js @@ -1 +1,114 @@ -typeSearchIndex = [{"l":"All Classes and Interfaces","u":"allclasses-index.html"},{"p":"com.technototes.library.util","l":"Alliance"},{"p":"com.technototes.library.logger","l":"LogConfig.AllowList"},{"p":"com.technototes.library.hardware2","l":"AnalogBuilder"},{"p":"com.technototes.library.hardware.sensor","l":"AnalogSensor"},{"p":"com.technototes.library.hardware.sensor","l":"IMU.AxesSigns"},{"p":"com.technototes.library.hardware2","l":"IMUBuilder.AxesSigns"},{"p":"com.technototes.library.control","l":"GamepadBase.Axis"},{"p":"com.technototes.library.control","l":"AxisBase"},{"p":"com.technototes.library.control","l":"Binding"},{"p":"com.technototes.library.util","l":"Alliance.Blue"},{"p":"com.technototes.library.logger","l":"Log.Boolean"},{"p":"com.technototes.library.logger.entry","l":"BooleanEntry"},{"p":"com.technototes.library.control","l":"GamepadBase.Button"},{"p":"com.technototes.library.control","l":"ButtonBase"},{"p":"com.technototes.library.util","l":"Characters"},{"p":"com.technototes.library.command","l":"ChoiceCommand"},{"p":"com.technototes.library.util","l":"Color"},{"p":"com.technototes.library.hardware2","l":"ColorBuilder"},{"p":"com.technototes.library.hardware.sensor","l":"ColorDistanceSensor"},{"p":"com.technototes.library.hardware2","l":"ColorRangeBuilder"},{"p":"com.technototes.library.hardware.sensor","l":"ColorSensor"},{"p":"com.technototes.library.command","l":"Command"},{"p":"com.technototes.library.control","l":"CommandAxis"},{"p":"com.technototes.library.command","l":"CommandBase"},{"p":"com.technototes.library.control","l":"CommandBinding"},{"p":"com.technototes.library.control","l":"CommandButton"},{"p":"com.technototes.library.control","l":"CommandGamepad"},{"p":"com.technototes.library.command","l":"CommandGroup"},{"p":"com.technototes.library.control","l":"CommandInput"},{"p":"com.technototes.library.structure","l":"CommandOpMode"},{"p":"com.technototes.library.command","l":"CommandScheduler"},{"p":"com.technototes.library.command","l":"Command.CommandState"},{"p":"com.technototes.library.command","l":"ConditionalCommand"},{"p":"com.technototes.library.hardware.servo","l":"ServoProfiler.Constraints"},{"p":"com.technototes.library.hardware2","l":"CRServoBuilder"},{"p":"com.technototes.library.logger","l":"LogConfig.DenyList"},{"p":"com.technototes.library.subsystem","l":"DeviceSubsystem"},{"p":"com.technototes.library.util","l":"Differential"},{"p":"com.technototes.library.util","l":"Differential.DifferentialPriority"},{"p":"com.technototes.library.hardware2","l":"DigitalBuilder"},{"p":"com.technototes.library.hardware.sensor","l":"DigitalSensor"},{"p":"com.technototes.library.hardware.sensor.encoder","l":"MotorEncoder.Direction"},{"p":"com.technototes.library.logger","l":"LogConfig.Disabled"},{"p":"com.technototes.library.hardware2","l":"DistanceBuilder"},{"p":"com.technototes.library.subsystem.drivebase","l":"DrivebaseSubsystem"},{"p":"com.technototes.library.hardware","l":"DummyDevice"},{"p":"com.technototes.library.general","l":"Enablable"},{"p":"com.technototes.library.hardware.motor","l":"EncodedMotor"},{"p":"com.technototes.library.hardware.motor","l":"EncodedMotorGroup"},{"p":"com.technototes.library.subsystem.motor","l":"EncodedMotorSubsystem"},{"p":"com.technototes.library.hardware.sensor.encoder","l":"Encoder"},{"p":"com.technototes.library.logger.entry","l":"Entry"},{"p":"com.technototes.library.hardware.sensor.encoder","l":"ExternalEncoder"},{"p":"com.technototes.library.control","l":"GamepadBase"},{"p":"com.technototes.library.control","l":"GamepadDpad"},{"p":"com.technototes.library.control","l":"GamepadStick"},{"p":"com.technototes.library.hardware2","l":"HardwareBuilder"},{"p":"com.technototes.library.hardware","l":"HardwareDevice"},{"p":"com.technototes.library.hardware","l":"HardwareDeviceGroup"},{"p":"com.technototes.library.hardware.sensor","l":"IColorSensor"},{"p":"com.technototes.library.hardware.sensor","l":"IDistanceSensor"},{"p":"com.technototes.library.hardware.sensor","l":"IGyro"},{"p":"com.technototes.library.hardware.sensor","l":"ILightSensor"},{"p":"com.technototes.library.hardware.sensor","l":"IMU"},{"p":"com.technototes.library.hardware2","l":"IMUBuilder"},{"p":"com.technototes.library.util","l":"Integral"},{"p":"com.technototes.library.general","l":"Invertable"},{"p":"com.technototes.library.command","l":"IterativeCommand"},{"p":"com.technototes.library.logger","l":"Log"},{"p":"com.technototes.library.logger","l":"LogConfig"},{"p":"com.technototes.library.logger","l":"Loggable"},{"p":"com.technototes.library.logger","l":"Logger"},{"p":"com.technototes.library.logger","l":"Log.Logs"},{"p":"com.technototes.library.util","l":"MapUtils"},{"p":"com.technototes.library.util","l":"MathUtils"},{"p":"com.technototes.library.hardware.motor","l":"Motor"},{"p":"com.technototes.library.hardware2","l":"MotorBuilder"},{"p":"com.technototes.library.hardware.sensor.encoder","l":"MotorEncoder"},{"p":"com.technototes.library.hardware.motor","l":"MotorGroup"},{"p":"com.technototes.library.subsystem.motor","l":"MotorSubsystem"},{"p":"com.technototes.library.logger","l":"Log.Number"},{"p":"com.technototes.library.logger.entry","l":"NumberEntry"},{"p":"com.technototes.library.structure","l":"CommandOpMode.OpModeState"},{"p":"com.technototes.library.command","l":"ParallelCommandGroup"},{"p":"com.technototes.library.command","l":"ParallelDeadlineGroup"},{"p":"com.technototes.library.command","l":"ParallelRaceGroup"},{"p":"com.technototes.library.general","l":"Periodic"},{"p":"com.technototes.library.util","l":"Range"},{"p":"com.technototes.library.util","l":"Alliance.Red"},{"p":"com.technototes.library.hardware.sensor","l":"Rev2MDistanceSensor"},{"p":"com.technototes.library","l":"RobotLibrary"},{"p":"com.technototes.library.logger","l":"LogConfig.Run"},{"p":"com.technototes.library.util","l":"Alliance.Selector"},{"p":"com.technototes.library.hardware.sensor","l":"Sensor"},{"p":"com.technototes.library.hardware","l":"Sensored"},{"p":"com.technototes.library.command","l":"SequentialCommandGroup"},{"p":"com.technototes.library.hardware.servo","l":"Servo"},{"p":"com.technototes.library.hardware2","l":"ServoBuilder"},{"p":"com.technototes.library.hardware.servo","l":"ServoGroup"},{"p":"com.technototes.library.hardware.servo","l":"ServoProfiler"},{"p":"com.technototes.library.subsystem.servo","l":"ServoSubsystem"},{"p":"com.technototes.library.subsystem.drivebase","l":"SimpleMecanumDrivebaseSubsystem"},{"p":"com.technototes.library.util","l":"SmartConsumer"},{"p":"com.technototes.library.hardware","l":"Speaker"},{"p":"com.technototes.library.control","l":"Stick"},{"p":"com.technototes.library.logger.entry","l":"StringEntry"},{"p":"com.technototes.library.subsystem","l":"Subsystem"},{"p":"com.technototes.library.subsystem.drivebase","l":"TankDrivebaseSubsystem"},{"p":"com.technototes.library.control","l":"Binding.Type"},{"p":"com.technototes.library.command","l":"WaitCommand"}];updateSearchResults(); \ No newline at end of file +typeSearchIndex = [ + { l: 'All Classes and Interfaces', u: 'allclasses-index.html' }, + { p: 'com.technototes.library.util', l: 'Alliance' }, + { p: 'com.technototes.library.logger', l: 'LogConfig.AllowList' }, + { p: 'com.technototes.library.hardware2', l: 'AnalogBuilder' }, + { p: 'com.technototes.library.hardware.sensor', l: 'AnalogSensor' }, + { p: 'com.technototes.library.hardware.sensor', l: 'IMU.AxesSigns' }, + { p: 'com.technototes.library.hardware2', l: 'IMUBuilder.AxesSigns' }, + { p: 'com.technototes.library.control', l: 'GamepadBase.Axis' }, + { p: 'com.technototes.library.control', l: 'AxisBase' }, + { p: 'com.technototes.library.control', l: 'Binding' }, + { p: 'com.technototes.library.util', l: 'Alliance.Blue' }, + { p: 'com.technototes.library.logger', l: 'Log.Boolean' }, + { p: 'com.technototes.library.logger.entry', l: 'BooleanEntry' }, + { p: 'com.technototes.library.control', l: 'GamepadBase.Button' }, + { p: 'com.technototes.library.control', l: 'ButtonBase' }, + { p: 'com.technototes.library.util', l: 'Characters' }, + { p: 'com.technototes.library.command', l: 'ChoiceCommand' }, + { p: 'com.technototes.library.util', l: 'Color' }, + { p: 'com.technototes.library.hardware2', l: 'ColorBuilder' }, + { p: 'com.technototes.library.hardware.sensor', l: 'ColorDistanceSensor' }, + { p: 'com.technototes.library.hardware2', l: 'ColorRangeBuilder' }, + { p: 'com.technototes.library.hardware.sensor', l: 'ColorSensor' }, + { p: 'com.technototes.library.command', l: 'Command' }, + { p: 'com.technototes.library.control', l: 'CommandAxis' }, + { p: 'com.technototes.library.command', l: 'CommandBase' }, + { p: 'com.technototes.library.control', l: 'CommandBinding' }, + { p: 'com.technototes.library.control', l: 'CommandButton' }, + { p: 'com.technototes.library.control', l: 'CommandGamepad' }, + { p: 'com.technototes.library.command', l: 'CommandGroup' }, + { p: 'com.technototes.library.control', l: 'CommandInput' }, + { p: 'com.technototes.library.structure', l: 'CommandOpMode' }, + { p: 'com.technototes.library.command', l: 'CommandScheduler' }, + { p: 'com.technototes.library.command', l: 'Command.CommandState' }, + { p: 'com.technototes.library.command', l: 'ConditionalCommand' }, + { p: 'com.technototes.library.hardware.servo', l: 'ServoProfiler.Constraints' }, + { p: 'com.technototes.library.hardware2', l: 'CRServoBuilder' }, + { p: 'com.technototes.library.logger', l: 'LogConfig.DenyList' }, + { p: 'com.technototes.library.subsystem', l: 'DeviceSubsystem' }, + { p: 'com.technototes.library.util', l: 'Differential' }, + { p: 'com.technototes.library.util', l: 'Differential.DifferentialPriority' }, + { p: 'com.technototes.library.hardware2', l: 'DigitalBuilder' }, + { p: 'com.technototes.library.hardware.sensor', l: 'DigitalSensor' }, + { p: 'com.technototes.library.hardware.sensor.encoder', l: 'MotorEncoder.Direction' }, + { p: 'com.technototes.library.logger', l: 'LogConfig.Disabled' }, + { p: 'com.technototes.library.hardware2', l: 'DistanceBuilder' }, + { p: 'com.technototes.library.subsystem.drivebase', l: 'DrivebaseSubsystem' }, + { p: 'com.technototes.library.hardware', l: 'DummyDevice' }, + { p: 'com.technototes.library.general', l: 'Enablable' }, + { p: 'com.technototes.library.hardware.motor', l: 'EncodedMotor' }, + { p: 'com.technototes.library.hardware.motor', l: 'EncodedMotorGroup' }, + { p: 'com.technototes.library.subsystem.motor', l: 'EncodedMotorSubsystem' }, + { p: 'com.technototes.library.hardware.sensor.encoder', l: 'Encoder' }, + { p: 'com.technototes.library.logger.entry', l: 'Entry' }, + { p: 'com.technototes.library.hardware.sensor.encoder', l: 'ExternalEncoder' }, + { p: 'com.technototes.library.control', l: 'GamepadBase' }, + { p: 'com.technototes.library.control', l: 'GamepadDpad' }, + { p: 'com.technototes.library.control', l: 'GamepadStick' }, + { p: 'com.technototes.library.hardware2', l: 'HardwareBuilder' }, + { p: 'com.technototes.library.hardware', l: 'HardwareDevice' }, + { p: 'com.technototes.library.hardware', l: 'HardwareDeviceGroup' }, + { p: 'com.technototes.library.hardware.sensor', l: 'IColorSensor' }, + { p: 'com.technototes.library.hardware.sensor', l: 'IDistanceSensor' }, + { p: 'com.technototes.library.hardware.sensor', l: 'IGyro' }, + { p: 'com.technototes.library.hardware.sensor', l: 'ILightSensor' }, + { p: 'com.technototes.library.hardware.sensor', l: 'IMU' }, + { p: 'com.technototes.library.hardware2', l: 'IMUBuilder' }, + { p: 'com.technototes.library.util', l: 'Integral' }, + { p: 'com.technototes.library.general', l: 'Invertable' }, + { p: 'com.technototes.library.command', l: 'IterativeCommand' }, + { p: 'com.technototes.library.logger', l: 'Log' }, + { p: 'com.technototes.library.logger', l: 'LogConfig' }, + { p: 'com.technototes.library.logger', l: 'Loggable' }, + { p: 'com.technototes.library.logger', l: 'Logger' }, + { p: 'com.technototes.library.logger', l: 'Log.Logs' }, + { p: 'com.technototes.library.util', l: 'MapUtils' }, + { p: 'com.technototes.library.util', l: 'MathUtils' }, + { p: 'com.technototes.library.hardware.motor', l: 'Motor' }, + { p: 'com.technototes.library.hardware2', l: 'MotorBuilder' }, + { p: 'com.technototes.library.hardware.sensor.encoder', l: 'MotorEncoder' }, + { p: 'com.technototes.library.hardware.motor', l: 'MotorGroup' }, + { p: 'com.technototes.library.subsystem.motor', l: 'MotorSubsystem' }, + { p: 'com.technototes.library.logger', l: 'Log.Number' }, + { p: 'com.technototes.library.logger.entry', l: 'NumberEntry' }, + { p: 'com.technototes.library.structure', l: 'CommandOpMode.OpModeState' }, + { p: 'com.technototes.library.command', l: 'ParallelCommandGroup' }, + { p: 'com.technototes.library.command', l: 'ParallelDeadlineGroup' }, + { p: 'com.technototes.library.command', l: 'ParallelRaceGroup' }, + { p: 'com.technototes.library.general', l: 'Periodic' }, + { p: 'com.technototes.library.util', l: 'Range' }, + { p: 'com.technototes.library.util', l: 'Alliance.Red' }, + { p: 'com.technototes.library.hardware.sensor', l: 'Rev2MDistanceSensor' }, + { p: 'com.technototes.library', l: 'RobotLibrary' }, + { p: 'com.technototes.library.logger', l: 'LogConfig.Run' }, + { p: 'com.technototes.library.util', l: 'Alliance.Selector' }, + { p: 'com.technototes.library.hardware.sensor', l: 'Sensor' }, + { p: 'com.technototes.library.hardware', l: 'Sensored' }, + { p: 'com.technototes.library.command', l: 'SequentialCommandGroup' }, + { p: 'com.technototes.library.hardware.servo', l: 'Servo' }, + { p: 'com.technototes.library.hardware2', l: 'ServoBuilder' }, + { p: 'com.technototes.library.hardware.servo', l: 'ServoGroup' }, + { p: 'com.technototes.library.hardware.servo', l: 'ServoProfiler' }, + { p: 'com.technototes.library.subsystem.servo', l: 'ServoSubsystem' }, + { p: 'com.technototes.library.subsystem.drivebase', l: 'SimpleMecanumDrivebaseSubsystem' }, + { p: 'com.technototes.library.util', l: 'SmartConsumer' }, + { p: 'com.technototes.library.hardware', l: 'Speaker' }, + { p: 'com.technototes.library.control', l: 'Stick' }, + { p: 'com.technototes.library.logger.entry', l: 'StringEntry' }, + { p: 'com.technototes.library.subsystem', l: 'Subsystem' }, + { p: 'com.technototes.library.subsystem.drivebase', l: 'TankDrivebaseSubsystem' }, + { p: 'com.technototes.library.control', l: 'Binding.Type' }, + { p: 'com.technototes.library.command', l: 'WaitCommand' }, +]; +updateSearchResults(); diff --git a/docs/Vision/allclasses-index.html b/docs/Vision/allclasses-index.html index 71dfe5d5..b45450bf 100644 --- a/docs/Vision/allclasses-index.html +++ b/docs/Vision/allclasses-index.html @@ -1,84 +1,136 @@ - + - - -All Classes and Interfaces (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    All Classes and Interfaces

    -
    -
    -
    Classes
    -
    -
    Class
    -
    Description
    -
    Camera<T extends org.openftc.easyopencv.OpenCvCamera,U extends com.qualcomm.robotcore.hardware.HardwareDevice>
    -
    -
    This is an OpenCVCamera interface using the FTC SDK camera hardware
    -
    - -
    -
    This is a Camera for use with a phone's internal camera
    -
    - -
    -
    A vision streaming pipeline to enable vision processing during an opmode
    -
    - -
    -
    A webcam device interface that allows you to switch between multiple cameras!
    -
    - -
    -
    Acquire webcamera is just a quit constructor away :)
    -
    -
    -
    -
    -
    -
    - + + + All Classes and Interfaces (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    All Classes and Interfaces

    +
    +
    +
    Classes
    +
    +
    Class
    +
    Description
    +
    + Camera<T + extends org.openftc.easyopencv.OpenCvCamera,U + extends com.qualcomm.robotcore.hardware.HardwareDevice> +
    +
    +
    + This is an OpenCVCamera interface using the FTC SDK camera hardware +
    +
    + +
    +
    This is a Camera for use with a phone's internal camera
    +
    + +
    +
    + A vision streaming pipeline to enable vision processing during an opmode +
    +
    + +
    +
    + A webcam device interface that allows you to switch between multiple cameras! +
    +
    +
    + Webcam +
    +
    +
    Acquire webcamera is just a quit constructor away :)
    +
    +
    +
    +
    +
    +
    + diff --git a/docs/Vision/allpackages-index.html b/docs/Vision/allpackages-index.html index 8d98dc33..4bb32373 100644 --- a/docs/Vision/allpackages-index.html +++ b/docs/Vision/allpackages-index.html @@ -1,66 +1,80 @@ - + - - -All Packages (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    All Packages

    -
    -
    Package Summary
    - -
    -
    -
    - + + + All Packages (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    All Packages

    +
    +
    Package Summary
    +
    +
    Package
    +
    Description
    + +
     
    + +
     
    +
    +
    +
    +
    + diff --git a/docs/Vision/deprecated-list.html b/docs/Vision/deprecated-list.html index 86b1821d..f8cef183 100644 --- a/docs/Vision/deprecated-list.html +++ b/docs/Vision/deprecated-list.html @@ -1,74 +1,84 @@ - + - - -Deprecated List (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Deprecated API

    -

    Contents

    - -
    - -
    -
    -
    - + + + Deprecated List (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Deprecated API

    +

    Contents

    + +
    + +
    +
    +
    + diff --git a/docs/Vision/help-doc.html b/docs/Vision/help-doc.html index 23a3c98b..c5e91762 100644 --- a/docs/Vision/help-doc.html +++ b/docs/Vision/help-doc.html @@ -1,181 +1,261 @@ - + - - -API Help (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -

    JavaDoc Help

    - -
    -
    -

    Navigation

    -Starting from the Overview page, you can browse the documentation using the links in each page, and in the navigation bar at the top of each page. The Index and Search box allow you to navigate to specific declarations and summary pages, including: All Packages, All Classes and Interfaces - -
    -
    -
    -

    Kinds of Pages

    -The following sections describe the different kinds of pages in this collection. -
    -

    Overview

    -

    The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

    -
    -
    -

    Package

    -

    Each package has a page that contains a list of its classes and interfaces, with a summary for each. These pages may contain the following categories:

    -
      -
    • Interfaces
    • -
    • Classes
    • -
    • Enum Classes
    • -
    • Exceptions
    • -
    • Errors
    • -
    • Annotation Interfaces
    • -
    -
    -
    -

    Class or Interface

    -

    Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a declaration and description, member summary tables, and detailed member descriptions. Entries in each of these sections are omitted if they are empty or not applicable.

    -
      -
    • Class Inheritance Diagram
    • -
    • Direct Subclasses
    • -
    • All Known Subinterfaces
    • -
    • All Known Implementing Classes
    • -
    • Class or Interface Declaration
    • -
    • Class or Interface Description
    • -
    -
    -
      -
    • Nested Class Summary
    • -
    • Enum Constant Summary
    • -
    • Field Summary
    • -
    • Property Summary
    • -
    • Constructor Summary
    • -
    • Method Summary
    • -
    • Required Element Summary
    • -
    • Optional Element Summary
    • -
    -
    -
      -
    • Enum Constant Details
    • -
    • Field Details
    • -
    • Property Details
    • -
    • Constructor Details
    • -
    • Method Details
    • -
    • Element Details
    • -
    -

    Note: Annotation interfaces have required and optional elements, but not methods. Only enum classes have enum constants. The components of a record class are displayed as part of the declaration of the record class. Properties are a feature of JavaFX.

    -

    The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.

    -
    -
    -

    Other Files

    -

    Packages and modules may contain pages with additional information related to the declarations nearby.

    -
    -
    -

    Tree (Class Hierarchy)

    -

    There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. Classes are organized by inheritance structure starting with java.lang.Object. Interfaces do not inherit from java.lang.Object.

    -
      -
    • When viewing the Overview page, clicking on TREE displays the hierarchy for all packages.
    • -
    • When viewing a particular package, class or interface page, clicking on TREE displays the hierarchy for only that package.
    • -
    -
    -
    -

    Deprecated API

    -

    The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to shortcomings, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.

    -
    -
    -

    All Packages

    -

    The All Packages page contains an alphabetic index of all packages contained in the documentation.

    -
    -
    -

    All Classes and Interfaces

    -

    The All Classes and Interfaces page contains an alphabetic index of all classes and interfaces contained in the documentation, including annotation interfaces, enum classes, and record classes.

    -
    -
    -

    Index

    -

    The Index contains an alphabetic index of all classes, interfaces, constructors, methods, and fields in the documentation, as well as summary pages such as All Packages, All Classes and Interfaces.

    -
    -
    -
    -This help file applies to API documentation generated by the standard doclet.
    -
    -
    - + + + API Help (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +

    JavaDoc Help

    + +
    +
    +

    Navigation

    + Starting from the Overview page, you can browse the + documentation using the links in each page, and in the navigation bar at the top of each + page. The Index and Search box allow you to navigate to + specific declarations and summary pages, including: + All Packages, + All Classes and Interfaces + +
    +
    +
    +

    Kinds of Pages

    + The following sections describe the different kinds of pages in this collection. +
    +

    Overview

    +

    + The Overview page is the front page of this API document + and provides a list of all packages with a summary for each. This page can also + contain an overall description of the set of packages. +

    +
    +
    +

    Package

    +

    + Each package has a page that contains a list of its classes and interfaces, with a + summary for each. These pages may contain the following categories: +

    +
      +
    • Interfaces
    • +
    • Classes
    • +
    • Enum Classes
    • +
    • Exceptions
    • +
    • Errors
    • +
    • Annotation Interfaces
    • +
    +
    +
    +

    Class or Interface

    +

    + Each class, interface, nested class and nested interface has its own separate page. + Each of these pages has three sections consisting of a declaration and description, + member summary tables, and detailed member descriptions. Entries in each of these + sections are omitted if they are empty or not applicable. +

    +
      +
    • Class Inheritance Diagram
    • +
    • Direct Subclasses
    • +
    • All Known Subinterfaces
    • +
    • All Known Implementing Classes
    • +
    • Class or Interface Declaration
    • +
    • Class or Interface Description
    • +
    +
    +
      +
    • Nested Class Summary
    • +
    • Enum Constant Summary
    • +
    • Field Summary
    • +
    • Property Summary
    • +
    • Constructor Summary
    • +
    • Method Summary
    • +
    • Required Element Summary
    • +
    • Optional Element Summary
    • +
    +
    +
      +
    • Enum Constant Details
    • +
    • Field Details
    • +
    • Property Details
    • +
    • Constructor Details
    • +
    • Method Details
    • +
    • Element Details
    • +
    +

    + Note: Annotation interfaces have required and + optional elements, but not methods. Only enum classes have enum constants. The + components of a record class are displayed as part of the declaration of the record + class. Properties are a feature of JavaFX. +

    +

    + The summary entries are alphabetical, while the detailed descriptions are in the + order they appear in the source code. This preserves the logical groupings + established by the programmer. +

    +
    +
    +

    Other Files

    +

    + Packages and modules may contain pages with additional information related to the + declarations nearby. +

    +
    +
    +

    Tree (Class Hierarchy)

    +

    + There is a Class Hierarchy page for all packages, + plus a hierarchy for each package. Each hierarchy page contains a list of classes + and a list of interfaces. Classes are organized by inheritance structure starting + with java.lang.Object. Interfaces do not inherit from + java.lang.Object. +

    +
      +
    • + When viewing the Overview page, clicking on TREE displays the hierarchy for all + packages. +
    • +
    • + When viewing a particular package, class or interface page, clicking on TREE + displays the hierarchy for only that package. +
    • +
    +
    +
    +

    Deprecated API

    +

    + The Deprecated API page lists all of the API that + have been deprecated. A deprecated API is not recommended for use, generally due to + shortcomings, and a replacement API is usually given. Deprecated APIs may be removed + in future implementations. +

    +
    +
    +

    All Packages

    +

    + The All Packages page contains an alphabetic + index of all packages contained in the documentation. +

    +
    +
    +

    All Classes and Interfaces

    +

    + The All Classes and Interfaces page contains an + alphabetic index of all classes and interfaces contained in the documentation, + including annotation interfaces, enum classes, and record classes. +

    +
    +
    +

    Index

    +

    + The Index contains an alphabetic index of all classes, + interfaces, constructors, methods, and fields in the documentation, as well as + summary pages such as All Packages, + All Classes and Interfaces. +

    +
    +
    +
    + This help file applies to API documentation generated by the standard doclet. +
    +
    +
    + diff --git a/docs/Vision/index-all.html b/docs/Vision/index-all.html index f8693534..09df77c7 100644 --- a/docs/Vision/index-all.html +++ b/docs/Vision/index-all.html @@ -1,262 +1,916 @@ - + - - -Index (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Index

    -
    -C G I O P R S W 
    All Classes and Interfaces|All Packages -

    C

    -
    -
    camera - Variable in class com.technototes.vision.subsystem.PipelineSubsystem
    -
    -
    The Camera object this subsystem is processing frames from
    -
    -
    Camera<T extends org.openftc.easyopencv.OpenCvCamera,U extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in com.technototes.vision.hardware
    -
    -
    This is an OpenCVCamera interface using the FTC SDK camera hardware
    -
    -
    Camera(String) - Constructor for class com.technototes.vision.hardware.Camera
    -
    -
    Create a Camera device from the HardwareDevice provided
    -
    -
    Camera(U) - Constructor for class com.technototes.vision.hardware.Camera
    -
    -
    Create a Camera device from the HardwareDevice provided
    -
    -
    closeCameraDevice() - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    closeCameraDeviceAsync(OpenCvCamera.AsyncCameraCloseListener) - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    com.technototes.vision.hardware - package com.technototes.vision.hardware
    -
     
    -
    com.technototes.vision.subsystem - package com.technototes.vision.subsystem
    -
     
    -
    createCamera() - Method in class com.technototes.vision.hardware.InternalCamera
    -
    -
    Create an OpenCvInternalCamera from this Camera
    -
    -
    createCamera() - Method in class com.technototes.vision.hardware.SwitchableWebcam
    -
    -
    Get the switchable webcam object to use with your pipeline
    -
    -
    createCamera() - Method in class com.technototes.vision.hardware.Webcam
    -
    -
    Create an OpenCvWebcam, which can then be used in your vision pipeline
    -
    -
    -

    G

    -
    -
    getActiveCamera() - Method in class com.technototes.vision.hardware.SwitchableWebcam
    -
    -
    Get the currently selected camera
    -
    -
    getCameraDirection() - Method in class com.technototes.vision.hardware.InternalCamera
    -
    -
    Get which internal camera is being used
    -
    -
    getCurrentPipelineMaxFps() - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    getDevice() - Method in class com.technototes.vision.subsystem.PipelineSubsystem
    -
    -
    Get the Camera device that frames are being processed from
    -
    -
    getFps() - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    getFrameBitmap(Continuation<? extends Consumer<Bitmap>>) - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    getFrameCount() - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    getOpenCvCamera() - Method in class com.technototes.vision.hardware.Camera
    -
    -
    get the camera created
    -
    -
    getOverheadTimeMs() - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    getPipelineTimeMs() - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    getTotalFrameTimeMs() - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    -

    I

    -
    -
    InternalCamera - Class in com.technototes.vision.hardware
    -
    -
    This is a Camera for use with a phone's internal camera
    -
    -
    InternalCamera() - Constructor for class com.technototes.vision.hardware.InternalCamera
    -
    -
    Create the front-facing internal camera
    -
    -
    InternalCamera(OpenCvInternalCamera.CameraDirection) - Constructor for class com.technototes.vision.hardware.InternalCamera
    -
    -
    Create a camera (using the one on the phone for the CameraDirection)
    -
    -
    -

    O

    -
    -
    openCameraDevice() - Method in class com.technototes.vision.hardware.Camera
    -
    -
    Deprecated.
    -
    -
    openCameraDeviceAsync(Runnable) - Method in class com.technototes.vision.hardware.Camera
    -
    -
    Invokes the Runnable's run() method when the camera has been opened.
    -
    -
    openCameraDeviceAsync(Runnable, IntConsumer) - Method in class com.technototes.vision.hardware.Camera
    -
    -
    Invokes the Runnable's run() method when the camera has been opened, - and calls the IntConsumer's accept() method if an error occurs
    -
    -
    openCameraDeviceAsync(OpenCvCamera.AsyncCameraOpenListener) - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    openCvCamera - Variable in class com.technototes.vision.hardware.Camera
    -
    -
    This is the OpenCvCamera object created
    -
    -
    -

    P

    -
    -
    pauseViewport() - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    PipelineSubsystem - Class in com.technototes.vision.subsystem
    -
    -
    A vision streaming pipeline to enable vision processing during an opmode
    -
    -
    PipelineSubsystem(Camera) - Constructor for class com.technototes.vision.subsystem.PipelineSubsystem
    -
    -
    Create the subsystem with the Camera provided
    -
    -
    -

    R

    -
    -
    resumeViewport() - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    -

    S

    -
    -
    setActiveCamera(Webcam) - Method in class com.technototes.vision.hardware.SwitchableWebcam
    -
    -
    Set the active camera (and return it!)
    -
    -
    setActiveCamera(String) - Method in class com.technototes.vision.hardware.SwitchableWebcam
    -
    -
    Set the active camera (and return it!)
    -
    -
    setActiveCamera(WebcamName) - Method in class com.technototes.vision.hardware.SwitchableWebcam
    -
    -
    Set the active camera (and return it!)
    -
    -
    setPipeline(OpenCvPipeline) - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    setViewportRenderer(OpenCvCamera.ViewportRenderer) - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    setViewportRenderingPolicy(OpenCvCamera.ViewportRenderingPolicy) - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    showFpsMeterOnViewport(boolean) - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    startRecordingPipeline(PipelineRecordingParameters) - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    startStreaming(int, int) - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    startStreaming(int, int) - Method in class com.technototes.vision.subsystem.PipelineSubsystem
    -
    -
    This begins streaming frames from the camera
    -
    -
    startStreaming(int, int, OpenCvCameraRotation) - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    startStreaming(int, int, OpenCvCameraRotation) - Method in class com.technototes.vision.subsystem.PipelineSubsystem
    -
    -
    This begins streaming frames from the camera
    -
    -
    stopRecordingPipeline() - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    stopStreaming() - Method in class com.technototes.vision.hardware.Camera
    -
     
    -
    stopStreaming() - Method in class com.technototes.vision.subsystem.PipelineSubsystem
    -
    -
    Stop frame processing
    -
    -
    SwitchableWebcam - Class in com.technototes.vision.hardware
    -
    -
    A webcam device interface that allows you to switch between multiple cameras!
    -
    -
    SwitchableWebcam(Webcam...) - Constructor for class com.technototes.vision.hardware.SwitchableWebcam
    -
    -
    Constructor that takes already-created Webcam's so they can be accessed - through the switchable interface
    -
    -
    SwitchableWebcam(String...) - Constructor for class com.technototes.vision.hardware.SwitchableWebcam
    -
    -
    Constructor to create the switchable webcam object
    -
    -
    SwitchableWebcam(WebcamName...) - Constructor for class com.technototes.vision.hardware.SwitchableWebcam
    -
    -
    Constructor to create the switchable webcam object
    -
    -
    -

    W

    -
    -
    Webcam - Class in com.technototes.vision.hardware
    -
    -
    Acquire webcamera is just a quit constructor away :)
    -
    -
    Webcam(String) - Constructor for class com.technototes.vision.hardware.Webcam
    -
    -
    Create a webcam device configured on the device with the given name
    -
    -
    Webcam(WebcamName) - Constructor for class com.technototes.vision.hardware.Webcam
    -
    -
    TODO: I'm not sure where WebcamName comes from.
    -
    -
    -C G I O P R S W 
    All Classes and Interfaces|All Packages
    -
    -
    - + + + Index (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Index

    +
    + C G I O P R S W 
    All Classes and Interfaces|All Packages +

    C

    +
    +
    + camera + - Variable in class com.technototes.vision.subsystem.PipelineSubsystem +
    +
    +
    The Camera object this subsystem is processing frames from
    +
    +
    + Camera<T + extends org.openftc.easyopencv.OpenCvCamera,U + extends com.qualcomm.robotcore.hardware.HardwareDevice> - Class in + com.technototes.vision.hardware +
    +
    +
    + This is an OpenCVCamera interface using the FTC SDK camera hardware +
    +
    +
    + Camera(String) + - Constructor for class com.technototes.vision.hardware.Camera +
    +
    +
    Create a Camera device from the HardwareDevice provided
    +
    +
    + Camera(U) + - Constructor for class com.technototes.vision.hardware.Camera +
    +
    +
    Create a Camera device from the HardwareDevice provided
    +
    +
    + closeCameraDevice() + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + closeCameraDeviceAsync(OpenCvCamera.AsyncCameraCloseListener) + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + com.technototes.vision.hardware + - package com.technototes.vision.hardware +
    +
     
    +
    + com.technototes.vision.subsystem + - package com.technototes.vision.subsystem +
    +
     
    +
    + createCamera() + - Method in class com.technototes.vision.hardware.InternalCamera +
    +
    +
    Create an OpenCvInternalCamera from this Camera
    +
    +
    + createCamera() + - Method in class com.technototes.vision.hardware.SwitchableWebcam +
    +
    +
    Get the switchable webcam object to use with your pipeline
    +
    +
    + createCamera() + - Method in class com.technototes.vision.hardware.Webcam +
    +
    +
    + Create an OpenCvWebcam, which can then be used in your vision pipeline +
    +
    +
    +

    G

    +
    +
    + getActiveCamera() + - Method in class com.technototes.vision.hardware.SwitchableWebcam +
    +
    +
    Get the currently selected camera
    +
    +
    + getCameraDirection() + - Method in class com.technototes.vision.hardware.InternalCamera +
    +
    +
    Get which internal camera is being used
    +
    +
    + getCurrentPipelineMaxFps() + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + getDevice() + - Method in class com.technototes.vision.subsystem.PipelineSubsystem +
    +
    +
    Get the Camera device that frames are being processed from
    +
    +
    + getFps() + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + getFrameBitmap(Continuation<? extends Consumer<Bitmap>>) + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + getFrameCount() + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + getOpenCvCamera() + - Method in class com.technototes.vision.hardware.Camera +
    +
    +
    get the camera created
    +
    +
    + getOverheadTimeMs() + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + getPipelineTimeMs() + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + getTotalFrameTimeMs() + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    +

    I

    +
    +
    + InternalCamera + - Class in + com.technototes.vision.hardware +
    +
    +
    This is a Camera for use with a phone's internal camera
    +
    +
    + InternalCamera() + - Constructor for class com.technototes.vision.hardware.InternalCamera +
    +
    +
    Create the front-facing internal camera
    +
    +
    + InternalCamera(OpenCvInternalCamera.CameraDirection) + - Constructor for class com.technototes.vision.hardware.InternalCamera +
    +
    +
    + Create a camera (using the one on the phone for the CameraDirection) +
    +
    +
    +

    O

    +
    +
    + openCameraDevice() + - Method in class com.technototes.vision.hardware.Camera +
    +
    +
    Deprecated.
    +
    +
    + openCameraDeviceAsync(Runnable) + - Method in class com.technototes.vision.hardware.Camera +
    +
    +
    + Invokes the Runnable's run() method when the camera has been opened. +
    +
    +
    + openCameraDeviceAsync(Runnable, IntConsumer) + - Method in class com.technototes.vision.hardware.Camera +
    +
    +
    + Invokes the Runnable's run() method when the camera has been opened, and calls the + IntConsumer's accept() method if an error occurs +
    +
    +
    + openCameraDeviceAsync(OpenCvCamera.AsyncCameraOpenListener) + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + openCvCamera + - Variable in class com.technototes.vision.hardware.Camera +
    +
    +
    This is the OpenCvCamera object created
    +
    +
    +

    P

    +
    +
    + pauseViewport() + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + PipelineSubsystem + - Class in + com.technototes.vision.subsystem +
    +
    +
    + A vision streaming pipeline to enable vision processing during an opmode +
    +
    +
    + PipelineSubsystem(Camera) + - Constructor for class com.technototes.vision.subsystem.PipelineSubsystem +
    +
    +
    Create the subsystem with the Camera provided
    +
    +
    +

    R

    +
    +
    + resumeViewport() + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    +

    S

    +
    +
    + setActiveCamera(Webcam) + - Method in class com.technototes.vision.hardware.SwitchableWebcam +
    +
    +
    Set the active camera (and return it!)
    +
    +
    + setActiveCamera(String) + - Method in class com.technototes.vision.hardware.SwitchableWebcam +
    +
    +
    Set the active camera (and return it!)
    +
    +
    + setActiveCamera(WebcamName) + - Method in class com.technototes.vision.hardware.SwitchableWebcam +
    +
    +
    Set the active camera (and return it!)
    +
    +
    + setPipeline(OpenCvPipeline) + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + setViewportRenderer(OpenCvCamera.ViewportRenderer) + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + setViewportRenderingPolicy(OpenCvCamera.ViewportRenderingPolicy) + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + showFpsMeterOnViewport(boolean) + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + startRecordingPipeline(PipelineRecordingParameters) + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + startStreaming(int, int) + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + startStreaming(int, int) + - Method in class com.technototes.vision.subsystem.PipelineSubsystem +
    +
    +
    This begins streaming frames from the camera
    +
    +
    + startStreaming(int, int, OpenCvCameraRotation) + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + startStreaming(int, int, OpenCvCameraRotation) + - Method in class com.technototes.vision.subsystem.PipelineSubsystem +
    +
    +
    This begins streaming frames from the camera
    +
    +
    + stopRecordingPipeline() + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + stopStreaming() + - Method in class com.technototes.vision.hardware.Camera +
    +
     
    +
    + stopStreaming() + - Method in class com.technototes.vision.subsystem.PipelineSubsystem +
    +
    +
    Stop frame processing
    +
    +
    + SwitchableWebcam + - Class in + com.technototes.vision.hardware +
    +
    +
    + A webcam device interface that allows you to switch between multiple cameras! +
    +
    +
    + SwitchableWebcam(Webcam...) + - Constructor for class com.technototes.vision.hardware.SwitchableWebcam +
    +
    +
    + Constructor that takes already-created Webcam's so they can be accessed through the + switchable interface +
    +
    +
    + SwitchableWebcam(String...) + - Constructor for class com.technototes.vision.hardware.SwitchableWebcam +
    +
    +
    Constructor to create the switchable webcam object
    +
    +
    + SwitchableWebcam(WebcamName...) + - Constructor for class com.technototes.vision.hardware.SwitchableWebcam +
    +
    +
    Constructor to create the switchable webcam object
    +
    +
    +

    W

    +
    +
    + Webcam + - Class in + com.technototes.vision.hardware +
    +
    +
    Acquire webcamera is just a quit constructor away :)
    +
    +
    + Webcam(String) + - Constructor for class com.technototes.vision.hardware.Webcam +
    +
    +
    + Create a webcam device configured on the device with the given name +
    +
    +
    + Webcam(WebcamName) + - Constructor for class com.technototes.vision.hardware.Webcam +
    +
    +
    TODO: I'm not sure where WebcamName comes from.
    +
    +
    + C G I O P R S W 
    All Classes and Interfaces|All Packages +
    +
    +
    + diff --git a/docs/Vision/index.html b/docs/Vision/index.html index 3add7e80..70a53db1 100644 --- a/docs/Vision/index.html +++ b/docs/Vision/index.html @@ -1,68 +1,86 @@ - + - - -Overview (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Vision API

    -
    -
    -
    Packages
    - -
    -
    -
    -
    - + + + Overview (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Vision API

    +
    +
    +
    Packages
    +
    +
    Package
    +
    Description
    + +
    +   +
    + +
    +   +
    +
    +
    +
    +
    +
    + diff --git a/docs/Vision/jquery-ui.overrides.css b/docs/Vision/jquery-ui.overrides.css index facf852c..bc437535 100644 --- a/docs/Vision/jquery-ui.overrides.css +++ b/docs/Vision/jquery-ui.overrides.css @@ -29,7 +29,7 @@ a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover { - /* Overrides the color of selection used in jQuery UI */ - background: #F8981D; - border: 1px solid #F8981D; + /* Overrides the color of selection used in jQuery UI */ + background: #f8981d; + border: 1px solid #f8981d; } diff --git a/docs/Vision/member-search-index.js b/docs/Vision/member-search-index.js index c18770de..f63548dc 100644 --- a/docs/Vision/member-search-index.js +++ b/docs/Vision/member-search-index.js @@ -1 +1,177 @@ -memberSearchIndex = [{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"camera"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"Camera(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"Camera(U)","u":"%3Cinit%3E(U)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"closeCameraDevice()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"closeCameraDeviceAsync(OpenCvCamera.AsyncCameraCloseListener)","u":"closeCameraDeviceAsync(org.openftc.easyopencv.OpenCvCamera.AsyncCameraCloseListener)"},{"p":"com.technototes.vision.hardware","c":"InternalCamera","l":"createCamera()"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"createCamera()"},{"p":"com.technototes.vision.hardware","c":"Webcam","l":"createCamera()"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"getActiveCamera()"},{"p":"com.technototes.vision.hardware","c":"InternalCamera","l":"getCameraDirection()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getCurrentPipelineMaxFps()"},{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"getDevice()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getFps()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getFrameBitmap(Continuation>)","u":"getFrameBitmap(org.firstinspires.ftc.robotcore.external.function.Continuation)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getFrameCount()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getOpenCvCamera()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getOverheadTimeMs()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getPipelineTimeMs()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"getTotalFrameTimeMs()"},{"p":"com.technototes.vision.hardware","c":"InternalCamera","l":"InternalCamera()","u":"%3Cinit%3E()"},{"p":"com.technototes.vision.hardware","c":"InternalCamera","l":"InternalCamera(OpenCvInternalCamera.CameraDirection)","u":"%3Cinit%3E(org.openftc.easyopencv.OpenCvInternalCamera.CameraDirection)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"openCameraDevice()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"openCameraDeviceAsync(OpenCvCamera.AsyncCameraOpenListener)","u":"openCameraDeviceAsync(org.openftc.easyopencv.OpenCvCamera.AsyncCameraOpenListener)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"openCameraDeviceAsync(Runnable)","u":"openCameraDeviceAsync(java.lang.Runnable)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"openCameraDeviceAsync(Runnable, IntConsumer)","u":"openCameraDeviceAsync(java.lang.Runnable,java.util.function.IntConsumer)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"openCvCamera"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"pauseViewport()"},{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"PipelineSubsystem(Camera)","u":"%3Cinit%3E(com.technototes.vision.hardware.Camera)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"resumeViewport()"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"setActiveCamera(String)","u":"setActiveCamera(java.lang.String)"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"setActiveCamera(Webcam)","u":"setActiveCamera(com.technototes.vision.hardware.Webcam)"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"setActiveCamera(WebcamName)","u":"setActiveCamera(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"setPipeline(OpenCvPipeline)","u":"setPipeline(org.openftc.easyopencv.OpenCvPipeline)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"setViewportRenderer(OpenCvCamera.ViewportRenderer)","u":"setViewportRenderer(org.openftc.easyopencv.OpenCvCamera.ViewportRenderer)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"setViewportRenderingPolicy(OpenCvCamera.ViewportRenderingPolicy)","u":"setViewportRenderingPolicy(org.openftc.easyopencv.OpenCvCamera.ViewportRenderingPolicy)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"showFpsMeterOnViewport(boolean)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"startRecordingPipeline(PipelineRecordingParameters)","u":"startRecordingPipeline(org.openftc.easyopencv.PipelineRecordingParameters)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"startStreaming(int, int)","u":"startStreaming(int,int)"},{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"startStreaming(int, int)","u":"startStreaming(int,int)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"startStreaming(int, int, OpenCvCameraRotation)","u":"startStreaming(int,int,org.openftc.easyopencv.OpenCvCameraRotation)"},{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"startStreaming(int, int, OpenCvCameraRotation)","u":"startStreaming(int,int,org.openftc.easyopencv.OpenCvCameraRotation)"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"stopRecordingPipeline()"},{"p":"com.technototes.vision.hardware","c":"Camera","l":"stopStreaming()"},{"p":"com.technototes.vision.subsystem","c":"PipelineSubsystem","l":"stopStreaming()"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"SwitchableWebcam(String...)","u":"%3Cinit%3E(java.lang.String...)"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"SwitchableWebcam(Webcam...)","u":"%3Cinit%3E(com.technototes.vision.hardware.Webcam...)"},{"p":"com.technototes.vision.hardware","c":"SwitchableWebcam","l":"SwitchableWebcam(WebcamName...)","u":"%3Cinit%3E(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName...)"},{"p":"com.technototes.vision.hardware","c":"Webcam","l":"Webcam(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"com.technototes.vision.hardware","c":"Webcam","l":"Webcam(WebcamName)","u":"%3Cinit%3E(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName)"}];updateSearchResults(); \ No newline at end of file +memberSearchIndex = [ + { p: 'com.technototes.vision.subsystem', c: 'PipelineSubsystem', l: 'camera' }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'Camera(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'Camera(U)', u: '%3Cinit%3E(U)' }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'closeCameraDevice()' }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'closeCameraDeviceAsync(OpenCvCamera.AsyncCameraCloseListener)', + u: 'closeCameraDeviceAsync(org.openftc.easyopencv.OpenCvCamera.AsyncCameraCloseListener)', + }, + { p: 'com.technototes.vision.hardware', c: 'InternalCamera', l: 'createCamera()' }, + { p: 'com.technototes.vision.hardware', c: 'SwitchableWebcam', l: 'createCamera()' }, + { p: 'com.technototes.vision.hardware', c: 'Webcam', l: 'createCamera()' }, + { p: 'com.technototes.vision.hardware', c: 'SwitchableWebcam', l: 'getActiveCamera()' }, + { p: 'com.technototes.vision.hardware', c: 'InternalCamera', l: 'getCameraDirection()' }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getCurrentPipelineMaxFps()' }, + { p: 'com.technototes.vision.subsystem', c: 'PipelineSubsystem', l: 'getDevice()' }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getFps()' }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'getFrameBitmap(Continuation>)', + u: 'getFrameBitmap(org.firstinspires.ftc.robotcore.external.function.Continuation)', + }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getFrameCount()' }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getOpenCvCamera()' }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getOverheadTimeMs()' }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getPipelineTimeMs()' }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'getTotalFrameTimeMs()' }, + { + p: 'com.technototes.vision.hardware', + c: 'InternalCamera', + l: 'InternalCamera()', + u: '%3Cinit%3E()', + }, + { + p: 'com.technototes.vision.hardware', + c: 'InternalCamera', + l: 'InternalCamera(OpenCvInternalCamera.CameraDirection)', + u: '%3Cinit%3E(org.openftc.easyopencv.OpenCvInternalCamera.CameraDirection)', + }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'openCameraDevice()' }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'openCameraDeviceAsync(OpenCvCamera.AsyncCameraOpenListener)', + u: 'openCameraDeviceAsync(org.openftc.easyopencv.OpenCvCamera.AsyncCameraOpenListener)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'openCameraDeviceAsync(Runnable)', + u: 'openCameraDeviceAsync(java.lang.Runnable)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'openCameraDeviceAsync(Runnable, IntConsumer)', + u: 'openCameraDeviceAsync(java.lang.Runnable,java.util.function.IntConsumer)', + }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'openCvCamera' }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'pauseViewport()' }, + { + p: 'com.technototes.vision.subsystem', + c: 'PipelineSubsystem', + l: 'PipelineSubsystem(Camera)', + u: '%3Cinit%3E(com.technototes.vision.hardware.Camera)', + }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'resumeViewport()' }, + { + p: 'com.technototes.vision.hardware', + c: 'SwitchableWebcam', + l: 'setActiveCamera(String)', + u: 'setActiveCamera(java.lang.String)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'SwitchableWebcam', + l: 'setActiveCamera(Webcam)', + u: 'setActiveCamera(com.technototes.vision.hardware.Webcam)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'SwitchableWebcam', + l: 'setActiveCamera(WebcamName)', + u: 'setActiveCamera(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'setPipeline(OpenCvPipeline)', + u: 'setPipeline(org.openftc.easyopencv.OpenCvPipeline)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'setViewportRenderer(OpenCvCamera.ViewportRenderer)', + u: 'setViewportRenderer(org.openftc.easyopencv.OpenCvCamera.ViewportRenderer)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'setViewportRenderingPolicy(OpenCvCamera.ViewportRenderingPolicy)', + u: 'setViewportRenderingPolicy(org.openftc.easyopencv.OpenCvCamera.ViewportRenderingPolicy)', + }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'showFpsMeterOnViewport(boolean)' }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'startRecordingPipeline(PipelineRecordingParameters)', + u: 'startRecordingPipeline(org.openftc.easyopencv.PipelineRecordingParameters)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'startStreaming(int, int)', + u: 'startStreaming(int,int)', + }, + { + p: 'com.technototes.vision.subsystem', + c: 'PipelineSubsystem', + l: 'startStreaming(int, int)', + u: 'startStreaming(int,int)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'Camera', + l: 'startStreaming(int, int, OpenCvCameraRotation)', + u: 'startStreaming(int,int,org.openftc.easyopencv.OpenCvCameraRotation)', + }, + { + p: 'com.technototes.vision.subsystem', + c: 'PipelineSubsystem', + l: 'startStreaming(int, int, OpenCvCameraRotation)', + u: 'startStreaming(int,int,org.openftc.easyopencv.OpenCvCameraRotation)', + }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'stopRecordingPipeline()' }, + { p: 'com.technototes.vision.hardware', c: 'Camera', l: 'stopStreaming()' }, + { p: 'com.technototes.vision.subsystem', c: 'PipelineSubsystem', l: 'stopStreaming()' }, + { + p: 'com.technototes.vision.hardware', + c: 'SwitchableWebcam', + l: 'SwitchableWebcam(String...)', + u: '%3Cinit%3E(java.lang.String...)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'SwitchableWebcam', + l: 'SwitchableWebcam(Webcam...)', + u: '%3Cinit%3E(com.technototes.vision.hardware.Webcam...)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'SwitchableWebcam', + l: 'SwitchableWebcam(WebcamName...)', + u: '%3Cinit%3E(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName...)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'Webcam', + l: 'Webcam(String)', + u: '%3Cinit%3E(java.lang.String)', + }, + { + p: 'com.technototes.vision.hardware', + c: 'Webcam', + l: 'Webcam(WebcamName)', + u: '%3Cinit%3E(org.firstinspires.ftc.robotcore.external.hardware.camera.WebcamName)', + }, +]; +updateSearchResults(); diff --git a/docs/Vision/module-search-index.js b/docs/Vision/module-search-index.js index 0d59754f..a6f96499 100644 --- a/docs/Vision/module-search-index.js +++ b/docs/Vision/module-search-index.js @@ -1 +1,2 @@ -moduleSearchIndex = [];updateSearchResults(); \ No newline at end of file +moduleSearchIndex = []; +updateSearchResults(); diff --git a/docs/Vision/overview-summary.html b/docs/Vision/overview-summary.html index 34041fef..dcf83320 100644 --- a/docs/Vision/overview-summary.html +++ b/docs/Vision/overview-summary.html @@ -1,25 +1,27 @@ - + - - -Vision API - - - - - - - - - - -
    - -

    index.html

    -
    - + + + Vision API + + + + + + + + + + +
    + +

    index.html

    +
    + diff --git a/docs/Vision/overview-tree.html b/docs/Vision/overview-tree.html index 7d279c47..e677c81b 100644 --- a/docs/Vision/overview-tree.html +++ b/docs/Vision/overview-tree.html @@ -1,83 +1,139 @@ - + - - -Class Hierarchy (Vision API) - - - - - - - - - - - - - - -
    - -
    -
    -
    -

    Hierarchy For All Packages

    -Package Hierarchies: - -
    -
    -

    Class Hierarchy

    -
      -
    • java.lang.Object -
        -
      • com.technototes.library.hardware.HardwareDevice<T> -
          -
        • com.technototes.vision.hardware.Camera<T,U> (implements org.openftc.easyopencv.OpenCvCamera) - -
        • -
        -
      • -
      • com.technototes.vision.subsystem.PipelineSubsystem (implements com.technototes.library.subsystem.Subsystem)
      • -
      -
    • -
    -
    -
    -
    -
    - + + + Class Hierarchy (Vision API) + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Hierarchy For All Packages

    + Package Hierarchies: + +
    +
    +

    Class Hierarchy

    +
      +
    • + java.lang.Object +
        +
      • + com.technototes.library.hardware.HardwareDevice<T> +
          +
        • + com.technototes.vision.hardware.Camera<T,U> (implements org.openftc.easyopencv.OpenCvCamera) + +
        • +
        +
      • +
      • + com.technototes.vision.subsystem.PipelineSubsystem + (implements com.technototes.library.subsystem.Subsystem) +
      • +
      +
    • +
    +
    +
    +
    +
    + diff --git a/docs/Vision/package-search-index.js b/docs/Vision/package-search-index.js index 8b461665..d142fd68 100644 --- a/docs/Vision/package-search-index.js +++ b/docs/Vision/package-search-index.js @@ -1 +1,6 @@ -packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"l":"com.technototes.vision.hardware"},{"l":"com.technototes.vision.subsystem"}];updateSearchResults(); \ No newline at end of file +packageSearchIndex = [ + { l: 'All Packages', u: 'allpackages-index.html' }, + { l: 'com.technototes.vision.hardware' }, + { l: 'com.technototes.vision.subsystem' }, +]; +updateSearchResults(); diff --git a/docs/Vision/script.js b/docs/Vision/script.js index 864989cf..a6efd285 100644 --- a/docs/Vision/script.js +++ b/docs/Vision/script.js @@ -29,104 +29,106 @@ var typeSearchIndex; var memberSearchIndex; var tagSearchIndex; function loadScripts(doc, tag) { - createElem(doc, tag, 'search.js'); + createElem(doc, tag, 'search.js'); - createElem(doc, tag, 'module-search-index.js'); - createElem(doc, tag, 'package-search-index.js'); - createElem(doc, tag, 'type-search-index.js'); - createElem(doc, tag, 'member-search-index.js'); - createElem(doc, tag, 'tag-search-index.js'); + createElem(doc, tag, 'module-search-index.js'); + createElem(doc, tag, 'package-search-index.js'); + createElem(doc, tag, 'type-search-index.js'); + createElem(doc, tag, 'member-search-index.js'); + createElem(doc, tag, 'tag-search-index.js'); } function createElem(doc, tag, path) { - var script = doc.createElement(tag); - var scriptElement = doc.getElementsByTagName(tag)[0]; - script.src = pathtoroot + path; - scriptElement.parentNode.insertBefore(script, scriptElement); + var script = doc.createElement(tag); + var scriptElement = doc.getElementsByTagName(tag)[0]; + script.src = pathtoroot + path; + scriptElement.parentNode.insertBefore(script, scriptElement); } function show(tableId, selected, columns) { - if (tableId !== selected) { - document.querySelectorAll('div.' + tableId + ':not(.' + selected + ')') - .forEach(function(elem) { - elem.style.display = 'none'; - }); - } - document.querySelectorAll('div.' + selected) - .forEach(function(elem, index) { - elem.style.display = ''; - var isEvenRow = index % (columns * 2) < columns; - elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); - elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); - }); - updateTabs(tableId, selected); + if (tableId !== selected) { + document + .querySelectorAll('div.' + tableId + ':not(.' + selected + ')') + .forEach(function (elem) { + elem.style.display = 'none'; + }); + } + document.querySelectorAll('div.' + selected).forEach(function (elem, index) { + elem.style.display = ''; + var isEvenRow = index % (columns * 2) < columns; + elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); + elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); + }); + updateTabs(tableId, selected); } function updateTabs(tableId, selected) { - document.querySelector('div#' + tableId +' .summary-table') - .setAttribute('aria-labelledby', selected); - document.querySelectorAll('button[id^="' + tableId + '"]') - .forEach(function(tab, index) { - if (selected === tab.id || (tableId === selected && index === 0)) { - tab.className = activeTableTab; - tab.setAttribute('aria-selected', true); - tab.setAttribute('tabindex',0); - } else { - tab.className = tableTab; - tab.setAttribute('aria-selected', false); - tab.setAttribute('tabindex',-1); - } - }); + document + .querySelector('div#' + tableId + ' .summary-table') + .setAttribute('aria-labelledby', selected); + document.querySelectorAll('button[id^="' + tableId + '"]').forEach(function (tab, index) { + if (selected === tab.id || (tableId === selected && index === 0)) { + tab.className = activeTableTab; + tab.setAttribute('aria-selected', true); + tab.setAttribute('tabindex', 0); + } else { + tab.className = tableTab; + tab.setAttribute('aria-selected', false); + tab.setAttribute('tabindex', -1); + } + }); } function switchTab(e) { - var selected = document.querySelector('[aria-selected=true]'); - if (selected) { - if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { - // left or up arrow key pressed: move focus to previous tab - selected.previousSibling.click(); - selected.previousSibling.focus(); - e.preventDefault(); - } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { - // right or down arrow key pressed: move focus to next tab - selected.nextSibling.click(); - selected.nextSibling.focus(); - e.preventDefault(); - } + var selected = document.querySelector('[aria-selected=true]'); + if (selected) { + if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { + // left or up arrow key pressed: move focus to previous tab + selected.previousSibling.click(); + selected.previousSibling.focus(); + e.preventDefault(); + } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { + // right or down arrow key pressed: move focus to next tab + selected.nextSibling.click(); + selected.nextSibling.focus(); + e.preventDefault(); } + } } -var updateSearchResults = function() {}; +var updateSearchResults = function () {}; function indexFilesLoaded() { - return moduleSearchIndex - && packageSearchIndex - && typeSearchIndex - && memberSearchIndex - && tagSearchIndex; + return ( + moduleSearchIndex && + packageSearchIndex && + typeSearchIndex && + memberSearchIndex && + tagSearchIndex + ); } // Workaround for scroll position not being included in browser history (8249133) -document.addEventListener("DOMContentLoaded", function(e) { - var contentDiv = document.querySelector("div.flex-content"); - window.addEventListener("popstate", function(e) { - if (e.state !== null) { - contentDiv.scrollTop = e.state; - } - }); - window.addEventListener("hashchange", function(e) { - history.replaceState(contentDiv.scrollTop, document.title); - }); - contentDiv.addEventListener("scroll", function(e) { - var timeoutID; - if (!timeoutID) { - timeoutID = setTimeout(function() { - history.replaceState(contentDiv.scrollTop, document.title); - timeoutID = null; - }, 100); - } - }); - if (!location.hash) { +document.addEventListener('DOMContentLoaded', function (e) { + var contentDiv = document.querySelector('div.flex-content'); + window.addEventListener('popstate', function (e) { + if (e.state !== null) { + contentDiv.scrollTop = e.state; + } + }); + window.addEventListener('hashchange', function (e) { + history.replaceState(contentDiv.scrollTop, document.title); + }); + contentDiv.addEventListener('scroll', function (e) { + var timeoutID; + if (!timeoutID) { + timeoutID = setTimeout(function () { history.replaceState(contentDiv.scrollTop, document.title); + timeoutID = null; + }, 100); } + }); + if (!location.hash) { + history.replaceState(contentDiv.scrollTop, document.title); + } }); diff --git a/docs/Vision/search.js b/docs/Vision/search.js index db3b2f4a..3ba91721 100644 --- a/docs/Vision/search.js +++ b/docs/Vision/search.js @@ -23,332 +23,354 @@ * questions. */ -var noResult = {l: "No results found"}; -var loading = {l: "Loading search index..."}; -var catModules = "Modules"; -var catPackages = "Packages"; -var catTypes = "Classes and Interfaces"; -var catMembers = "Members"; -var catSearchTags = "Search Tags"; -var highlight = "$&"; -var searchPattern = ""; -var fallbackPattern = ""; +var noResult = { l: 'No results found' }; +var loading = { l: 'Loading search index...' }; +var catModules = 'Modules'; +var catPackages = 'Packages'; +var catTypes = 'Classes and Interfaces'; +var catMembers = 'Members'; +var catSearchTags = 'Search Tags'; +var highlight = '$&'; +var searchPattern = ''; +var fallbackPattern = ''; var RANKING_THRESHOLD = 2; var NO_MATCH = 0xffff; var MIN_RESULTS = 3; var MAX_RESULTS = 500; -var UNNAMED = ""; +var UNNAMED = ''; function escapeHtml(str) { - return str.replace(//g, ">"); + return str.replace(//g, '>'); } function getHighlightedText(item, matcher, fallbackMatcher) { - var escapedItem = escapeHtml(item); - var highlighted = escapedItem.replace(matcher, highlight); - if (highlighted === escapedItem) { - highlighted = escapedItem.replace(fallbackMatcher, highlight) - } - return highlighted; + var escapedItem = escapeHtml(item); + var highlighted = escapedItem.replace(matcher, highlight); + if (highlighted === escapedItem) { + highlighted = escapedItem.replace(fallbackMatcher, highlight); + } + return highlighted; } function getURLPrefix(ui) { - var urlPrefix=""; - var slash = "/"; - if (ui.item.category === catModules) { - return ui.item.l + slash; - } else if (ui.item.category === catPackages && ui.item.m) { - return ui.item.m + slash; - } else if (ui.item.category === catTypes || ui.item.category === catMembers) { - if (ui.item.m) { - urlPrefix = ui.item.m + slash; - } else { - $.each(packageSearchIndex, function(index, item) { - if (item.m && ui.item.p === item.l) { - urlPrefix = item.m + slash; - } - }); + var urlPrefix = ''; + var slash = '/'; + if (ui.item.category === catModules) { + return ui.item.l + slash; + } else if (ui.item.category === catPackages && ui.item.m) { + return ui.item.m + slash; + } else if (ui.item.category === catTypes || ui.item.category === catMembers) { + if (ui.item.m) { + urlPrefix = ui.item.m + slash; + } else { + $.each(packageSearchIndex, function (index, item) { + if (item.m && ui.item.p === item.l) { + urlPrefix = item.m + slash; } + }); } - return urlPrefix; + } + return urlPrefix; } function createSearchPattern(term) { - var pattern = ""; - var isWordToken = false; - term.replace(/,\s*/g, ", ").trim().split(/\s+/).forEach(function(w, index) { - if (index > 0) { - // whitespace between identifiers is significant - pattern += (isWordToken && /^\w/.test(w)) ? "\\s+" : "\\s*"; + var pattern = ''; + var isWordToken = false; + term + .replace(/,\s*/g, ', ') + .trim() + .split(/\s+/) + .forEach(function (w, index) { + if (index > 0) { + // whitespace between identifiers is significant + pattern += isWordToken && /^\w/.test(w) ? '\\s+' : '\\s*'; + } + var tokens = w.split(/(?=[A-Z,.()<>[\/])/); + for (var i = 0; i < tokens.length; i++) { + var s = tokens[i]; + if (s === '') { + continue; } - var tokens = w.split(/(?=[A-Z,.()<>[\/])/); - for (var i = 0; i < tokens.length; i++) { - var s = tokens[i]; - if (s === "") { - continue; - } - pattern += $.ui.autocomplete.escapeRegex(s); - isWordToken = /\w$/.test(s); - if (isWordToken) { - pattern += "([a-z0-9_$<>\\[\\]]*?)"; - } + pattern += $.ui.autocomplete.escapeRegex(s); + isWordToken = /\w$/.test(s); + if (isWordToken) { + pattern += '([a-z0-9_$<>\\[\\]]*?)'; } + } }); - return pattern; + return pattern; } function createMatcher(pattern, flags) { - var isCamelCase = /[A-Z]/.test(pattern); - return new RegExp(pattern, flags + (isCamelCase ? "" : "i")); + var isCamelCase = /[A-Z]/.test(pattern); + return new RegExp(pattern, flags + (isCamelCase ? '' : 'i')); } var watermark = 'Search'; -$(function() { - var search = $("#search-input"); - var reset = $("#reset-button"); - search.val(''); - search.prop("disabled", false); - reset.prop("disabled", false); - search.val(watermark).addClass('watermark'); - search.blur(function() { - if ($(this).val().length === 0) { - $(this).val(watermark).addClass('watermark'); - } - }); - search.on('click keydown paste', function() { - if ($(this).val() === watermark) { - $(this).val('').removeClass('watermark'); - } - }); - reset.click(function() { - search.val('').focus(); - }); - search.focus()[0].setSelectionRange(0, 0); -}); -$.widget("custom.catcomplete", $.ui.autocomplete, { - _create: function() { - this._super(); - this.widget().menu("option", "items", "> :not(.ui-autocomplete-category)"); - }, - _renderMenu: function(ul, items) { - var rMenu = this; - var currentCategory = ""; - rMenu.menu.bindings = $(); - $.each(items, function(index, item) { - var li; - if (item.category && item.category !== currentCategory) { - ul.append("
  • " + item.category + "
  • "); - currentCategory = item.category; - } - li = rMenu._renderItemData(ul, item); - if (item.category) { - li.attr("aria-label", item.category + " : " + item.l); - li.attr("class", "result-item"); - } else { - li.attr("aria-label", item.l); - li.attr("class", "result-item"); - } - }); - }, - _renderItem: function(ul, item) { - var label = ""; - var matcher = createMatcher(escapeHtml(searchPattern), "g"); - var fallbackMatcher = new RegExp(fallbackPattern, "gi") - if (item.category === catModules) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catPackages) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catTypes) { - label = (item.p && item.p !== UNNAMED) - ? getHighlightedText(item.p + "." + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.l, matcher, fallbackMatcher); - } else if (item.category === catMembers) { - label = (item.p && item.p !== UNNAMED) - ? getHighlightedText(item.p + "." + item.c + "." + item.l, matcher, fallbackMatcher) - : getHighlightedText(item.c + "." + item.l, matcher, fallbackMatcher); - } else if (item.category === catSearchTags) { - label = getHighlightedText(item.l, matcher, fallbackMatcher); - } else { - label = item.l; - } - var li = $("
  • ").appendTo(ul); - var div = $("
    ").appendTo(li); - if (item.category === catSearchTags && item.h) { - if (item.d) { - div.html(label + " (" + item.h + ")
    " - + item.d + "
    "); - } else { - div.html(label + " (" + item.h + ")"); - } - } else { - if (item.m) { - div.html(item.m + "/" + label); - } else { - div.html(label); - } - } - return li; +$(function () { + var search = $('#search-input'); + var reset = $('#reset-button'); + search.val(''); + search.prop('disabled', false); + reset.prop('disabled', false); + search.val(watermark).addClass('watermark'); + search.blur(function () { + if ($(this).val().length === 0) { + $(this).val(watermark).addClass('watermark'); } -}); -function rankMatch(match, category) { - if (!match) { - return NO_MATCH; - } - var index = match.index; - var input = match.input; - var leftBoundaryMatch = 2; - var periferalMatch = 0; - // make sure match is anchored on a left word boundary - if (index === 0 || /\W/.test(input[index - 1]) || "_" === input[index]) { - leftBoundaryMatch = 0; - } else if ("_" === input[index - 1] || (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input))) { - leftBoundaryMatch = 1; + }); + search.on('click keydown paste', function () { + if ($(this).val() === watermark) { + $(this).val('').removeClass('watermark'); } - var matchEnd = index + match[0].length; - var leftParen = input.indexOf("("); - var endOfName = leftParen > -1 ? leftParen : input.length; - // exclude peripheral matches - if (category !== catModules && category !== catSearchTags) { - var delim = category === catPackages ? "/" : "."; - if (leftParen > -1 && leftParen < index) { - periferalMatch += 2; - } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { - periferalMatch += 2; - } + }); + reset.click(function () { + search.val('').focus(); + }); + search.focus()[0].setSelectionRange(0, 0); +}); +$.widget('custom.catcomplete', $.ui.autocomplete, { + _create: function () { + this._super(); + this.widget().menu('option', 'items', '> :not(.ui-autocomplete-category)'); + }, + _renderMenu: function (ul, items) { + var rMenu = this; + var currentCategory = ''; + rMenu.menu.bindings = $(); + $.each(items, function (index, item) { + var li; + if (item.category && item.category !== currentCategory) { + ul.append('
  • ' + item.category + '
  • '); + currentCategory = item.category; + } + li = rMenu._renderItemData(ul, item); + if (item.category) { + li.attr('aria-label', item.category + ' : ' + item.l); + li.attr('class', 'result-item'); + } else { + li.attr('aria-label', item.l); + li.attr('class', 'result-item'); + } + }); + }, + _renderItem: function (ul, item) { + var label = ''; + var matcher = createMatcher(escapeHtml(searchPattern), 'g'); + var fallbackMatcher = new RegExp(fallbackPattern, 'gi'); + if (item.category === catModules) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catPackages) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catTypes) { + label = + item.p && item.p !== UNNAMED + ? getHighlightedText(item.p + '.' + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catMembers) { + label = + item.p && item.p !== UNNAMED + ? getHighlightedText(item.p + '.' + item.c + '.' + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.c + '.' + item.l, matcher, fallbackMatcher); + } else if (item.category === catSearchTags) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else { + label = item.l; } - var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match - for (var i = 1; i < match.length; i++) { - // lower ranking if parts of the name are missing - if (match[i]) - delta += match[i].length; + var li = $('
  • ').appendTo(ul); + var div = $('
    ').appendTo(li); + if (item.category === catSearchTags && item.h) { + if (item.d) { + div.html( + label + + ' (' + + item.h + + ')
    ' + + item.d + + '
    ', + ); + } else { + div.html(label + ' (' + item.h + ')'); + } + } else { + if (item.m) { + div.html(item.m + '/' + label); + } else { + div.html(label); + } } - if (category === catTypes) { - // lower ranking if a type name contains unmatched camel-case parts - if (/[A-Z]/.test(input.substring(matchEnd))) - delta += 5; - if (/[A-Z]/.test(input.substring(0, index))) - delta += 5; + return li; + }, +}); +function rankMatch(match, category) { + if (!match) { + return NO_MATCH; + } + var index = match.index; + var input = match.input; + var leftBoundaryMatch = 2; + var periferalMatch = 0; + // make sure match is anchored on a left word boundary + if (index === 0 || /\W/.test(input[index - 1]) || '_' === input[index]) { + leftBoundaryMatch = 0; + } else if ( + '_' === input[index - 1] || + (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input)) + ) { + leftBoundaryMatch = 1; + } + var matchEnd = index + match[0].length; + var leftParen = input.indexOf('('); + var endOfName = leftParen > -1 ? leftParen : input.length; + // exclude peripheral matches + if (category !== catModules && category !== catSearchTags) { + var delim = category === catPackages ? '/' : '.'; + if (leftParen > -1 && leftParen < index) { + periferalMatch += 2; + } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { + periferalMatch += 2; } - return leftBoundaryMatch + periferalMatch + (delta / 200); - + } + var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match + for (var i = 1; i < match.length; i++) { + // lower ranking if parts of the name are missing + if (match[i]) delta += match[i].length; + } + if (category === catTypes) { + // lower ranking if a type name contains unmatched camel-case parts + if (/[A-Z]/.test(input.substring(matchEnd))) delta += 5; + if (/[A-Z]/.test(input.substring(0, index))) delta += 5; + } + return leftBoundaryMatch + periferalMatch + delta / 200; } function doSearch(request, response) { - var result = []; - searchPattern = createSearchPattern(request.term); - fallbackPattern = createSearchPattern(request.term.toLowerCase()); - if (searchPattern === "") { - return this.close(); - } - var camelCaseMatcher = createMatcher(searchPattern, ""); - var fallbackMatcher = new RegExp(fallbackPattern, "i"); + var result = []; + searchPattern = createSearchPattern(request.term); + fallbackPattern = createSearchPattern(request.term.toLowerCase()); + if (searchPattern === '') { + return this.close(); + } + var camelCaseMatcher = createMatcher(searchPattern, ''); + var fallbackMatcher = new RegExp(fallbackPattern, 'i'); - function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { - if (indexArray) { - var newResults = []; - $.each(indexArray, function (i, item) { - item.category = category; - var ranking = rankMatch(matcher.exec(nameFunc(item)), category); - if (ranking < RANKING_THRESHOLD) { - newResults.push({ranking: ranking, item: item}); - } - return newResults.length <= MAX_RESULTS; - }); - return newResults.sort(function(e1, e2) { - return e1.ranking - e2.ranking; - }).map(function(e) { - return e.item; - }); + function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { + if (indexArray) { + var newResults = []; + $.each(indexArray, function (i, item) { + item.category = category; + var ranking = rankMatch(matcher.exec(nameFunc(item)), category); + if (ranking < RANKING_THRESHOLD) { + newResults.push({ ranking: ranking, item: item }); } - return []; + return newResults.length <= MAX_RESULTS; + }); + return newResults + .sort(function (e1, e2) { + return e1.ranking - e2.ranking; + }) + .map(function (e) { + return e.item; + }); } - function searchIndex(indexArray, category, nameFunc) { - var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); - result = result.concat(primaryResults); - if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { - var secondaryResults = searchIndexWithMatcher(indexArray, fallbackMatcher, category, nameFunc); - result = result.concat(secondaryResults.filter(function (item) { - return primaryResults.indexOf(item) === -1; - })); - } + return []; + } + function searchIndex(indexArray, category, nameFunc) { + var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); + result = result.concat(primaryResults); + if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { + var secondaryResults = searchIndexWithMatcher( + indexArray, + fallbackMatcher, + category, + nameFunc, + ); + result = result.concat( + secondaryResults.filter(function (item) { + return primaryResults.indexOf(item) === -1; + }), + ); } + } - searchIndex(moduleSearchIndex, catModules, function(item) { return item.l; }); - searchIndex(packageSearchIndex, catPackages, function(item) { - return (item.m && request.term.indexOf("/") > -1) - ? (item.m + "/" + item.l) : item.l; - }); - searchIndex(typeSearchIndex, catTypes, function(item) { - return request.term.indexOf(".") > -1 ? item.p + "." + item.l : item.l; - }); - searchIndex(memberSearchIndex, catMembers, function(item) { - return request.term.indexOf(".") > -1 - ? item.p + "." + item.c + "." + item.l : item.l; - }); - searchIndex(tagSearchIndex, catSearchTags, function(item) { return item.l; }); + searchIndex(moduleSearchIndex, catModules, function (item) { + return item.l; + }); + searchIndex(packageSearchIndex, catPackages, function (item) { + return item.m && request.term.indexOf('/') > -1 ? item.m + '/' + item.l : item.l; + }); + searchIndex(typeSearchIndex, catTypes, function (item) { + return request.term.indexOf('.') > -1 ? item.p + '.' + item.l : item.l; + }); + searchIndex(memberSearchIndex, catMembers, function (item) { + return request.term.indexOf('.') > -1 ? item.p + '.' + item.c + '.' + item.l : item.l; + }); + searchIndex(tagSearchIndex, catSearchTags, function (item) { + return item.l; + }); - if (!indexFilesLoaded()) { - updateSearchResults = function() { - doSearch(request, response); - } - result.unshift(loading); - } else { - updateSearchResults = function() {}; - } - response(result); + if (!indexFilesLoaded()) { + updateSearchResults = function () { + doSearch(request, response); + }; + result.unshift(loading); + } else { + updateSearchResults = function () {}; + } + response(result); } -$(function() { - $("#search-input").catcomplete({ - minLength: 1, - delay: 300, - source: doSearch, - response: function(event, ui) { - if (!ui.content.length) { - ui.content.push(noResult); - } else { - $("#search-input").empty(); - } - }, - autoFocus: true, - focus: function(event, ui) { - return false; - }, - position: { - collision: "flip" - }, - select: function(event, ui) { - if (ui.item.category) { - var url = getURLPrefix(ui); - if (ui.item.category === catModules) { - url += "module-summary.html"; - } else if (ui.item.category === catPackages) { - if (ui.item.u) { - url = ui.item.u; - } else { - url += ui.item.l.replace(/\./g, '/') + "/package-summary.html"; - } - } else if (ui.item.category === catTypes) { - if (ui.item.u) { - url = ui.item.u; - } else if (ui.item.p === UNNAMED) { - url += ui.item.l + ".html"; - } else { - url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.l + ".html"; - } - } else if (ui.item.category === catMembers) { - if (ui.item.p === UNNAMED) { - url += ui.item.c + ".html" + "#"; - } else { - url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.c + ".html" + "#"; - } - if (ui.item.u) { - url += ui.item.u; - } else { - url += ui.item.l; - } - } else if (ui.item.category === catSearchTags) { - url += ui.item.u; - } - if (top !== window) { - parent.classFrame.location = pathtoroot + url; - } else { - window.location.href = pathtoroot + url; - } - $("#search-input").focus(); - } +$(function () { + $('#search-input').catcomplete({ + minLength: 1, + delay: 300, + source: doSearch, + response: function (event, ui) { + if (!ui.content.length) { + ui.content.push(noResult); + } else { + $('#search-input').empty(); + } + }, + autoFocus: true, + focus: function (event, ui) { + return false; + }, + position: { + collision: 'flip', + }, + select: function (event, ui) { + if (ui.item.category) { + var url = getURLPrefix(ui); + if (ui.item.category === catModules) { + url += 'module-summary.html'; + } else if (ui.item.category === catPackages) { + if (ui.item.u) { + url = ui.item.u; + } else { + url += ui.item.l.replace(/\./g, '/') + '/package-summary.html'; + } + } else if (ui.item.category === catTypes) { + if (ui.item.u) { + url = ui.item.u; + } else if (ui.item.p === UNNAMED) { + url += ui.item.l + '.html'; + } else { + url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.l + '.html'; + } + } else if (ui.item.category === catMembers) { + if (ui.item.p === UNNAMED) { + url += ui.item.c + '.html' + '#'; + } else { + url += ui.item.p.replace(/\./g, '/') + '/' + ui.item.c + '.html' + '#'; + } + if (ui.item.u) { + url += ui.item.u; + } else { + url += ui.item.l; + } + } else if (ui.item.category === catSearchTags) { + url += ui.item.u; } - }); + if (top !== window) { + parent.classFrame.location = pathtoroot + url; + } else { + window.location.href = pathtoroot + url; + } + $('#search-input').focus(); + } + }, + }); }); diff --git a/docs/Vision/stylesheet.css b/docs/Vision/stylesheet.css index 4a576bd2..236a306f 100644 --- a/docs/Vision/stylesheet.css +++ b/docs/Vision/stylesheet.css @@ -12,86 +12,89 @@ */ body { - background-color:#ffffff; - color:#353833; - font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size:14px; - margin:0; - padding:0; - height:100%; - width:100%; + background-color: #ffffff; + color: #353833; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 14px; + margin: 0; + padding: 0; + height: 100%; + width: 100%; } iframe { - margin:0; - padding:0; - height:100%; - width:100%; - overflow-y:scroll; - border:none; -} -a:link, a:visited { - text-decoration:none; - color:#4A6782; -} -a[href]:hover, a[href]:focus { - text-decoration:none; - color:#bb7a2a; + margin: 0; + padding: 0; + height: 100%; + width: 100%; + overflow-y: scroll; + border: none; +} +a:link, +a:visited { + text-decoration: none; + color: #4a6782; +} +a[href]:hover, +a[href]:focus { + text-decoration: none; + color: #bb7a2a; } a[name] { - color:#353833; + color: #353833; } pre { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; } h1 { - font-size:20px; + font-size: 20px; } h2 { - font-size:18px; + font-size: 18px; } h3 { - font-size:16px; + font-size: 16px; } h4 { - font-size:15px; + font-size: 15px; } h5 { - font-size:14px; + font-size: 14px; } h6 { - font-size:13px; + font-size: 13px; } ul { - list-style-type:disc; + list-style-type: disc; } -code, tt { - font-family:'DejaVu Sans Mono', monospace; +code, +tt { + font-family: 'DejaVu Sans Mono', monospace; } :not(h1, h2, h3, h4, h5, h6) > code, :not(h1, h2, h3, h4, h5, h6) > tt { - font-size:14px; - padding-top:4px; - margin-top:8px; - line-height:1.4em; + font-size: 14px; + padding-top: 4px; + margin-top: 8px; + line-height: 1.4em; } dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - padding-top:4px; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; + padding-top: 4px; } .summary-table dt code { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - vertical-align:top; - padding-top:4px; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; + vertical-align: top; + padding-top: 4px; } sup { - font-size:8px; + font-size: 8px; } button { - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size: 14px; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 14px; } /* * Styles for HTML generated by javadoc. @@ -103,596 +106,654 @@ button { * Styles for document title and copyright. */ .clear { - clear:both; - height:0; - overflow:hidden; + clear: both; + height: 0; + overflow: hidden; } .about-language { - float:right; - padding:0 21px 8px 8px; - font-size:11px; - margin-top:-9px; - height:2.9em; + float: right; + padding: 0 21px 8px 8px; + font-size: 11px; + margin-top: -9px; + height: 2.9em; } .legal-copy { - margin-left:.5em; + margin-left: 0.5em; } .tab { - background-color:#0066FF; - color:#ffffff; - padding:8px; - width:5em; - font-weight:bold; + background-color: #0066ff; + color: #ffffff; + padding: 8px; + width: 5em; + font-weight: bold; } /* * Styles for navigation bar. */ @media screen { - .flex-box { - position:fixed; - display:flex; - flex-direction:column; - height: 100%; - width: 100%; - } - .flex-header { - flex: 0 0 auto; - } - .flex-content { - flex: 1 1 auto; - overflow-y: auto; - } + .flex-box { + position: fixed; + display: flex; + flex-direction: column; + height: 100%; + width: 100%; + } + .flex-header { + flex: 0 0 auto; + } + .flex-content { + flex: 1 1 auto; + overflow-y: auto; + } } .top-nav { - background-color:#4D7A97; - color:#FFFFFF; - float:left; - padding:0; - width:100%; - clear:right; - min-height:2.8em; - padding-top:10px; - overflow:hidden; - font-size:12px; + background-color: #4d7a97; + color: #ffffff; + float: left; + padding: 0; + width: 100%; + clear: right; + min-height: 2.8em; + padding-top: 10px; + overflow: hidden; + font-size: 12px; } .sub-nav { - background-color:#dee3e9; - float:left; - width:100%; - overflow:hidden; - font-size:12px; + background-color: #dee3e9; + float: left; + width: 100%; + overflow: hidden; + font-size: 12px; } .sub-nav div { - clear:left; - float:left; - padding:0 0 5px 6px; - text-transform:uppercase; + clear: left; + float: left; + padding: 0 0 5px 6px; + text-transform: uppercase; } .sub-nav .nav-list { - padding-top:5px; + padding-top: 5px; } ul.nav-list { - display:block; - margin:0 25px 0 0; - padding:0; + display: block; + margin: 0 25px 0 0; + padding: 0; } ul.sub-nav-list { - float:left; - margin:0 25px 0 0; - padding:0; + float: left; + margin: 0 25px 0 0; + padding: 0; } ul.nav-list li { - list-style:none; - float:left; - padding: 5px 6px; - text-transform:uppercase; + list-style: none; + float: left; + padding: 5px 6px; + text-transform: uppercase; } .sub-nav .nav-list-search { - float:right; - margin:0 0 0 0; - padding:5px 6px; - clear:none; + float: right; + margin: 0 0 0 0; + padding: 5px 6px; + clear: none; } .nav-list-search label { - position:relative; - right:-16px; + position: relative; + right: -16px; } ul.sub-nav-list li { - list-style:none; - float:left; - padding-top:10px; + list-style: none; + float: left; + padding-top: 10px; } -.top-nav a:link, .top-nav a:active, .top-nav a:visited { - color:#FFFFFF; - text-decoration:none; - text-transform:uppercase; +.top-nav a:link, +.top-nav a:active, +.top-nav a:visited { + color: #ffffff; + text-decoration: none; + text-transform: uppercase; } .top-nav a:hover { - text-decoration:none; - color:#bb7a2a; - text-transform:uppercase; + text-decoration: none; + color: #bb7a2a; + text-transform: uppercase; } .nav-bar-cell1-rev { - background-color:#F8981D; - color:#253441; - margin: auto 5px; + background-color: #f8981d; + color: #253441; + margin: auto 5px; } .skip-nav { - position:absolute; - top:auto; - left:-9999px; - overflow:hidden; + position: absolute; + top: auto; + left: -9999px; + overflow: hidden; } /* * Hide navigation links and search box in print layout */ @media print { - ul.nav-list, div.sub-nav { - display:none; - } + ul.nav-list, + div.sub-nav { + display: none; + } } /* * Styles for page header and footer. */ .title { - color:#2c4557; - margin:10px 0; + color: #2c4557; + margin: 10px 0; } .sub-title { - margin:5px 0 0 0; + margin: 5px 0 0 0; } .header ul { - margin:0 0 15px 0; - padding:0; + margin: 0 0 15px 0; + padding: 0; } -.header ul li, .footer ul li { - list-style:none; - font-size:13px; +.header ul li, +.footer ul li { + list-style: none; + font-size: 13px; } /* * Styles for headings. */ body.class-declaration-page .summary h2, body.class-declaration-page .details h2, -body.class-use-page h2, -body.module-declaration-page .block-list h2 { - font-style: italic; - padding:0; - margin:15px 0; +body.class-use-page h2, +body.module-declaration-page .block-list h2 { + font-style: italic; + padding: 0; + margin: 15px 0; } body.class-declaration-page .summary h3, body.class-declaration-page .details h3, body.class-declaration-page .summary .inherited-list h2 { - background-color:#dee3e9; - border:1px solid #d0d9e0; - margin:0 0 6px -8px; - padding:7px 5px; + background-color: #dee3e9; + border: 1px solid #d0d9e0; + margin: 0 0 6px -8px; + padding: 7px 5px; } /* * Styles for page layout containers. */ main { - clear:both; - padding:10px 20px; - position:relative; + clear: both; + padding: 10px 20px; + position: relative; } dl.notes > dt { - font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; - font-size:12px; - font-weight:bold; - margin:10px 0 0 0; - color:#4E4E4E; + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 12px; + font-weight: bold; + margin: 10px 0 0 0; + color: #4e4e4e; } dl.notes > dd { - margin:5px 10px 10px 0; - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + margin: 5px 10px 10px 0; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; } dl.name-value > dt { - margin-left:1px; - font-size:1.1em; - display:inline; - font-weight:bold; + margin-left: 1px; + font-size: 1.1em; + display: inline; + font-weight: bold; } dl.name-value > dd { - margin:0 0 0 1px; - font-size:1.1em; - display:inline; + margin: 0 0 0 1px; + font-size: 1.1em; + display: inline; } /* * Styles for lists. */ li.circle { - list-style:circle; + list-style: circle; } ul.horizontal li { - display:inline; - font-size:0.9em; + display: inline; + font-size: 0.9em; } div.inheritance { - margin:0; - padding:0; + margin: 0; + padding: 0; } div.inheritance div.inheritance { - margin-left:2em; + margin-left: 2em; } ul.block-list, ul.details-list, ul.member-list, ul.summary-list { - margin:10px 0 10px 0; - padding:0; + margin: 10px 0 10px 0; + padding: 0; } ul.block-list > li, ul.details-list > li, ul.member-list > li, ul.summary-list > li { - list-style:none; - margin-bottom:15px; - line-height:1.4; + list-style: none; + margin-bottom: 15px; + line-height: 1.4; } -.summary-table dl, .summary-table dl dt, .summary-table dl dd { - margin-top:0; - margin-bottom:1px; +.summary-table dl, +.summary-table dl dt, +.summary-table dl dd { + margin-top: 0; + margin-bottom: 1px; } -ul.see-list, ul.see-list-long { - padding-left: 0; - list-style: none; +ul.see-list, +ul.see-list-long { + padding-left: 0; + list-style: none; } ul.see-list li { - display: inline; + display: inline; } ul.see-list li:not(:last-child):after, ul.see-list-long li:not(:last-child):after { - content: ", "; - white-space: pre-wrap; + content: ', '; + white-space: pre-wrap; } /* * Styles for tables. */ -.summary-table, .details-table { - width:100%; - border-spacing:0; - border-left:1px solid #EEE; - border-right:1px solid #EEE; - border-bottom:1px solid #EEE; - padding:0; +.summary-table, +.details-table { + width: 100%; + border-spacing: 0; + border-left: 1px solid #eee; + border-right: 1px solid #eee; + border-bottom: 1px solid #eee; + padding: 0; } .caption { - position:relative; - text-align:left; - background-repeat:no-repeat; - color:#253441; - font-weight:bold; - clear:none; - overflow:hidden; - padding:0; - padding-top:10px; - padding-left:1px; - margin:0; - white-space:pre; -} -.caption a:link, .caption a:visited { - color:#1f389c; + position: relative; + text-align: left; + background-repeat: no-repeat; + color: #253441; + font-weight: bold; + clear: none; + overflow: hidden; + padding: 0; + padding-top: 10px; + padding-left: 1px; + margin: 0; + white-space: pre; +} +.caption a:link, +.caption a:visited { + color: #1f389c; } .caption a:hover, .caption a:active { - color:#FFFFFF; + color: #ffffff; } .caption span { - white-space:nowrap; - padding-top:5px; - padding-left:12px; - padding-right:12px; - padding-bottom:7px; - display:inline-block; - float:left; - background-color:#F8981D; - border: none; - height:16px; + white-space: nowrap; + padding-top: 5px; + padding-left: 12px; + padding-right: 12px; + padding-bottom: 7px; + display: inline-block; + float: left; + background-color: #f8981d; + border: none; + height: 16px; } div.table-tabs { - padding:10px 0 0 1px; - margin:0; + padding: 10px 0 0 1px; + margin: 0; } div.table-tabs > button { - border: none; - cursor: pointer; - padding: 5px 12px 7px 12px; - font-weight: bold; - margin-right: 3px; + border: none; + cursor: pointer; + padding: 5px 12px 7px 12px; + font-weight: bold; + margin-right: 3px; } div.table-tabs > button.active-table-tab { - background: #F8981D; - color: #253441; + background: #f8981d; + color: #253441; } div.table-tabs > button.table-tab { - background: #4D7A97; - color: #FFFFFF; + background: #4d7a97; + color: #ffffff; } .two-column-summary { - display: grid; - grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); } .three-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); } .four-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax(10%, auto); + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax( + 10%, + auto + ); } @media screen and (max-width: 600px) { - .two-column-summary { - display: grid; - grid-template-columns: 1fr; - } + .two-column-summary { + display: grid; + grid-template-columns: 1fr; + } } @media screen and (max-width: 800px) { - .three-column-summary { - display: grid; - grid-template-columns: minmax(10%, max-content) minmax(25%, auto); - } - .three-column-summary .col-last { - grid-column-end: span 2; - } + .three-column-summary { + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(25%, auto); + } + .three-column-summary .col-last { + grid-column-end: span 2; + } } @media screen and (max-width: 1000px) { - .four-column-summary { - display: grid; - grid-template-columns: minmax(15%, max-content) minmax(15%, auto); - } -} -.summary-table > div, .details-table > div { - text-align:left; - padding: 8px 3px 3px 7px; -} -.col-first, .col-second, .col-last, .col-constructor-name, .col-summary-item-name { - vertical-align:top; - padding-right:0; - padding-top:8px; - padding-bottom:3px; + .four-column-summary { + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + } +} +.summary-table > div, +.details-table > div { + text-align: left; + padding: 8px 3px 3px 7px; +} +.col-first, +.col-second, +.col-last, +.col-constructor-name, +.col-summary-item-name { + vertical-align: top; + padding-right: 0; + padding-top: 8px; + padding-bottom: 3px; } .table-header { - background:#dee3e9; - font-weight: bold; -} -.col-first, .col-first { - font-size:13px; -} -.col-second, .col-second, .col-last, .col-constructor-name, .col-summary-item-name, .col-last { - font-size:13px; + background: #dee3e9; + font-weight: bold; +} +.col-first, +.col-first { + font-size: 13px; +} +.col-second, +.col-second, +.col-last, +.col-constructor-name, +.col-summary-item-name, +.col-last { + font-size: 13px; } -.col-first, .col-second, .col-constructor-name { - vertical-align:top; - overflow: auto; +.col-first, +.col-second, +.col-constructor-name { + vertical-align: top; + overflow: auto; } .col-last { - white-space:normal; -} -.col-first a:link, .col-first a:visited, -.col-second a:link, .col-second a:visited, -.col-first a:link, .col-first a:visited, -.col-second a:link, .col-second a:visited, -.col-constructor-name a:link, .col-constructor-name a:visited, -.col-summary-item-name a:link, .col-summary-item-name a:visited, -.constant-values-container a:link, .constant-values-container a:visited, -.all-classes-container a:link, .all-classes-container a:visited, -.all-packages-container a:link, .all-packages-container a:visited { - font-weight:bold; + white-space: normal; +} +.col-first a:link, +.col-first a:visited, +.col-second a:link, +.col-second a:visited, +.col-first a:link, +.col-first a:visited, +.col-second a:link, +.col-second a:visited, +.col-constructor-name a:link, +.col-constructor-name a:visited, +.col-summary-item-name a:link, +.col-summary-item-name a:visited, +.constant-values-container a:link, +.constant-values-container a:visited, +.all-classes-container a:link, +.all-classes-container a:visited, +.all-packages-container a:link, +.all-packages-container a:visited { + font-weight: bold; } .table-sub-heading-color { - background-color:#EEEEFF; + background-color: #eeeeff; } -.even-row-color, .even-row-color .table-header { - background-color:#FFFFFF; +.even-row-color, +.even-row-color .table-header { + background-color: #ffffff; } -.odd-row-color, .odd-row-color .table-header { - background-color:#EEEEEF; +.odd-row-color, +.odd-row-color .table-header { + background-color: #eeeeef; } /* * Styles for contents. */ .deprecated-content { - margin:0; - padding:10px 0; + margin: 0; + padding: 10px 0; } div.block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; } .col-last div { - padding-top:0; + padding-top: 0; } .col-last a { - padding-bottom:3px; + padding-bottom: 3px; } .module-signature, .package-signature, .type-signature, .member-signature { - font-family:'DejaVu Sans Mono', monospace; - font-size:14px; - margin:14px 0; - white-space: pre-wrap; + font-family: 'DejaVu Sans Mono', monospace; + font-size: 14px; + margin: 14px 0; + white-space: pre-wrap; } .module-signature, .package-signature, .type-signature { - margin-top: 0; + margin-top: 0; } .member-signature .type-parameters-long, .member-signature .parameters, .member-signature .exceptions { - display: inline-block; - vertical-align: top; - white-space: pre; + display: inline-block; + vertical-align: top; + white-space: pre; } .member-signature .type-parameters { - white-space: normal; + white-space: normal; } /* * Styles for formatting effect. */ .source-line-no { - color:green; - padding:0 30px 0 0; + color: green; + padding: 0 30px 0 0; } h1.hidden { - visibility:hidden; - overflow:hidden; - font-size:10px; + visibility: hidden; + overflow: hidden; + font-size: 10px; } .block { - display:block; - margin:0 10px 5px 0; - color:#474747; -} -.deprecated-label, .descfrm-type-label, .implementation-label, .member-name-label, .member-name-link, -.module-label-in-package, .module-label-in-type, .override-specify-label, .package-label-in-type, -.package-hierarchy-label, .type-name-label, .type-name-link, .search-tag-link, .preview-label { - font-weight:bold; -} -.deprecation-comment, .help-footnote, .preview-comment { - font-style:italic; + display: block; + margin: 0 10px 5px 0; + color: #474747; +} +.deprecated-label, +.descfrm-type-label, +.implementation-label, +.member-name-label, +.member-name-link, +.module-label-in-package, +.module-label-in-type, +.override-specify-label, +.package-label-in-type, +.package-hierarchy-label, +.type-name-label, +.type-name-link, +.search-tag-link, +.preview-label { + font-weight: bold; +} +.deprecation-comment, +.help-footnote, +.preview-comment { + font-style: italic; } .deprecation-block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; - border-style:solid; - border-width:thin; - border-radius:10px; - padding:10px; - margin-bottom:10px; - margin-right:10px; - display:inline-block; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; + border-style: solid; + border-width: thin; + border-radius: 10px; + padding: 10px; + margin-bottom: 10px; + margin-right: 10px; + display: inline-block; } .preview-block { - font-size:14px; - font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; - border-style:solid; - border-width:thin; - border-radius:10px; - padding:10px; - margin-bottom:10px; - margin-right:10px; - display:inline-block; + font-size: 14px; + font-family: 'DejaVu Serif', Georgia, 'Times New Roman', Times, serif; + border-style: solid; + border-width: thin; + border-radius: 10px; + padding: 10px; + margin-bottom: 10px; + margin-right: 10px; + display: inline-block; } div.block div.deprecation-comment { - font-style:normal; + font-style: normal; } /* * Styles specific to HTML5 elements. */ -main, nav, header, footer, section { - display:block; +main, +nav, +header, +footer, +section { + display: block; } /* * Styles for javadoc search. */ .ui-autocomplete-category { - font-weight:bold; - font-size:15px; - padding:7px 0 7px 3px; - background-color:#4D7A97; - color:#FFFFFF; + font-weight: bold; + font-size: 15px; + padding: 7px 0 7px 3px; + background-color: #4d7a97; + color: #ffffff; } .result-item { - font-size:13px; + font-size: 13px; } .ui-autocomplete { - max-height:85%; - max-width:65%; - overflow-y:scroll; - overflow-x:scroll; - white-space:nowrap; - box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23); + max-height: 85%; + max-width: 65%; + overflow-y: scroll; + overflow-x: scroll; + white-space: nowrap; + box-shadow: + 0 3px 6px rgba(0, 0, 0, 0.16), + 0 3px 6px rgba(0, 0, 0, 0.23); } ul.ui-autocomplete { - position:fixed; - z-index:999999; - background-color: #FFFFFF; + position: fixed; + z-index: 999999; + background-color: #ffffff; } -ul.ui-autocomplete li { - float:left; - clear:both; - width:100%; +ul.ui-autocomplete li { + float: left; + clear: both; + width: 100%; } .result-highlight { - font-weight:bold; + font-weight: bold; } .ui-autocomplete .result-item { - font-size: inherit; + font-size: inherit; } #search-input { - background-image:url('resources/glass.png'); - background-size:13px; - background-repeat:no-repeat; - background-position:2px 3px; - padding-left:20px; - position:relative; - right:-18px; - width:400px; + background-image: url('resources/glass.png'); + background-size: 13px; + background-repeat: no-repeat; + background-position: 2px 3px; + padding-left: 20px; + position: relative; + right: -18px; + width: 400px; } #reset-button { - background-color: rgb(255,255,255); - background-image:url('resources/x.png'); - background-position:center; - background-repeat:no-repeat; - background-size:12px; - border:0 none; - width:16px; - height:16px; - position:relative; - left:-4px; - top:-4px; - font-size:0px; + background-color: rgb(255, 255, 255); + background-image: url('resources/x.png'); + background-position: center; + background-repeat: no-repeat; + background-size: 12px; + border: 0 none; + width: 16px; + height: 16px; + position: relative; + left: -4px; + top: -4px; + font-size: 0px; } .watermark { - color:#545454; + color: #545454; } .search-tag-desc-result { - font-style:italic; - font-size:11px; + font-style: italic; + font-size: 11px; } .search-tag-holder-result { - font-style:italic; - font-size:12px; + font-style: italic; + font-size: 12px; } .search-tag-result:target { - background-color:yellow; + background-color: yellow; } .module-graph span { - display:none; - position:absolute; + display: none; + position: absolute; } .module-graph:hover span { - display:block; - margin: -100px 0 0 100px; - z-index: 1; + display: block; + margin: -100px 0 0 100px; + z-index: 1; } .inherited-list { - margin: 10px 0 10px 0; + margin: 10px 0 10px 0; } section.class-description { - line-height: 1.4; -} -.summary section[class$="-summary"], .details section[class$="-details"], -.class-uses .detail, .serialized-class-details { - padding: 0px 20px 5px 10px; - border: 1px solid #ededed; - background-color: #f8f8f8; -} -.inherited-list, section[class$="-details"] .detail { - padding:0 0 5px 8px; - background-color:#ffffff; - border:none; + line-height: 1.4; +} +.summary section[class$='-summary'], +.details section[class$='-details'], +.class-uses .detail, +.serialized-class-details { + padding: 0px 20px 5px 10px; + border: 1px solid #ededed; + background-color: #f8f8f8; +} +.inherited-list, +section[class$='-details'] .detail { + padding: 0 0 5px 8px; + background-color: #ffffff; + border: none; } .vertical-separator { - padding: 0 5px; + padding: 0 5px; } ul.help-section-list { - margin: 0; + margin: 0; } ul.help-subtoc > li { display: inline-block; @@ -700,32 +761,34 @@ ul.help-subtoc > li { font-size: smaller; } ul.help-subtoc > li::before { - content: "\2022" ; - padding-right:2px; + content: '\2022'; + padding-right: 2px; } span.help-note { - font-style: italic; + font-style: italic; } /* * Indicator icon for external links. */ -main a[href*="://"]::after { - content:""; - display:inline-block; - background-image:url('data:image/svg+xml; utf8, \ +main a[href*="://"]::after +{ + content: ''; + display: inline-block; + background-image: url('data:image/svg+xml; utf8, \ \ \ '); - background-size:100% 100%; - width:7px; - height:7px; - margin-left:2px; - margin-bottom:4px; + background-size: 100% 100%; + width: 7px; + height: 7px; + margin-left: 2px; + margin-bottom: 4px; } main a[href*="://"]:hover::after, -main a[href*="://"]:focus::after { - background-image:url('data:image/svg+xml; utf8, \ +main a[href*="://"]:focus::after +{ + background-image: url('data:image/svg+xml; utf8, \ \ \ @@ -754,116 +817,135 @@ main a[href*="://"]:focus::after { table.borderless, table.plain, table.striped { - margin-top: 10px; - margin-bottom: 10px; + margin-top: 10px; + margin-bottom: 10px; } table.borderless > caption, table.plain > caption, table.striped > caption { - font-weight: bold; - font-size: smaller; + font-weight: bold; + font-size: smaller; } -table.borderless th, table.borderless td, -table.plain th, table.plain td, -table.striped th, table.striped td { - padding: 2px 5px; +table.borderless th, +table.borderless td, +table.plain th, +table.plain td, +table.striped th, +table.striped td { + padding: 2px 5px; } table.borderless, -table.borderless > thead > tr > th, table.borderless > tbody > tr > th, table.borderless > tr > th, -table.borderless > thead > tr > td, table.borderless > tbody > tr > td, table.borderless > tr > td { - border: none; -} -table.borderless > thead > tr, table.borderless > tbody > tr, table.borderless > tr { - background-color: transparent; +table.borderless > thead > tr > th, +table.borderless > tbody > tr > th, +table.borderless > tr > th, +table.borderless > thead > tr > td, +table.borderless > tbody > tr > td, +table.borderless > tr > td { + border: none; +} +table.borderless > thead > tr, +table.borderless > tbody > tr, +table.borderless > tr { + background-color: transparent; } table.plain { - border-collapse: collapse; - border: 1px solid black; -} -table.plain > thead > tr, table.plain > tbody tr, table.plain > tr { - background-color: transparent; -} -table.plain > thead > tr > th, table.plain > tbody > tr > th, table.plain > tr > th, -table.plain > thead > tr > td, table.plain > tbody > tr > td, table.plain > tr > td { - border: 1px solid black; + border-collapse: collapse; + border: 1px solid black; +} +table.plain > thead > tr, +table.plain > tbody tr, +table.plain > tr { + background-color: transparent; +} +table.plain > thead > tr > th, +table.plain > tbody > tr > th, +table.plain > tr > th, +table.plain > thead > tr > td, +table.plain > tbody > tr > td, +table.plain > tr > td { + border: 1px solid black; } table.striped { - border-collapse: collapse; - border: 1px solid black; + border-collapse: collapse; + border: 1px solid black; } table.striped > thead { - background-color: #E3E3E3; + background-color: #e3e3e3; } -table.striped > thead > tr > th, table.striped > thead > tr > td { - border: 1px solid black; +table.striped > thead > tr > th, +table.striped > thead > tr > td { + border: 1px solid black; } table.striped > tbody > tr:nth-child(even) { - background-color: #EEE + background-color: #eee; } table.striped > tbody > tr:nth-child(odd) { - background-color: #FFF + background-color: #fff; } -table.striped > tbody > tr > th, table.striped > tbody > tr > td { - border-left: 1px solid black; - border-right: 1px solid black; +table.striped > tbody > tr > th, +table.striped > tbody > tr > td { + border-left: 1px solid black; + border-right: 1px solid black; } table.striped > tbody > tr > th { - font-weight: normal; + font-weight: normal; } /** * Tweak font sizes and paddings for small screens. */ @media screen and (max-width: 1050px) { - #search-input { - width: 300px; - } + #search-input { + width: 300px; + } } @media screen and (max-width: 800px) { - #search-input { - width: 200px; - } - .top-nav, - .bottom-nav { - font-size: 11px; - padding-top: 6px; - } - .sub-nav { - font-size: 11px; - } - .about-language { - padding-right: 16px; - } - ul.nav-list li, - .sub-nav .nav-list-search { - padding: 6px; - } - ul.sub-nav-list li { - padding-top: 5px; - } - main { - padding: 10px; - } - .summary section[class$="-summary"], .details section[class$="-details"], - .class-uses .detail, .serialized-class-details { - padding: 0 8px 5px 8px; - } - body { - -webkit-text-size-adjust: none; - } + #search-input { + width: 200px; + } + .top-nav, + .bottom-nav { + font-size: 11px; + padding-top: 6px; + } + .sub-nav { + font-size: 11px; + } + .about-language { + padding-right: 16px; + } + ul.nav-list li, + .sub-nav .nav-list-search { + padding: 6px; + } + ul.sub-nav-list li { + padding-top: 5px; + } + main { + padding: 10px; + } + .summary section[class$='-summary'], + .details section[class$='-details'], + .class-uses .detail, + .serialized-class-details { + padding: 0 8px 5px 8px; + } + body { + -webkit-text-size-adjust: none; + } } @media screen and (max-width: 500px) { - #search-input { - width: 150px; - } - .top-nav, - .bottom-nav { - font-size: 10px; - } - .sub-nav { - font-size: 10px; - } - .about-language { - font-size: 10px; - padding-right: 12px; - } + #search-input { + width: 150px; + } + .top-nav, + .bottom-nav { + font-size: 10px; + } + .sub-nav { + font-size: 10px; + } + .about-language { + font-size: 10px; + padding-right: 12px; + } } diff --git a/docs/Vision/tag-search-index.js b/docs/Vision/tag-search-index.js index 0367dae6..8f19e1f9 100644 --- a/docs/Vision/tag-search-index.js +++ b/docs/Vision/tag-search-index.js @@ -1 +1,2 @@ -tagSearchIndex = [];updateSearchResults(); \ No newline at end of file +tagSearchIndex = []; +updateSearchResults(); diff --git a/docs/Vision/type-search-index.js b/docs/Vision/type-search-index.js index f0bb9b4c..7b85e10a 100644 --- a/docs/Vision/type-search-index.js +++ b/docs/Vision/type-search-index.js @@ -1 +1,9 @@ -typeSearchIndex = [{"l":"All Classes and Interfaces","u":"allclasses-index.html"},{"p":"com.technototes.vision.hardware","l":"Camera"},{"p":"com.technototes.vision.hardware","l":"InternalCamera"},{"p":"com.technototes.vision.subsystem","l":"PipelineSubsystem"},{"p":"com.technototes.vision.hardware","l":"SwitchableWebcam"},{"p":"com.technototes.vision.hardware","l":"Webcam"}];updateSearchResults(); \ No newline at end of file +typeSearchIndex = [ + { l: 'All Classes and Interfaces', u: 'allclasses-index.html' }, + { p: 'com.technototes.vision.hardware', l: 'Camera' }, + { p: 'com.technototes.vision.hardware', l: 'InternalCamera' }, + { p: 'com.technototes.vision.subsystem', l: 'PipelineSubsystem' }, + { p: 'com.technototes.vision.hardware', l: 'SwitchableWebcam' }, + { p: 'com.technototes.vision.hardware', l: 'Webcam' }, +]; +updateSearchResults(); diff --git a/package.json b/package.json index 123f70a8..d68dbeff 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "technolib", - "version": "1.0.0", + "version": "1.3.1", "description": "TechnoLib automation scripts", "main": "build/automation.js", "repository": "https://github.com/technototes/TechnoLib.git", From 060c1484e12f01cb1785a585b8699ed0001296fe Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Wed, 4 Oct 2023 20:56:07 -0700 Subject: [PATCH 07/34] Undeprecated some stuff (for now) added Motor.setDir/setFwd/setBack, and staticified CmdScheduler --- .../library/command/CommandScheduler.java | 96 +++++++++---------- .../library/command/ConditionalCommand.java | 6 +- .../library/command/ParallelCommandGroup.java | 2 +- .../command/ParallelDeadlineGroup.java | 2 +- .../library/command/ParallelRaceGroup.java | 2 +- .../command/SequentialCommandGroup.java | 4 +- .../library/control/CommandGamepad.java | 4 +- .../library/control/CommandInput.java | 2 +- .../library/hardware/HardwareDevice.java | 1 - .../library/hardware/HardwareDeviceGroup.java | 1 - .../library/hardware/Sensored.java | 1 - .../technototes/library/hardware/Speaker.java | 3 +- .../library/hardware/motor/EncodedMotor.java | 25 +++++ .../library/hardware/motor/Motor.java | 40 ++++++++ .../hardware/sensor/Rev2MDistanceSensor.java | 1 - .../library/hardware/servo/Servo.java | 1 - .../library/hardware/servo/ServoGroup.java | 1 - .../technototes/library/logger/Logger.java | 5 +- .../library/structure/CommandOpMode.java | 11 ++- .../library/subsystem/Subsystem.java | 6 +- 20 files changed, 136 insertions(+), 78 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java index 94ea925e..41e15ef3 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java @@ -23,23 +23,21 @@ */ public final class CommandScheduler { - private final Map commandMap; - private final Map> requirementMap; - private final Map defaultMap; + private static Map commandMap = new HashMap<>(); + private static Map> requirementMap = new HashMap<>(); + private static Map defaultMap = new HashMap<>(); - private final Set registered; + private static Set registered = new LinkedHashSet<>(); - private CommandOpMode opMode; + private static CommandOpMode opMode; /** * Set the scheduler's opmode * * @param c the opmode - * @return the CommandScheduler (useful for chaining) */ - public CommandScheduler setOpMode(CommandOpMode c) { + public static void setOpMode(CommandOpMode c) { opMode = c; - return this; } /** @@ -47,9 +45,8 @@ public CommandScheduler setOpMode(CommandOpMode c) { * * @return the CommandScheduler (useful for chaining) */ - public CommandScheduler terminateOpMode() { + public static void terminateOpMode() { opMode.terminate(); - return this; } /** @@ -57,24 +54,24 @@ public CommandScheduler terminateOpMode() { * * @return elapsed time since opmode was started, in seconds */ - public double getOpModeRuntime() { + public static double getOpModeRuntime() { return opMode.getOpModeRuntime(); } // The Singleton CommandScheduler - private static CommandScheduler instance; + // private static CommandScheduler instance; /** * Get (or create) the singleton CommandScheduler object * * @return The CommandScheduler singleton - */ public static synchronized CommandScheduler getInstance() { if (instance == null) { instance = new CommandScheduler(); } return instance; } + */ /** * Alex had a comment "be careful with this" and he's not wrong. @@ -82,18 +79,18 @@ public static synchronized CommandScheduler getInstance() { * * @return a *new* singleton object (which makes very little sense) */ - public static synchronized CommandScheduler resetScheduler() { - instance = null; + public static void resetScheduler() { Command.clear(); - return getInstance(); } + /* private CommandScheduler() { commandMap = new HashMap<>(); requirementMap = new HashMap<>(); defaultMap = new HashMap<>(); registered = new LinkedHashSet<>(); } + */ /** * Schedule a command to run @@ -101,8 +98,8 @@ private CommandScheduler() { * @param command the command to schedule * @return the CommandScheduler (useful for chaining) */ - public CommandScheduler schedule(Command command) { - return schedule(command, () -> true); + public static void schedule(Command command) { + schedule(command, () -> true); } /** @@ -111,8 +108,8 @@ public CommandScheduler schedule(Command command) { * @param command the command to schedule * @return the CommandScheduler (useful for chaining) */ - public CommandScheduler scheduleOnce(Command command) { - return schedule(command); + public static void scheduleOnce(Command command) { + schedule(command); } /** @@ -122,8 +119,8 @@ public CommandScheduler scheduleOnce(Command command) { * @param state the state during which the command should be scheduled * @return the CommandScheduler (useful for chaining) */ - public CommandScheduler scheduleOnceForState(Command command, CommandOpMode.OpModeState state) { - return scheduleForState(command, state); + public static void scheduleOnceForState(Command command, CommandOpMode.OpModeState state) { + scheduleForState(command, state); } /** @@ -136,8 +133,8 @@ public CommandScheduler scheduleOnceForState(Command command, CommandOpMode.OpMo * @param supplier The condition which also must be true to run the command * @return The CommandScheduler singleton for chaining */ - public CommandScheduler scheduleInit(Command command, BooleanSupplier supplier) { - return scheduleForState(command, supplier, CommandOpMode.OpModeState.INIT); + public static void scheduleInit(Command command, BooleanSupplier supplier) { + scheduleForState(command, supplier, CommandOpMode.OpModeState.INIT); } /** @@ -148,8 +145,8 @@ public CommandScheduler scheduleInit(Command command, BooleanSupplier supplier) * @param command The command to run * @return The CommandScheduler singleton for chaining */ - public CommandScheduler scheduleInit(Command command) { - return scheduleForState(command, () -> true, CommandOpMode.OpModeState.INIT); + public static void scheduleInit(Command command) { + scheduleForState(command, () -> true, CommandOpMode.OpModeState.INIT); } /** @@ -163,8 +160,8 @@ public CommandScheduler scheduleInit(Command command) { * @param supplier The condition which must also be true to run the command * @return The CommandScheduler singleton for chaining */ - public CommandScheduler scheduleJoystick(Command command, BooleanSupplier supplier) { - return scheduleForState(command, supplier, CommandOpMode.OpModeState.RUN, CommandOpMode.OpModeState.END); + public static void scheduleJoystick(Command command, BooleanSupplier supplier) { + scheduleForState(command, supplier, CommandOpMode.OpModeState.RUN, CommandOpMode.OpModeState.END); } /** @@ -176,8 +173,8 @@ public CommandScheduler scheduleJoystick(Command command, BooleanSupplier suppli * @param command The command to run repeatedly. * @return The CommandScheduler singleton for chaining */ - public CommandScheduler scheduleJoystick(Command command) { - return scheduleForState(command, CommandOpMode.OpModeState.RUN, CommandOpMode.OpModeState.END); + public static void scheduleJoystick(Command command) { + scheduleForState(command, CommandOpMode.OpModeState.RUN, CommandOpMode.OpModeState.END); } /** @@ -189,12 +186,12 @@ public CommandScheduler scheduleJoystick(Command command) { * @param supplier The function to determin in the command should be scheduled * @return The CommandScheduler singleton for chaining */ - public CommandScheduler scheduleForState( + public static void scheduleForState( Command command, BooleanSupplier supplier, CommandOpMode.OpModeState... states ) { - return schedule( + schedule( command.cancelUpon(() -> !opMode.getOpModeState().isState(states)), () -> supplier.getAsBoolean() && opMode.getOpModeState().isState(states) ); @@ -207,8 +204,8 @@ public CommandScheduler scheduleForState( * @param states The list of states to schedule the command * @return The CommandScheduler singleton for chaining */ - public CommandScheduler scheduleForState(Command command, CommandOpMode.OpModeState... states) { - return schedule( + public static void scheduleForState(Command command, CommandOpMode.OpModeState... states) { + schedule( command.cancelUpon(() -> !opMode.getOpModeState().isState(states)), () -> opMode.getOpModeState().isState(states) ); @@ -222,8 +219,8 @@ public CommandScheduler scheduleForState(Command command, CommandOpMode.OpModeSt * @param other The command to schedule when 'dependency' has finished * @return The CommandScheduler singleton for chaining */ - public CommandScheduler scheduleAfterOther(Command dependency, Command other) { - return schedule(other, dependency::justFinishedNoCancel); + public static void scheduleAfterOther(Command dependency, Command other) { + schedule(other, dependency::justFinishedNoCancel); } /** @@ -234,8 +231,8 @@ public CommandScheduler scheduleAfterOther(Command dependency, Command other) { * @param other The command to schedule when 'dependency' has started * @return The CommandScheduler singleton for chaining */ - public CommandScheduler scheduleWithOther(Command dependency, Command other) { - return schedule(other, dependency::justStarted); + public static void scheduleWithOther(Command dependency, Command other) { + schedule(other, dependency::justStarted); } /** @@ -247,8 +244,8 @@ public CommandScheduler scheduleWithOther(Command dependency, Command other) { * @param additionalCondition The additional condition necessary to be true to schedule the 'other' command * @return The CommandScheduler singleton for chaining */ - public CommandScheduler scheduleAfterOther(Command dependency, Command other, BooleanSupplier additionalCondition) { - return schedule(other, () -> dependency.justFinishedNoCancel() && additionalCondition.getAsBoolean()); + public static void scheduleAfterOther(Command dependency, Command other, BooleanSupplier additionalCondition) { + schedule(other, () -> dependency.justFinishedNoCancel() && additionalCondition.getAsBoolean()); } /** @@ -260,8 +257,8 @@ public CommandScheduler scheduleAfterOther(Command dependency, Command other, Bo * @param additionalCondition The additional condition necessary to be true to schedule the 'other' command * @return The CommandScheduler singleton for chaining */ - public CommandScheduler scheduleWithOther(Command dependency, Command other, BooleanSupplier additionalCondition) { - return schedule(other, () -> dependency.justStarted() && additionalCondition.getAsBoolean()); + public static void scheduleWithOther(Command dependency, Command other, BooleanSupplier additionalCondition) { + schedule(other, () -> dependency.justStarted() && additionalCondition.getAsBoolean()); } /** @@ -272,14 +269,13 @@ public CommandScheduler scheduleWithOther(Command dependency, Command other, Boo * @param subsystem The subsystem to run the command against when it's unused * @return The CommandScheduler singleton for chaining */ - public CommandScheduler scheduleDefault(Command command, Subsystem subsystem) { + public static void scheduleDefault(Command command, Subsystem subsystem) { if (command.getRequirements().contains(subsystem)) { defaultMap.put(subsystem, command); schedule(command, () -> getCurrent(subsystem) == command); } else { System.err.println("default commands must require their subsystem: " + command.getClass().toString()); } - return this; } /** @@ -288,9 +284,8 @@ public CommandScheduler scheduleDefault(Command command, Subsystem subsystem) { * @param p The Periodic function to run * @return The CommandScheduler singleton for chaining */ - public CommandScheduler register(Periodic p) { + public static void register(Periodic p) { registered.add(p); - return this; } /** @@ -300,7 +295,7 @@ public CommandScheduler register(Periodic p) { * @return the default command for the subsystem, or null if there is none */ @Nullable - public Command getDefault(Subsystem s) { + public static Command getDefault(Subsystem s) { return opMode.getOpModeState() == CommandOpMode.OpModeState.RUN ? defaultMap.get(s) : null; } @@ -313,7 +308,7 @@ public Command getDefault(Subsystem s) { * command usint the subsystem, nor a default command */ @Nullable - public Command getCurrent(Subsystem s) { + public static Command getCurrent(Subsystem s) { if (requirementMap.get(s) == null) return null; for (Command c : requirementMap.get(s)) { if (c.isRunning()) return c; @@ -329,21 +324,20 @@ public Command getCurrent(Subsystem s) { * @param supplier The function that returns true when the command should be run * @return the CommandScheduler singleton for easy chaining */ - public CommandScheduler schedule(Command command, BooleanSupplier supplier) { + public static void schedule(Command command, BooleanSupplier supplier) { commandMap.put(command, supplier); for (Subsystem s : command.getRequirements()) { requirementMap.putIfAbsent(s, new LinkedHashSet<>()); requirementMap.get(s).add(command); register(s); } - return this; } /** * This is invoked from inside the CommandOpMode method, during the opCode. * It it the core logic of actually scheduling & running the commands. */ - public void run() { + public static void run() { // For each newly scheduled command, // cancel any existing command that is using the new command's subsystem requirements commandMap.forEach((c1, b) -> { diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ConditionalCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/ConditionalCommand.java index 375981db..5676b893 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ConditionalCommand.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ConditionalCommand.java @@ -45,7 +45,7 @@ public ConditionalCommand(BooleanSupplier condition) { public ConditionalCommand(BooleanSupplier condition, Command command) { supplier = condition; trueCommand = command; - CommandScheduler.getInstance().scheduleWithOther(this, trueCommand, condition); + CommandScheduler.scheduleWithOther(this, trueCommand, condition); falseCommand = null; } @@ -60,8 +60,8 @@ public ConditionalCommand(BooleanSupplier condition, Command trueC, Command fals supplier = condition; trueCommand = trueC; falseCommand = falseC; - CommandScheduler.getInstance().scheduleWithOther(this, trueCommand, condition); - CommandScheduler.getInstance().scheduleWithOther(this, falseCommand, () -> !condition.getAsBoolean()); + CommandScheduler.scheduleWithOther(this, trueCommand, condition); + CommandScheduler.scheduleWithOther(this, falseCommand, () -> !condition.getAsBoolean()); } @Override diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParallelCommandGroup.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParallelCommandGroup.java index ee53b828..2ba12847 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ParallelCommandGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ParallelCommandGroup.java @@ -18,7 +18,7 @@ public ParallelCommandGroup(Command... commands) { @Override public void schedule(Command c) { - CommandScheduler.getInstance().scheduleWithOther(this, c); + CommandScheduler.scheduleWithOther(this, c); } /** diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParallelDeadlineGroup.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParallelDeadlineGroup.java index 2171a191..7b358279 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ParallelDeadlineGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ParallelDeadlineGroup.java @@ -28,7 +28,7 @@ public ParallelDeadlineGroup(Command command, Command... commands) { */ @Override public void schedule(Command c) { - CommandScheduler.getInstance().scheduleWithOther(this, c); + CommandScheduler.scheduleWithOther(this, c); } /** diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParallelRaceGroup.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParallelRaceGroup.java index 9d9cd541..bc111b44 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ParallelRaceGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ParallelRaceGroup.java @@ -23,7 +23,7 @@ public ParallelRaceGroup(Command... commands) { */ @Override public void schedule(Command c) { - CommandScheduler.getInstance().scheduleWithOther(this, c); + CommandScheduler.scheduleWithOther(this, c); } /** diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/SequentialCommandGroup.java b/RobotLibrary/src/main/java/com/technototes/library/command/SequentialCommandGroup.java index f4f43c1b..c8bfaee0 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/SequentialCommandGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/SequentialCommandGroup.java @@ -27,9 +27,9 @@ public SequentialCommandGroup(Command... commands) { @Override public void schedule(Command c) { if (lastCommand == null) { - CommandScheduler.getInstance().scheduleWithOther(this, c); + CommandScheduler.scheduleWithOther(this, c); } else { - CommandScheduler.getInstance().scheduleAfterOther(lastCommand, c); + CommandScheduler.scheduleAfterOther(lastCommand, c); } lastCommand = c; } diff --git a/RobotLibrary/src/main/java/com/technototes/library/control/CommandGamepad.java b/RobotLibrary/src/main/java/com/technototes/library/control/CommandGamepad.java index 00f93fa8..8ff15a73 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/control/CommandGamepad.java +++ b/RobotLibrary/src/main/java/com/technototes/library/control/CommandGamepad.java @@ -44,12 +44,12 @@ public CommandGamepad scheduleDpad(BiConsumer f) { } public CommandGamepad scheduleStick(Stick s, BiFunction f) { - CommandScheduler.getInstance().scheduleJoystick(f.apply(s.getXAxis(), s.getXAxis())); + CommandScheduler.scheduleJoystick(f.apply(s.getXAxis(), s.getXAxis())); return this; } public CommandGamepad scheduleStick(Stick s, BiConsumer f) { - CommandScheduler.getInstance().scheduleJoystick(() -> f.accept(s.getXAxis(), s.getXAxis())); + CommandScheduler.scheduleJoystick(() -> f.accept(s.getXAxis(), s.getXAxis())); return this; } diff --git a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java index 750df3de..e1fffe63 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java +++ b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java @@ -145,7 +145,7 @@ default T whileInverseToggled(Command command) { * @return The CommandInput<T> instance */ default T schedule(BooleanSupplier condition, Command command) { - CommandScheduler.getInstance().scheduleJoystick(command, condition); + CommandScheduler.scheduleJoystick(command, condition); return getInstance(); } diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDevice.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDevice.java index 6205b678..be850c7d 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDevice.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDevice.java @@ -9,7 +9,6 @@ * @param The class for the default device (ones found in ftcsdk) * @author Alex Stedman */ -@Deprecated @SuppressWarnings("unused") public abstract class HardwareDevice { diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java index 509f884b..a956e9ea 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java @@ -10,7 +10,6 @@ * * @author Alex Stedman */ -@Deprecated @SuppressWarnings("unused") public interface HardwareDeviceGroup { /** diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/Sensored.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/Sensored.java index 81d43481..905ab470 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/Sensored.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/Sensored.java @@ -10,7 +10,6 @@ * * @author Alex Stedman */ -@Deprecated @SuppressWarnings("unused") public interface Sensored extends DoubleSupplier { /** diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/Speaker.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/Speaker.java index 179f17d9..a03f418b 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/Speaker.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/Speaker.java @@ -9,7 +9,8 @@ /** * There's just no possible way I care about this. I think there are rules about *not* playing - * anything through the speaker now, anyway. This is going away. + * anything through the speaker now, anyway. This is going away. (The rules were created because + * of Alex, if I recall correctly... */ @Deprecated public class Speaker { diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java index ae726fba..b111b26a 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java @@ -143,6 +143,31 @@ public EncodedMotor invert() { return setInverted(!getInverted()); } + /** + * Set the motor to go *backward* + */ + @Override + public EncodedMotor setBackward() { + super.setBackward(); + return this; + } + + /** + * Set the motor to go *forward* + */ + public EncodedMotor setForward() { + super.setForward(); + return this; + } + + /** + * Set the motor to go in a particular direction + */ + public EncodedMotor setDirection(DcMotorSimple.Direction dir) { + super.setDirection(dir); + return this; + } + /** * Get the encoder position value * diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java index e3bae9fa..bb1ef7ca 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java @@ -54,34 +54,74 @@ public Motor setLimits(double mi, double ma) { /** * Returns whether the motor is inverted. WARNING: THIS RETURNS TRUE FOR A "FORWARD" SETTING! + * Use getDirection() instead! * * @return True for inverted (forward) false for not inverted (reverse) */ @Override + @Deprecated public boolean getInverted() { return invert; } + /** + * Returns the DcMotorSimple.Direction the motor is traveling + */ + public DcMotorSimple.Direction getDirection() { + return getDevice().getDirection(); + } + /** * Set the Inverted state for the motor. WARNING: THIS IS BACKWARD TO WHAT YOU MIGHT THINK! * True - Motor goes *forward*. False - motor goes *reverse*. + * Use setForward()/setBackward() instead! * * @param inv true for forward, false for reverse (probably not what you were expecting) * @return The motor (for chaining) */ @Override + @Deprecated public Motor setInverted(boolean inv) { getDevice().setDirection(inv ? DcMotorSimple.Direction.FORWARD : DcMotorSimple.Direction.REVERSE); invert = inv; return this; } + /** + * Set the motor to go *backward* + */ + public Motor setBackward() { + getDevice().setDirection(DcMotorSimple.Direction.REVERSE); + invert = true; + return this; + } + + /** + * Set the motor to go *forward* + */ + public Motor setForward() { + getDevice().setDirection(DcMotorSimple.Direction.FORWARD); + invert = false; + return this; + } + + /** + * Set the motor to go in a particular direction + */ + public Motor setDirection(DcMotorSimple.Direction dir) { + getDevice().setDirection(dir); + invert = dir == DcMotorSimple.Direction.FORWARD; + return this; + } + /** * Invert the motor (toggle inversion) + * Use setForward()/setBackward() instead! * * @return The motor (for chaining) */ @Override + @Deprecated public Motor invert() { return setInverted(!getInverted()); } diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/Rev2MDistanceSensor.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/Rev2MDistanceSensor.java index 942bccf2..343160d2 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/Rev2MDistanceSensor.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/Rev2MDistanceSensor.java @@ -9,7 +9,6 @@ * * @author Alex Stedman */ -@Deprecated @SuppressWarnings("unused") public class Rev2MDistanceSensor extends Sensor implements IDistanceSensor { diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/Servo.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/Servo.java index 701f0192..5420a9f4 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/Servo.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/Servo.java @@ -15,7 +15,6 @@ * * @author Alex Stedman */ -@Deprecated @SuppressWarnings("unused") public class Servo extends HardwareDevice diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java index c80ef063..3f5828b3 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java @@ -8,7 +8,6 @@ * * @author Alex Stedman */ -@Deprecated @SuppressWarnings("unused") public class ServoGroup extends Servo implements HardwareDeviceGroup { diff --git a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java index 9bfef275..bbb2ddfc 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java +++ b/RobotLibrary/src/main/java/com/technototes/library/logger/Logger.java @@ -31,6 +31,7 @@ public class Logger { public Entry[] initEntries; private final Set> unindexedRunEntries; private final Set> unindexedInitEntries; + private final Set recordedAlready; private final Telemetry telemetry; private final OpMode opMode; /** @@ -49,6 +50,7 @@ public Logger(OpMode op) { telemetry.setDisplayFormat(Telemetry.DisplayFormat.HTML); unindexedRunEntries = new LinkedHashSet<>(); unindexedInitEntries = new LinkedHashSet<>(); + recordedAlready = new LinkedHashSet<>(); configure(op); runEntries = generate(unindexedRunEntries); initEntries = generate(unindexedInitEntries); @@ -58,9 +60,10 @@ private void configure(Object root) { for (Field field : root.getClass().getFields()) { try { Object o = field.get(root); - if (isFieldAllowed(field)) { + if (!recordedAlready.contains(o) && isFieldAllowed(field)) { if (o instanceof Loggable) { configure(o); + recordedAlready.add(o); } else if ( field.isAnnotationPresent(Log.class) || field.isAnnotationPresent(Log.Number.class) || diff --git a/RobotLibrary/src/main/java/com/technototes/library/structure/CommandOpMode.java b/RobotLibrary/src/main/java/com/technototes/library/structure/CommandOpMode.java index 81419465..c8dd453f 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/structure/CommandOpMode.java +++ b/RobotLibrary/src/main/java/com/technototes/library/structure/CommandOpMode.java @@ -61,7 +61,8 @@ public double getOpModeRuntime() { @Override public final void runOpMode() { opModeState = OpModeState.INIT; - CommandScheduler.resetScheduler().setOpMode(this); + CommandScheduler.resetScheduler(); + CommandScheduler.setOpMode(this); hubs = hardwareMap.getAll(LynxModule.class); hubs.forEach(e -> e.setBulkCachingMode(LynxModule.BulkCachingMode.MANUAL)); HardwareBuilder.initMap(hardwareMap); @@ -73,20 +74,20 @@ public final void runOpMode() { while (!(isStarted() && additionalInitConditions()) && !terminated && !isStopRequested()) { initLoop(); universalLoop(); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); logger.initUpdate(); driverGamepad.periodic(); codriverGamepad.periodic(); hubs.forEach(LynxModule::clearBulkCache); } opModeState = OpModeState.RUN; - CommandScheduler.getInstance().run(); + CommandScheduler.run(); uponStart(); opModeTimer.reset(); while (opModeIsActive() && !terminated && !isStopRequested()) { runLoop(); universalLoop(); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); logger.runUpdate(); driverGamepad.periodic(); codriverGamepad.periodic(); @@ -94,7 +95,7 @@ public final void runOpMode() { } opModeState = OpModeState.END; end(); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); CommandScheduler.resetScheduler(); opModeTimer.reset(); } diff --git a/RobotLibrary/src/main/java/com/technototes/library/subsystem/Subsystem.java b/RobotLibrary/src/main/java/com/technototes/library/subsystem/Subsystem.java index 5661c3ff..bc7a21b8 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/subsystem/Subsystem.java +++ b/RobotLibrary/src/main/java/com/technototes/library/subsystem/Subsystem.java @@ -6,16 +6,16 @@ public interface Subsystem extends Periodic { default void register() { - CommandScheduler.getInstance().register(this); + CommandScheduler.register(this); } default Subsystem setDefaultCommand(Command c) { - CommandScheduler.getInstance().scheduleDefault(c, this); + CommandScheduler.scheduleDefault(c, this); return this; } default Command getDefaultCommand() { - return CommandScheduler.getInstance().getDefault(this); + return CommandScheduler.getDefault(this); } @Override From bf1474050178f3eaa9f5ddba0e005ff09823b8c3 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Wed, 4 Oct 2023 21:05:35 -0700 Subject: [PATCH 08/34] Removed some deprecated stuff --- .../library/command/CommandBase.java | 26 ---------- .../library/hardware/HardwareDeviceGroup.java | 12 ----- .../library/hardware/motor/EncodedMotor.java | 27 +--------- .../library/hardware/motor/Motor.java | 49 +------------------ .../library/hardware/sensor/Sensor.java | 1 - 5 files changed, 3 insertions(+), 112 deletions(-) delete mode 100644 RobotLibrary/src/main/java/com/technototes/library/command/CommandBase.java diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/CommandBase.java b/RobotLibrary/src/main/java/com/technototes/library/command/CommandBase.java deleted file mode 100644 index 0051d4b6..00000000 --- a/RobotLibrary/src/main/java/com/technototes/library/command/CommandBase.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.technototes.library.command; - -/** - * Command base class for people who like parity with wpilib - *

    - * Deprecated because I don't care about wpilib in the least - */ -@Deprecated -public abstract class CommandBase implements Command { - - /** - * Execute the command - */ - @Override - public void execute() {} - - /** - * Is this command finished - * - * @return - */ - @Override - public boolean isFinished() { - return false; - } -} diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java index a956e9ea..d5785348 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java @@ -34,20 +34,8 @@ default List getAllDeviceList() { return Arrays.asList(getAllDevices()); } - /** - * Propogate actions across the followers - *

    - * Note to self: Alex couldn't spell :) - * - * @param value the value to propogate - */ - @Deprecated - default void propogate(double value) {} - /** * Propagate actions across the followers - *

    - * Note to self: Alex couldn't spell :) * * @param value the value to propagate */ diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java index b111b26a..9159bac8 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java @@ -118,31 +118,6 @@ public EncodedMotor setRunMode(DcMotor.RunMode m) { return this; } - /** - * Set the Inverted state for the motor. WARNING: THIS IS BACKWARD TO WHAT YOU MIGHT THINK! - * True - Motor goes *forward*. False - motor goes *reverse*. - *

    - * This is overridden so it can return an EncodedMotor, and not just a Motor - * - * @param invert true for forward, false for reverse (probably not what you were expecting) - * @return The motor (for chaining) - */ - @Override - public EncodedMotor setInverted(boolean invert) { - super.setInverted(invert); - return this; - } - - /** - * Invert the motor (toggle inversion) - * - * @return The motor (for chaining) - */ - @Override - public EncodedMotor invert() { - return setInverted(!getInverted()); - } - /** * Set the motor to go *backward* */ @@ -155,6 +130,7 @@ public EncodedMotor setBackward() { /** * Set the motor to go *forward* */ + @Override public EncodedMotor setForward() { super.setForward(); return this; @@ -163,6 +139,7 @@ public EncodedMotor setForward() { /** * Set the motor to go in a particular direction */ + @Override public EncodedMotor setDirection(DcMotorSimple.Direction dir) { super.setDirection(dir); return this; diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java index bb1ef7ca..01c5321f 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java @@ -3,7 +3,6 @@ import com.qualcomm.robotcore.hardware.DcMotor; import com.qualcomm.robotcore.hardware.DcMotorSimple; import com.qualcomm.robotcore.util.Range; -import com.technototes.library.general.Invertable; import com.technototes.library.hardware.HardwareDevice; import java.util.function.Supplier; @@ -14,11 +13,8 @@ * @author Alex Stedman */ @SuppressWarnings("unused") -public class Motor - extends HardwareDevice - implements Invertable>, Supplier { +public class Motor extends HardwareDevice implements Supplier { - private boolean invert = false; private double min = -1, max = 1; /** @@ -52,18 +48,6 @@ public Motor setLimits(double mi, double ma) { return this; } - /** - * Returns whether the motor is inverted. WARNING: THIS RETURNS TRUE FOR A "FORWARD" SETTING! - * Use getDirection() instead! - * - * @return True for inverted (forward) false for not inverted (reverse) - */ - @Override - @Deprecated - public boolean getInverted() { - return invert; - } - /** * Returns the DcMotorSimple.Direction the motor is traveling */ @@ -71,28 +55,11 @@ public DcMotorSimple.Direction getDirection() { return getDevice().getDirection(); } - /** - * Set the Inverted state for the motor. WARNING: THIS IS BACKWARD TO WHAT YOU MIGHT THINK! - * True - Motor goes *forward*. False - motor goes *reverse*. - * Use setForward()/setBackward() instead! - * - * @param inv true for forward, false for reverse (probably not what you were expecting) - * @return The motor (for chaining) - */ - @Override - @Deprecated - public Motor setInverted(boolean inv) { - getDevice().setDirection(inv ? DcMotorSimple.Direction.FORWARD : DcMotorSimple.Direction.REVERSE); - invert = inv; - return this; - } - /** * Set the motor to go *backward* */ public Motor setBackward() { getDevice().setDirection(DcMotorSimple.Direction.REVERSE); - invert = true; return this; } @@ -101,7 +68,6 @@ public Motor setBackward() { */ public Motor setForward() { getDevice().setDirection(DcMotorSimple.Direction.FORWARD); - invert = false; return this; } @@ -110,22 +76,9 @@ public Motor setForward() { */ public Motor setDirection(DcMotorSimple.Direction dir) { getDevice().setDirection(dir); - invert = dir == DcMotorSimple.Direction.FORWARD; return this; } - /** - * Invert the motor (toggle inversion) - * Use setForward()/setBackward() instead! - * - * @return The motor (for chaining) - */ - @Override - @Deprecated - public Motor invert() { - return setInverted(!getInverted()); - } - /** * Gets the power value for the motor * diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/Sensor.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/Sensor.java index 667f2b4a..423dca7f 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/Sensor.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/Sensor.java @@ -8,7 +8,6 @@ * @param The Sensor hardware device * @author Alex Stedman */ -@Deprecated @SuppressWarnings("unused") public abstract class Sensor extends HardwareDevice { From aa5a2284115a9dd2b4d184976aed0e47a4394599 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Fri, 6 Oct 2023 10:31:03 -0700 Subject: [PATCH 09/34] Steps toward a simplified vision pipeline --- .../java/com/technototes/vision/HSVRange.java | 61 +++++++ .../subsystem/BasicVisionSubsystem.java | 153 ++++++++++++++++++ .../vision/subsystem/PipelineSubsystem.java | 70 -------- 3 files changed, 214 insertions(+), 70 deletions(-) create mode 100644 Vision/src/main/java/com/technototes/vision/HSVRange.java create mode 100644 Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java delete mode 100644 Vision/src/main/java/com/technototes/vision/subsystem/PipelineSubsystem.java diff --git a/Vision/src/main/java/com/technototes/vision/HSVRange.java b/Vision/src/main/java/com/technototes/vision/HSVRange.java new file mode 100644 index 00000000..658753db --- /dev/null +++ b/Vision/src/main/java/com/technototes/vision/HSVRange.java @@ -0,0 +1,61 @@ +package com.technototes.vision; + +import org.opencv.core.Scalar; + +public class HSVRange { + + int hueLow; + int hueHigh; + int satLow; + int satHigh; + int valLow; + int valHigh; + + // Private constructor for wrap around/truncation stuff + private HSVRange(int hLo, int hHi, HSVRange copyFrom) { + hueLow = hLo; + hueHigh = hHi; + satLow = copyFrom.satLow; + satHigh = copyFrom.satHigh; + valLow = copyFrom.valLow; + valHigh = copyFrom.valHigh; + } + + // Create an HSV color range, around 'hue' (0-180, 2 degrees) + public HSVRange(int hue, int hRange, int sLo, int sHi, int vLo, int vHi) { + while (hue > 180) { + hue -= 180; + } + while (hue < 0) { + hue += 180; + } + hueLow = hue - Math.min(Math.abs(hRange), 89); + hueHigh = hue + Math.min(Math.abs(hRange), 89); + satLow = Math.min(sLo, sHi); + satHigh = Math.max(sLo, sHi); + valLow = Math.min(vLo, vHi); + valHigh = Math.max(vLo, vHi); + } + + public HSVRange makeWrapAround() { + if (hueLow >= 0) { + return null; + } + return new HSVRange(180 + hueLow, 180, this); + } + + public HSVRange truncateRange() { + if (hueLow < 0) { + return new HSVRange(0, hueHigh, this); + } + return null; + } + + public Scalar lowEdge() { + return new Scalar(hueLow, satLow, valLow); + } + + public Scalar highEdge() { + return new Scalar(hueHigh, satHigh, valHigh); + } +} diff --git a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java new file mode 100644 index 00000000..0722b143 --- /dev/null +++ b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java @@ -0,0 +1,153 @@ +package com.technototes.vision.subsystem; + +import com.technototes.library.subsystem.Subsystem; +import com.technototes.vision.HSVRange; +import com.technototes.vision.hardware.Camera; +import org.opencv.core.Core; +import org.opencv.core.Mat; +import org.opencv.core.Rect; +import org.opencv.core.Scalar; +import org.opencv.imgproc.Imgproc; +import org.openftc.easyopencv.OpenCvCameraRotation; +import org.openftc.easyopencv.OpenCvPipeline; + +/** + * A vision streaming pipeline to enable vision processing during an opmode + */ +@SuppressWarnings("unused") +public abstract class BasicVisionSubsystem extends OpenCvPipeline implements Subsystem { + + /** + * The Camera object this subsystem is processing frames from + */ + protected Camera camera; + protected int width, height; + protected OpenCvCameraRotation rotation; + protected Mat curFrameRGB; + protected boolean pipelineSet; + + /** + * Create the subsystem with the Camera provided + * + * @param c The camera to process frames from + */ + public BasicVisionSubsystem(Camera c, int w, int h, OpenCvCameraRotation rot) { + camera = c; + width = w; + height = h; + rotation = rot; + curFrameRGB = null; + pipelineSet = false; + } + + /** + * Get the Camera device that frames are being processed from + * + * @return the Camera device in use + */ + public Camera getDevice() { + return camera; + } + + protected void beginStreaming() { + camera.startStreaming(width, height, rotation); + } + + public void startVisionPipeline() { + camera.setPipeline(this); + pipelineSet = true; + // The i -> lambda appears to be for *error reporting* so this line is silly: + camera.openCameraDeviceAsync(this::beginStreaming, i -> startVisionPipeline()); + } + + public void stopVisionPipeline() { + camera.setPipeline(null); + pipelineSet = false; + camera.closeCameraDeviceAsync(() -> { + /* Do we need to do anything to stop the vision pipeline? */ + }); + } + + public BasicVisionSubsystem startStreaming() { + beginStreaming(); + return this; + } + + /** + * Stop frame processing + * + * @return this PipelineSubsystem (for chaining) + */ + public BasicVisionSubsystem stopStreaming() { + if (pipelineSet) { + stopVisionPipeline(); + } + camera.stopStreaming(); + return this; + } + + abstract int numRectangles(); + + abstract Rect getRect(int rectNumber); + + public abstract void runDetection(Mat inputHSV, int rectNumber); + + protected void detectionProcessing(Mat frame) { + // Put the input matrix in a member variable, so that other functions can draw on it + curFrameRGB = frame; + int count = numRectangles(); + + for (int i = 0; i < count; i++) { + // First, slice the smaller rectangle out of the overall bitmap: + Rect r = getRect(i); + Mat subRectRGB = curFrameRGB.submat(r.y, r.y + r.height, r.x, r.x + r.width); + + // Next, convert the RGB image to HSV, because HUE is much easier to identify colors in + // The output is in 'customColorSpace' + Mat subRectHSV = new Mat(); + Imgproc.cvtColor(subRectRGB, subRectHSV, Imgproc.COLOR_RGB2HSV); + runDetection(subRectHSV, i); + } + } + + @Override + public Mat processFrame(Mat input) { + detectionProcessing(input); + return input; + } + + public void init(Mat firstFrame) { + detectionProcessing(firstFrame); + } + + protected int countColorsInRect(HSVRange range, Mat imgHSV, Mat telemetryRGB, int xOffset, int yOffset) { + int totalColorCount = 0; + // Since we might have a hue range of -15 to 15 to detect red, + // make the range 165 to 180 and run countColorsInRect with just that range first + HSVRange handleRedWrap = range.makeWrapAround(); + if (handleRedWrap != null) { + totalColorCount += countColorsInRect(handleRedWrap, imgHSV, telemetryRGB, xOffset, yOffset); + range = range.truncateRange(); + } + Scalar low = range.lowEdge(); + Scalar high = range.highEdge(); + // Check to see which pixels are between low and high, output into a boolean matrix Cr + Mat count = new Mat(); + Core.inRange(imgHSV, low, high, count); + // TODO: It seems like there should be a more optimized way to do this. + for (int i = 0; i < count.width(); i++) { + for (int j = 0; j < count.height(); j++) { + if (count.get(j, i)[0] > 0) { + totalColorCount++; + // Draw a dots on the image at this point - input was put into img + if (telemetryRGB != null) { + // The color choice makes things stripey, which makes it easier to identify + double[] colorToDraw = ((j + i) & 3) != 0 ? low.val : high.val; + imgHSV.put(j + yOffset, i + xOffset, colorToDraw); + } + } + } + } + return totalColorCount; + } +} diff --git a/Vision/src/main/java/com/technototes/vision/subsystem/PipelineSubsystem.java b/Vision/src/main/java/com/technototes/vision/subsystem/PipelineSubsystem.java deleted file mode 100644 index 63d98d35..00000000 --- a/Vision/src/main/java/com/technototes/vision/subsystem/PipelineSubsystem.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.technototes.vision.subsystem; - -import com.technototes.library.subsystem.Subsystem; -import com.technototes.vision.hardware.Camera; -import org.openftc.easyopencv.OpenCvCameraRotation; - -/** - * A vision streaming pipeline to enable vision processing during an opmode - */ -@SuppressWarnings("unused") -public class PipelineSubsystem implements Subsystem { - - /** - * The Camera object this subsystem is processing frames from - */ - protected Camera camera; - - /** - * Create the subsystem with the Camera provided - * - * @param c The camera to process frames from - */ - public PipelineSubsystem(Camera c) { - camera = c; - } - - /** - * Get the Camera device that frames are being processed from - * - * @return the Camera device in use - */ - public Camera getDevice() { - return camera; - } - - /** - * This begins streaming frames from the camera - * - * @param width The width of the frame (constrained to a specific range, based on the camera device) - * @param height The height of the frame (constrained based on the camera device) - * @return this PipelineSubsystem (for chaining, I guess?) - */ - public PipelineSubsystem startStreaming(int width, int height) { - camera.startStreaming(width, height); - return this; - } - - /** - * This begins streaming frames from the camera - * - * @param width The width of the frame (constrained to a specific range, based on the camera device) - * @param height The height of the frame (consrained based on the camera device) - * @param rotation The rotation of the frame to acquire - * @return this PipelineSubsystem (for chaining, I guess?) - */ - public PipelineSubsystem startStreaming(int width, int height, OpenCvCameraRotation rotation) { - camera.startStreaming(width, height, rotation); - return this; - } - - /** - * Stop frame processing - * - * @return this PipelineSubsystem (for chaining) - */ - public PipelineSubsystem stopStreaming() { - camera.stopStreaming(); - return this; - } -} From 7986261c4a6d6e75c7da407f586a33fe618eb1d1 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Fri, 13 Oct 2023 22:17:30 -0700 Subject: [PATCH 10/34] Finished spelling fix for propogate->propagate --- .../library/hardware/motor/EncodedMotorGroup.java | 6 +++--- .../com/technototes/library/hardware/motor/MotorGroup.java | 4 ++-- .../com/technototes/library/hardware/servo/ServoGroup.java | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java index 6931cff9..94104972 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java @@ -37,7 +37,7 @@ public Motor[] getAllDevices() { } @Override - public void propogate(double value) { + public void propagate(double value) { for (Motor m : followers) { m.setSpeed(value); } @@ -46,13 +46,13 @@ public void propogate(double value) { @Override public void setVelocity(double tps) { super.setVelocity(tps); - propogate(super.getSpeed()); + propagate(super.getSpeed()); } @Override public boolean setPosition(double ticks, double speed) { boolean b = super.setPosition(ticks, speed); - propogate(super.getSpeed()); + propagate(super.getSpeed()); return b; } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java index 77744e0d..aa8db24b 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java @@ -37,7 +37,7 @@ public Motor[] getAllDevices() { } @Override - public void propogate(double value) { + public void propagate(double value) { for (Motor m : followers) { m.setSpeed(value); } @@ -46,6 +46,6 @@ public void propogate(double value) { @Override public void setSpeed(double speed) { super.setSpeed(speed); - propogate(speed); + propagate(speed); } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java index 3f5828b3..616b977a 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java @@ -39,7 +39,7 @@ public Servo[] getAllDevices() { } @Override - public void propogate(double value) { + public void propagate(double value) { for (Servo s : followers) { s.setPosition(value); } @@ -48,7 +48,7 @@ public void propogate(double value) { @Override public void setPosition(double position) { super.setPosition(position); - propogate(position); + propagate(position); } @Override From 75466e9171f01815a70a877ce244e525eb757f93 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Fri, 13 Oct 2023 22:38:23 -0700 Subject: [PATCH 11/34] Not yet used, but the PowerPlay branch is building with everything else --- .../java/com/technototes/vision/HSVRange.java | 9 +++------ .../vision/subsystem/BasicVisionSubsystem.java | 16 +++++++++++----- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/Vision/src/main/java/com/technototes/vision/HSVRange.java b/Vision/src/main/java/com/technototes/vision/HSVRange.java index 658753db..db9e4d88 100644 --- a/Vision/src/main/java/com/technototes/vision/HSVRange.java +++ b/Vision/src/main/java/com/technototes/vision/HSVRange.java @@ -4,12 +4,9 @@ public class HSVRange { - int hueLow; - int hueHigh; - int satLow; - int satHigh; - int valLow; - int valHigh; + int hueLow, hueHigh; + int satLow, satHigh; + int valLow, valHigh; // Private constructor for wrap around/truncation stuff private HSVRange(int hLo, int hHi, HSVRange copyFrom) { diff --git a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java index 0722b143..bd816fe7 100644 --- a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java +++ b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java @@ -86,10 +86,16 @@ public BasicVisionSubsystem stopStreaming() { return this; } - abstract int numRectangles(); + // These are the three functions you need to implement. + // I use this so that you can edit your rectangles in realtime from the FtcDashboard. + // If you don't use FtcDashboard, just make an array of Rect's and be done with it. + // But really, you should be using FtcDashboard. It's much faster to get this right. + // How many rectangles are you checking? + abstract int numRectangles(); + // Get the specific rectangle number abstract Rect getRect(int rectNumber); - + // Process the particular rectangle (you probably want to call countPixelsOfColor ;) ) public abstract void runDetection(Mat inputHSV, int rectNumber); protected void detectionProcessing(Mat frame) { @@ -120,13 +126,13 @@ public void init(Mat firstFrame) { detectionProcessing(firstFrame); } - protected int countColorsInRect(HSVRange range, Mat imgHSV, Mat telemetryRGB, int xOffset, int yOffset) { + protected int countPixelsOfColor(HSVRange range, Mat imgHSV, Mat telemetryRGB, int xOffset, int yOffset) { int totalColorCount = 0; // Since we might have a hue range of -15 to 15 to detect red, // make the range 165 to 180 and run countColorsInRect with just that range first HSVRange handleRedWrap = range.makeWrapAround(); if (handleRedWrap != null) { - totalColorCount += countColorsInRect(handleRedWrap, imgHSV, telemetryRGB, xOffset, yOffset); + totalColorCount += countPixelsOfColor(handleRedWrap, imgHSV, telemetryRGB, xOffset, yOffset); range = range.truncateRange(); } Scalar low = range.lowEdge(); @@ -143,7 +149,7 @@ protected int countColorsInRect(HSVRange range, Mat imgHSV, Mat telemetryRGB, in if (telemetryRGB != null) { // The color choice makes things stripey, which makes it easier to identify double[] colorToDraw = ((j + i) & 3) != 0 ? low.val : high.val; - imgHSV.put(j + yOffset, i + xOffset, colorToDraw); + telemetryRGB.put(j + yOffset, i + xOffset, colorToDraw); } } } From 7d16862a1d502ef3515134c890b527a353c6aad5 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Fri, 13 Oct 2023 23:28:58 -0700 Subject: [PATCH 12/34] Okay, more than just Vision improvements. [move to new branch] --- .../library/command/CommandScheduler.java | 33 +++++++------------ .../command/ParameterCommandWrapper.java | 25 ++++++++++++++ .../library/command/SimpleCommandWrapper.java | 22 +++++++++++++ 3 files changed, 58 insertions(+), 22 deletions(-) create mode 100644 RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommandWrapper.java create mode 100644 RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommandWrapper.java diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java index 41e15ef3..2376f719 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java @@ -8,7 +8,9 @@ import java.util.LinkedHashSet; import java.util.Map; import java.util.Set; +import java.util.function.BiConsumer; import java.util.function.BooleanSupplier; +import java.util.function.Consumer; /** * This is a "singleton" object for scheduling commands. Most usage originates from {@link Command} @@ -22,7 +24,6 @@ * TODO: yoink that method and make static methods for next year's release... */ public final class CommandScheduler { - private static Map commandMap = new HashMap<>(); private static Map> requirementMap = new HashMap<>(); private static Map defaultMap = new HashMap<>(); @@ -42,8 +43,6 @@ public static void setOpMode(CommandOpMode c) { /** * Forcefully halt the opmode - * - * @return the CommandScheduler (useful for chaining) */ public static void terminateOpMode() { opMode.terminate(); @@ -75,9 +74,8 @@ public static synchronized CommandScheduler getInstance() { /** * Alex had a comment "be careful with this" and he's not wrong. - * This removes the old Singleton and creates a new one. That's pretty dangerous... - * - * @return a *new* singleton object (which makes very little sense) + * This used to remove the old Singleton and creates a new one. That was pretty dangerous... + * Now it just resets the scheduler... */ public static void resetScheduler() { Command.clear(); @@ -96,7 +94,6 @@ private CommandScheduler() { * Schedule a command to run * * @param command the command to schedule - * @return the CommandScheduler (useful for chaining) */ public static void schedule(Command command) { schedule(command, () -> true); @@ -106,7 +103,6 @@ public static void schedule(Command command) { * Schedule a command to run * * @param command the command to schedule - * @return the CommandScheduler (useful for chaining) */ public static void scheduleOnce(Command command) { schedule(command); @@ -117,7 +113,6 @@ public static void scheduleOnce(Command command) { * * @param command the command to schedule * @param state the state during which the command should be scheduled - * @return the CommandScheduler (useful for chaining) */ public static void scheduleOnceForState(Command command, CommandOpMode.OpModeState state) { scheduleForState(command, state); @@ -131,7 +126,6 @@ public static void scheduleOnceForState(Command command, CommandOpMode.OpModeSta * * @param command The command to run * @param supplier The condition which also must be true to run the command - * @return The CommandScheduler singleton for chaining */ public static void scheduleInit(Command command, BooleanSupplier supplier) { scheduleForState(command, supplier, CommandOpMode.OpModeState.INIT); @@ -143,7 +137,6 @@ public static void scheduleInit(Command command, BooleanSupplier supplier) { * drive team ensure that the robot is appropriately positioned on the field. * * @param command The command to run - * @return The CommandScheduler singleton for chaining */ public static void scheduleInit(Command command) { scheduleForState(command, () -> true, CommandOpMode.OpModeState.INIT); @@ -158,7 +151,6 @@ public static void scheduleInit(Command command) { * * @param command The command to run repeatedly * @param supplier The condition which must also be true to run the command - * @return The CommandScheduler singleton for chaining */ public static void scheduleJoystick(Command command, BooleanSupplier supplier) { scheduleForState(command, supplier, CommandOpMode.OpModeState.RUN, CommandOpMode.OpModeState.END); @@ -171,7 +163,6 @@ public static void scheduleJoystick(Command command, BooleanSupplier supplier) { * just runs repeatedly * * @param command The command to run repeatedly. - * @return The CommandScheduler singleton for chaining */ public static void scheduleJoystick(Command command) { scheduleForState(command, CommandOpMode.OpModeState.RUN, CommandOpMode.OpModeState.END); @@ -184,7 +175,6 @@ public static void scheduleJoystick(Command command) { * @param command The command to run * @param states The list of states to schedule the command * @param supplier The function to determin in the command should be scheduled - * @return The CommandScheduler singleton for chaining */ public static void scheduleForState( Command command, @@ -202,7 +192,6 @@ public static void scheduleForState( * * @param command The command to run * @param states The list of states to schedule the command - * @return The CommandScheduler singleton for chaining */ public static void scheduleForState(Command command, CommandOpMode.OpModeState... states) { schedule( @@ -217,7 +206,6 @@ public static void scheduleForState(Command command, CommandOpMode.OpModeState.. * * @param dependency The command upon which 'other' depends * @param other The command to schedule when 'dependency' has finished - * @return The CommandScheduler singleton for chaining */ public static void scheduleAfterOther(Command dependency, Command other) { schedule(other, dependency::justFinishedNoCancel); @@ -229,7 +217,6 @@ public static void scheduleAfterOther(Command dependency, Command other) { * * @param dependency The command upon which 'other' depends * @param other The command to schedule when 'dependency' has started - * @return The CommandScheduler singleton for chaining */ public static void scheduleWithOther(Command dependency, Command other) { schedule(other, dependency::justStarted); @@ -242,7 +229,6 @@ public static void scheduleWithOther(Command dependency, Command other) { * @param dependency The command upon which 'other' depends * @param other The command to schedule when 'dependency' has finished * @param additionalCondition The additional condition necessary to be true to schedule the 'other' command - * @return The CommandScheduler singleton for chaining */ public static void scheduleAfterOther(Command dependency, Command other, BooleanSupplier additionalCondition) { schedule(other, () -> dependency.justFinishedNoCancel() && additionalCondition.getAsBoolean()); @@ -255,7 +241,6 @@ public static void scheduleAfterOther(Command dependency, Command other, Boolean * @param dependency The command upon which 'other' depends * @param other The command to schedule when 'dependency' has started * @param additionalCondition The additional condition necessary to be true to schedule the 'other' command - * @return The CommandScheduler singleton for chaining */ public static void scheduleWithOther(Command dependency, Command other, BooleanSupplier additionalCondition) { schedule(other, () -> dependency.justStarted() && additionalCondition.getAsBoolean()); @@ -267,7 +252,6 @@ public static void scheduleWithOther(Command dependency, Command other, BooleanS * * @param command The command to be run when others aren't using that subsystem * @param subsystem The subsystem to run the command against when it's unused - * @return The CommandScheduler singleton for chaining */ public static void scheduleDefault(Command command, Subsystem subsystem) { if (command.getRequirements().contains(subsystem)) { @@ -282,7 +266,6 @@ public static void scheduleDefault(Command command, Subsystem subsystem) { * Register a periodic function to be run once each schedule loop * * @param p The Periodic function to run - * @return The CommandScheduler singleton for chaining */ public static void register(Periodic p) { registered.add(p); @@ -322,7 +305,6 @@ public static Command getCurrent(Subsystem s) { * * @param command The command to schedule * @param supplier The function that returns true when the command should be run - * @return the CommandScheduler singleton for easy chaining */ public static void schedule(Command command, BooleanSupplier supplier) { commandMap.put(command, supplier); @@ -333,6 +315,13 @@ public static void schedule(Command command, BooleanSupplier supplier) { } } + public static void schedule(S req, Consumer methodRef, BooleanSupplier sup) { + schedule(new SimpleCommandWrapper(req, methodRef), sup); + } + public static void schedule(S req, BiConsumer methodRef, T param, BooleanSupplier sup) { + schedule(new ParameterCommandWrapper(req, methodRef, param), sup); + } + /** * This is invoked from inside the CommandOpMode method, during the opCode. * It it the core logic of actually scheduling & running the commands. diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommandWrapper.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommandWrapper.java new file mode 100644 index 00000000..8d023f2d --- /dev/null +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommandWrapper.java @@ -0,0 +1,25 @@ +package com.technototes.library.command; + +import com.technototes.library.subsystem.Subsystem; + +import java.util.function.BiConsumer; +import java.util.function.Consumer; + +public class ParameterCommandWrapper implements Command { + T sub; + U param; + BiConsumer method; + + public ParameterCommandWrapper(T s, BiConsumer m, U arg) { + super(); + s = sub; + param = arg; + method = m; + addRequirements(sub); + } + + @Override + public void execute() { + method.accept(sub, param); + } +} \ No newline at end of file diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommandWrapper.java b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommandWrapper.java new file mode 100644 index 00000000..0ff478ff --- /dev/null +++ b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommandWrapper.java @@ -0,0 +1,22 @@ +package com.technototes.library.command; + +import com.technototes.library.subsystem.Subsystem; + +import java.util.function.Consumer; + +public class SimpleCommandWrapper implements Command { + T sub; + Consumer method; + + public SimpleCommandWrapper(T s, Consumer m) { + super(); + s = sub; + method = m; + addRequirements(sub); + } + + @Override + public void execute() { + method.accept(sub); + } +} From b38a93ed3ca052d3216de9b76eeac731c291f3e0 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sat, 14 Oct 2023 08:14:07 -0700 Subject: [PATCH 13/34] Added consumer/biconsumer versions of CommandSchedule.schedule* functions --- .../library/command/CommandScheduler.java | 75 +++++++++++++++---- ...mandWrapper.java => ParameterCommand.java} | 5 +- ...CommandWrapper.java => SimpleCommand.java} | 4 +- 3 files changed, 66 insertions(+), 18 deletions(-) rename RobotLibrary/src/main/java/com/technototes/library/command/{ParameterCommandWrapper.java => ParameterCommand.java} (67%) rename RobotLibrary/src/main/java/com/technototes/library/command/{SimpleCommandWrapper.java => SimpleCommand.java} (72%) diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java index 2376f719..b5b0eecc 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java @@ -1,9 +1,11 @@ package com.technototes.library.command; import androidx.annotation.Nullable; + import com.technototes.library.general.Periodic; import com.technototes.library.structure.CommandOpMode; import com.technototes.library.subsystem.Subsystem; + import java.util.HashMap; import java.util.LinkedHashSet; import java.util.Map; @@ -65,10 +67,10 @@ public static double getOpModeRuntime() { * * @return The CommandScheduler singleton public static synchronized CommandScheduler getInstance() { - if (instance == null) { - instance = new CommandScheduler(); - } - return instance; + if (instance == null) { + instance = new CommandScheduler(); + } + return instance; } */ @@ -98,6 +100,12 @@ private CommandScheduler() { public static void schedule(Command command) { schedule(command, () -> true); } + public static void schedule(S req, Consumer methodRef) { + schedule(new SimpleCommand(req, methodRef), () -> true); + } + public static void schedule(S req, BiConsumer methodRef, T param) { + schedule(new ParameterCommand(req, methodRef, param), () -> true); + } /** * Schedule a command to run @@ -130,6 +138,12 @@ public static void scheduleOnceForState(Command command, CommandOpMode.OpModeSta public static void scheduleInit(Command command, BooleanSupplier supplier) { scheduleForState(command, supplier, CommandOpMode.OpModeState.INIT); } + public static void scheduleInit(S req, Consumer methodRef, BooleanSupplier supplier) { + scheduleInit(new SimpleCommand(req, methodRef), supplier); + } + public static void scheduleInit(S req, BiConsumer methodRef, T param, BooleanSupplier supplier) { + scheduleInit(new ParameterCommand(req, methodRef, param), supplier); + } /** * Schedule a command to be run recurringly during the 'Init' phase of an opmode. @@ -141,6 +155,12 @@ public static void scheduleInit(Command command, BooleanSupplier supplier) { public static void scheduleInit(Command command) { scheduleForState(command, () -> true, CommandOpMode.OpModeState.INIT); } + public static void scheduleInit(S req, Consumer methodRef) { + scheduleInit(new SimpleCommand(req, methodRef)); + } + public static void scheduleInit(S req, BiConsumer methodRef, T param) { + scheduleInit(new ParameterCommand(req, methodRef, param)); + } /** * Schedules a command to be run during Run and End states, all the time. @@ -177,16 +197,26 @@ public static void scheduleJoystick(Command command) { * @param supplier The function to determin in the command should be scheduled */ public static void scheduleForState( - Command command, - BooleanSupplier supplier, - CommandOpMode.OpModeState... states + Command command, + BooleanSupplier supplier, + CommandOpMode.OpModeState... states ) { schedule( - command.cancelUpon(() -> !opMode.getOpModeState().isState(states)), - () -> supplier.getAsBoolean() && opMode.getOpModeState().isState(states) + command.cancelUpon(() -> !opMode.getOpModeState().isState(states)), + () -> supplier.getAsBoolean() && opMode.getOpModeState().isState(states) ); } + public static void scheduleForState(S req, Consumer methodRef, BooleanSupplier supplier, + CommandOpMode.OpModeState... states) { + scheduleForState(new SimpleCommand(req, methodRef), supplier, states); + } + + public static void scheduleForState(S req, BiConsumer methodRef, T param, BooleanSupplier supplier, + CommandOpMode.OpModeState... states) { + scheduleForState(new ParameterCommand(req, methodRef, param), supplier, states); + } + /** * Schedule a command to be run when the OpMode is one of the provided list of states. * @@ -195,11 +225,20 @@ public static void scheduleForState( */ public static void scheduleForState(Command command, CommandOpMode.OpModeState... states) { schedule( - command.cancelUpon(() -> !opMode.getOpModeState().isState(states)), - () -> opMode.getOpModeState().isState(states) + command.cancelUpon(() -> !opMode.getOpModeState().isState(states)), + () -> opMode.getOpModeState().isState(states) ); } + public static void scheduleForState(S req, Consumer methodRef, CommandOpMode.OpModeState... states) { + scheduleForState(new SimpleCommand(req, methodRef), states); + } + + public static void scheduleForState(S req, BiConsumer methodRef, T param, CommandOpMode.OpModeState... states) { + scheduleForState(new ParameterCommand(req, methodRef, param), states); + } + + /** * Schedule the 'other' command (the second one) when the 'dependency' command has * finished (but *not* been cancelled!). @@ -262,6 +301,15 @@ public static void scheduleDefault(Command command, Subsystem subsystem) { } } + public static void scheduleDefault(S req, Consumer methodRef) { + scheduleDefault(new SimpleCommand(req, methodRef), req); + } + + public static void scheduleDefault(S req, BiConsumer methodRef, T param) { + scheduleDefault(new ParameterCommand(req, methodRef, param), req); + } + + /** * Register a periodic function to be run once each schedule loop * @@ -316,10 +364,11 @@ public static void schedule(Command command, BooleanSupplier supplier) { } public static void schedule(S req, Consumer methodRef, BooleanSupplier sup) { - schedule(new SimpleCommandWrapper(req, methodRef), sup); + schedule(new SimpleCommand(req, methodRef), sup); } + public static void schedule(S req, BiConsumer methodRef, T param, BooleanSupplier sup) { - schedule(new ParameterCommandWrapper(req, methodRef, param), sup); + schedule(new ParameterCommand(req, methodRef, param), sup); } /** diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommandWrapper.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java similarity index 67% rename from RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommandWrapper.java rename to RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java index 8d023f2d..b65331cb 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommandWrapper.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java @@ -3,14 +3,13 @@ import com.technototes.library.subsystem.Subsystem; import java.util.function.BiConsumer; -import java.util.function.Consumer; -public class ParameterCommandWrapper implements Command { +public class ParameterCommand implements Command { T sub; U param; BiConsumer method; - public ParameterCommandWrapper(T s, BiConsumer m, U arg) { + public ParameterCommand(T s, BiConsumer m, U arg) { super(); s = sub; param = arg; diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommandWrapper.java b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java similarity index 72% rename from RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommandWrapper.java rename to RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java index 0ff478ff..8f345c49 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommandWrapper.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java @@ -4,11 +4,11 @@ import java.util.function.Consumer; -public class SimpleCommandWrapper implements Command { +public class SimpleCommand implements Command { T sub; Consumer method; - public SimpleCommandWrapper(T s, Consumer m) { + public SimpleCommand(T s, Consumer m) { super(); s = sub; method = m; From 90c051e9bd180bfa913d421b1b6e6609509b173b Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sat, 14 Oct 2023 15:00:45 -0700 Subject: [PATCH 14/34] Updated tests --- .../library/command/CancelCommandTest.java | 4 +-- .../library/command/CommandGroupTest.java | 4 +-- .../library/command/CommandTest.java | 4 +-- .../command/RequirementCommandTest.java | 8 +++--- .../library/command/SimpleCommandTest.java | 28 +++++++++---------- 5 files changed, 24 insertions(+), 24 deletions(-) diff --git a/RobotLibrary/src/test/java/com/technototes/library/command/CancelCommandTest.java b/RobotLibrary/src/test/java/com/technototes/library/command/CancelCommandTest.java index 4c4ec725..a47ac886 100644 --- a/RobotLibrary/src/test/java/com/technototes/library/command/CancelCommandTest.java +++ b/RobotLibrary/src/test/java/com/technototes/library/command/CancelCommandTest.java @@ -29,9 +29,9 @@ public void scheduleCommand() { Command c = new cmd(); ElapsedTime t = new ElapsedTime(); t.reset(); - CommandScheduler.getInstance().scheduleOnce(c.cancelUpon(() -> c.getRuntime().seconds() > 1)); + CommandScheduler.scheduleOnce(c.cancelUpon(() -> c.getRuntime().seconds() > 1)); while (t.seconds() < 5.5) { - CommandScheduler.getInstance().run(); + CommandScheduler.run(); if (c.justFinished()) System.out.println("finish"); // System.out.println(e++); } diff --git a/RobotLibrary/src/test/java/com/technototes/library/command/CommandGroupTest.java b/RobotLibrary/src/test/java/com/technototes/library/command/CommandGroupTest.java index bf25f7a0..08bada05 100644 --- a/RobotLibrary/src/test/java/com/technototes/library/command/CommandGroupTest.java +++ b/RobotLibrary/src/test/java/com/technototes/library/command/CommandGroupTest.java @@ -15,9 +15,9 @@ public void setup() { @Test public void scheduleCommand() { CommandGroup g = new SequentialCommandGroup(c1, c2, c3, c4, c5); - CommandScheduler.getInstance().schedule(g); + CommandScheduler.schedule(g); for (int i = 0; i < 100; i++) { - CommandScheduler.getInstance().run(); + CommandScheduler.run(); // System.out.println(e++);' } } diff --git a/RobotLibrary/src/test/java/com/technototes/library/command/CommandTest.java b/RobotLibrary/src/test/java/com/technototes/library/command/CommandTest.java index c7a60c51..45a1dbce 100644 --- a/RobotLibrary/src/test/java/com/technototes/library/command/CommandTest.java +++ b/RobotLibrary/src/test/java/com/technototes/library/command/CommandTest.java @@ -20,9 +20,9 @@ public void setup() { public void scheduleCommand() { long i = System.currentTimeMillis(); int e = 0; - CommandScheduler.getInstance().schedule(c.sleep(1)); + CommandScheduler.schedule(c.sleep(1)); while (System.currentTimeMillis() - i < 10500) { - CommandScheduler.getInstance().run(); + CommandScheduler.run(); if (c.justFinished()) System.out.println("finish"); // System.out.println(e++); } diff --git a/RobotLibrary/src/test/java/com/technototes/library/command/RequirementCommandTest.java b/RobotLibrary/src/test/java/com/technototes/library/command/RequirementCommandTest.java index 9fec1e2d..1e4ad95a 100644 --- a/RobotLibrary/src/test/java/com/technototes/library/command/RequirementCommandTest.java +++ b/RobotLibrary/src/test/java/com/technototes/library/command/RequirementCommandTest.java @@ -36,12 +36,12 @@ public void setup() { @Test public void run() { int[] i = new int[1]; - CommandScheduler.getInstance().schedule(command1, () -> i[0] == 0); - CommandScheduler.getInstance().schedule(command2, () -> i[0] == 1); - CommandScheduler.getInstance().schedule(command3, () -> i[0] == 2); + CommandScheduler.schedule(command1, () -> i[0] == 0); + CommandScheduler.schedule(command2, () -> i[0] == 1); + CommandScheduler.schedule(command3, () -> i[0] == 2); for (i[0] = 0; i[0] < 100; i[0]++) { - CommandScheduler.getInstance().run(); + CommandScheduler.run(); System.out.println(" - " + command1.getState() + " - " + command2.getState() + " - " + command3.getState()); } } diff --git a/RobotLibrary/src/test/java/com/technototes/library/command/SimpleCommandTest.java b/RobotLibrary/src/test/java/com/technototes/library/command/SimpleCommandTest.java index 2058e9bc..6ab2ef29 100644 --- a/RobotLibrary/src/test/java/com/technototes/library/command/SimpleCommandTest.java +++ b/RobotLibrary/src/test/java/com/technototes/library/command/SimpleCommandTest.java @@ -43,13 +43,13 @@ public void scheduleCommandNoCancel() { InstantCommand command = new InstantCommand(); // Creating a command shouldn't cause it to be scheduled - CommandScheduler.getInstance().run(); + CommandScheduler.run(); assertEquals(0, command.initialized); assertEquals(0, command.executed); assertEquals(0, command.ended); assertEquals(0, command.canceled); - CommandScheduler.getInstance().schedule(command); + CommandScheduler.schedule(command); // Scheduling a command won't cause it to run until after run() assertEquals(0, command.initialized); @@ -57,7 +57,7 @@ public void scheduleCommandNoCancel() { assertEquals(0, command.ended); assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); // ?? The first run after scheduling a command doesn't do anything for the command // Yes because the first one puts the command into the state of intialization, @@ -68,7 +68,7 @@ public void scheduleCommandNoCancel() { assertEquals(0, command.ended); assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); /* KBF: This is a little odd. For reasons that are obvious in the code, the initialized state exists only before first execution, but not between command @@ -83,7 +83,7 @@ public void scheduleCommandNoCancel() { // assertEquals(0, command.ended); // assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); // The third run after scheduling a command finally runs it assertEquals(1, command.initialized); @@ -91,7 +91,7 @@ public void scheduleCommandNoCancel() { assertEquals(0, command.ended); assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); // The fourth run after scheduling a 'one-shot' command finally ends it assertEquals(1, command.initialized); @@ -99,14 +99,14 @@ public void scheduleCommandNoCancel() { assertEquals(1, command.ended); assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); // An ended command doesn't get scheduled anymore assertEquals(1, command.initialized); assertEquals(1, command.executed); assertEquals(1, command.ended); assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); // An ended command doesn't get scheduled anymore // ?? But it does get initialized // when you schedule a command, its added to a loop. @@ -121,7 +121,7 @@ public void scheduleCommandNoCancel() { // assertEquals(1, command.ended); // assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); // An ended command doesn't get scheduled anymore // ?? But it does get initialized // ?? And executed?? @@ -130,7 +130,7 @@ public void scheduleCommandNoCancel() { assertEquals(1, command.ended); assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); // An ended command doesn't get scheduled anymore // ?? But it does get initialized // ?? And executed?? @@ -140,13 +140,13 @@ public void scheduleCommandNoCancel() { assertEquals(2, command.ended); assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); assertEquals(2, command.initialized); assertEquals(2, command.executed); assertEquals(2, command.ended); assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); // KBF: Commented out, see comment above // assertEquals(3, command.initialized); @@ -154,13 +154,13 @@ public void scheduleCommandNoCancel() { // assertEquals(2, command.ended); // assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); assertEquals(3, command.initialized); assertEquals(3, command.executed); assertEquals(2, command.ended); assertEquals(0, command.canceled); - CommandScheduler.getInstance().run(); + CommandScheduler.run(); assertEquals(3, command.initialized); assertEquals(3, command.executed); assertEquals(3, command.ended); From 20af31d153afab315a2c920fdbb4be0e63aed092 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sat, 14 Oct 2023 16:06:39 -0700 Subject: [PATCH 15/34] Added some comments and examples, plus non-controlling commands --- .../library/command/CommandScheduler.java | 270 ++++++++++++------ .../library/command/ParameterCommand.java | 12 +- .../command/ParameterRequiredCommand.java | 24 ++ .../library/command/SimpleCommand.java | 11 +- .../command/SimpleRequiredCommand.java | 22 ++ 5 files changed, 241 insertions(+), 98 deletions(-) create mode 100644 RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java create mode 100644 RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java index b5b0eecc..3a7f1882 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java @@ -26,11 +26,11 @@ * TODO: yoink that method and make static methods for next year's release... */ public final class CommandScheduler { - private static Map commandMap = new HashMap<>(); - private static Map> requirementMap = new HashMap<>(); - private static Map defaultMap = new HashMap<>(); + private static final Map commandMap = new HashMap<>(); + private static final Map> requirementMap = new HashMap<>(); + private static final Map defaultMap = new HashMap<>(); - private static Set registered = new LinkedHashSet<>(); + private static final Set registered = new LinkedHashSet<>(); private static CommandOpMode opMode; @@ -59,39 +59,56 @@ public static double getOpModeRuntime() { return opMode.getOpModeRuntime(); } - // The Singleton CommandScheduler - // private static CommandScheduler instance; + /** + * Reset the scheduler... + */ + public static void resetScheduler() { + Command.clear(); + } /** - * Get (or create) the singleton CommandScheduler object + * Schedule a command to run (just use "schedule") * - * @return The CommandScheduler singleton - public static synchronized CommandScheduler getInstance() { - if (instance == null) { - instance = new CommandScheduler(); + * @param command the command to schedule + */ + public static void scheduleOnce(Command command) { + schedule(command); } - return instance; + /** + * Schedule a command to run during a particular OpModeState + * You can just use scheduleForState instead... + * + * @param command the command to schedule + * @param state the state during which the command should be scheduled + */ + public static void scheduleOnceForState(Command command, CommandOpMode.OpModeState state) { + scheduleForState(command, state); } + /** + * Schedules a command to be run during Run and End states, all the time. + * This is called "Schedule for Joystick" because joysticks don't really have a + * condition you might consider 'useful for triggering', so the command + * just runs repeatedly. This adds the requirement that the BooleanSupplier function + * is also true for the command to be run. + * + * @param command The command to run repeatedly + * @param supplier The condition which must also be true to run the command */ - + public static void scheduleJoystick(Command command, BooleanSupplier supplier) { + scheduleForState(command, supplier, CommandOpMode.OpModeState.RUN, CommandOpMode.OpModeState.END); + } /** - * Alex had a comment "be careful with this" and he's not wrong. - * This used to remove the old Singleton and creates a new one. That was pretty dangerous... - * Now it just resets the scheduler... + * Schedules a command to be run during Run and End states, all the time. + * This is called "Schedule for Joystick" because joysticks don't really have a + * condition you might consider 'useful for triggering', so the command + * just runs repeatedly + * + * @param command The command to run repeatedly. */ - public static void resetScheduler() { - Command.clear(); + public static void scheduleJoystick(Command command) { + scheduleForState(command, CommandOpMode.OpModeState.RUN, CommandOpMode.OpModeState.END); } - /* - private CommandScheduler() { - commandMap = new HashMap<>(); - requirementMap = new HashMap<>(); - defaultMap = new HashMap<>(); - registered = new LinkedHashSet<>(); - } - */ - /** * Schedule a command to run * @@ -100,30 +117,56 @@ private CommandScheduler() { public static void schedule(Command command) { schedule(command, () -> true); } + /** + * Schedule a method on a subsystem to run as a command: + * {@code + * CommandScheduler.schedule(robot.intakeSubsystem, IntakeSubsystem::activate) + * } + * + * @param req the subsystem required + * @param methodRef the function to invoke on the subsystem + */ public static void schedule(S req, Consumer methodRef) { - schedule(new SimpleCommand(req, methodRef), () -> true); + schedule(req, methodRef, () -> true); } + /** + * Schedule a method on a subsystem to run as a command, that takes an extra parameter: + * {@code + * // This command effectively calls robot.liftSubsys.GoToPosition(LiftPos.MIDDLE) + * CommandScheduler.schedule(robot.liftSubsys, LiftSubsystem::GoToPosition, LiftPos.MIDDLE) + * } + * + * @param req the subsystem required + * @param methodRef the function to invoke on the subsystem + * @param param the parameter to pass to the function being called + */ public static void schedule(S req, BiConsumer methodRef, T param) { - schedule(new ParameterCommand(req, methodRef, param), () -> true); + schedule(req, methodRef, param, () -> true); } - /** - * Schedule a command to run + * Schedule a method to run as a command that does not require controlling a subsystem! + * {@code + * CommandScheduler.schedule(robot.signalSubsystem::blinkLights) + * } * - * @param command the command to schedule + * @param methodRef the function to invoke on the subsystem */ - public static void scheduleOnce(Command command) { - schedule(command); + public static void schedule(Runnable methodRef) { + schedule(methodRef, () -> true); } - /** - * Schedule a command to run during a particular OpModeState + * Schedule a method on a subsystem to run as a command, that takes an extra parameter: + * {@code + * // This command effectively calls robot.liftSubsys.GoToPosition(LiftPos.MIDDLE) + * CommandScheduler.schedule(robot.liftSubsys, LiftSubsystem::GoToPosition, LiftPos.MIDDLE) + * } * - * @param command the command to schedule - * @param state the state during which the command should be scheduled + * @param req the subsystem required + * @param methodRef the function to invoke on the subsystem + * @param param the parameter to pass to the function being called */ - public static void scheduleOnceForState(Command command, CommandOpMode.OpModeState state) { - scheduleForState(command, state); + public static void schedule(Consumer methodRef, T param) { + schedule(methodRef, param, () -> true); } /** @@ -138,11 +181,77 @@ public static void scheduleOnceForState(Command command, CommandOpMode.OpModeSta public static void scheduleInit(Command command, BooleanSupplier supplier) { scheduleForState(command, supplier, CommandOpMode.OpModeState.INIT); } + /** + * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode. + * This can be used for vision, as well as running any system to help the + * drive team ensure that the robot is appropriately positioned on the field. + * This will only be run if the BooleanSupplier 'supplier' is also true! + * {@code + * // This command effectively calls robot.visionSystem.seeTheThing() + * CommandScheduler.scheduleInit(robot.visionSystem, TokenIdentifyingSubsystem::seeTheThing, () -> TokenIdentifyingSubsystem.CAMERA_CONNECTED) + * } + * + * @param req the subsystem required + * @param methodRef the function to invoke on the subsystem + * @param supplier the boolean function to run to determine if the function should be run + */ public static void scheduleInit(S req, Consumer methodRef, BooleanSupplier supplier) { - scheduleInit(new SimpleCommand(req, methodRef), supplier); + scheduleInit(new SimpleRequiredCommand<>(req, methodRef), supplier); } + /** + * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode, + * that also takes a parameter. + * This can be used for vision, as well as running any system to help the + * drive team ensure that the robot is appropriately positioned on the field. + * This will only be run if the BooleanSupplier 'supplier' is also true! + * {@code + * // This command effectively calls robot.visionSystem.seeTheThing(Alliance.RED), + * // but only if TokenIdentifyingSubsystem.CAMERA_CONNECTED is also true + * CommandScheduler.scheduleInit(robot.visionSystem, TokenIdentifyingSubsystem::seeTheThing, Alliance.RED, () -> TokenIdentifyingSubsystem.CAMERA_CONNECTED) + * } + * @param req the subsystem required + * @param methodRef the function to invoke on the subsystem + * @param param the argument passed to the methodRef function + * @param supplier the boolean function to run to determine if the function should be run + */ public static void scheduleInit(S req, BiConsumer methodRef, T param, BooleanSupplier supplier) { - scheduleInit(new ParameterCommand(req, methodRef, param), supplier); + scheduleInit(new ParameterRequiredCommand(req, methodRef, param), supplier); + } + /** + * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode. + * This can be used for vision, as well as running any system to help the + * drive team ensure that the robot is appropriately positioned on the field. + * This will only be run if the BooleanSupplier 'supplier' is also true! + * {@code + * // This command effectively calls robot.visionSystem.seeTheThing() + * CommandScheduler.scheduleInit(robot.visionSystem, TokenIdentifyingSubsystem::seeTheThing, () -> TokenIdentifyingSubsystem.CAMERA_CONNECTED) + * } + * + * @param req the subsystem required + * @param methodRef the function to invoke on the subsystem + * @param supplier the boolean function to run to determine if the function should be run + */ + public static void scheduleInit(Runnable methodRef, BooleanSupplier supplier) { + scheduleInit(new SimpleCommand(methodRef), supplier); + } + /** + * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode, + * that also takes a parameter. + * This can be used for vision, as well as running any system to help the + * drive team ensure that the robot is appropriately positioned on the field. + * This will only be run if the BooleanSupplier 'supplier' is also true! + * {@code + * // This command effectively calls robot.visionSystem.seeTheThing(Alliance.RED), + * // but only if TokenIdentifyingSubsystem.CAMERA_CONNECTED is also true + * CommandScheduler.scheduleInit(robot.visionSystem, TokenIdentifyingSubsystem::seeTheThing, Alliance.RED, () -> TokenIdentifyingSubsystem.CAMERA_CONNECTED) + * } + * @param req the subsystem required + * @param methodRef the function to invoke on the subsystem + * @param param the argument passed to the methodRef function + * @param supplier the boolean function to run to determine if the function should be run + */ + public static void scheduleInit(Consumer methodRef, T param, BooleanSupplier supplier) { + scheduleInit(new ParameterCommand<>(methodRef, param), supplier); } /** @@ -156,38 +265,19 @@ public static void scheduleInit(Command command) { scheduleForState(command, () -> true, CommandOpMode.OpModeState.INIT); } public static void scheduleInit(S req, Consumer methodRef) { - scheduleInit(new SimpleCommand(req, methodRef)); + scheduleInit(new SimpleRequiredCommand(req, methodRef)); } public static void scheduleInit(S req, BiConsumer methodRef, T param) { - scheduleInit(new ParameterCommand(req, methodRef, param)); + scheduleInit(new ParameterRequiredCommand(req, methodRef, param)); } - - /** - * Schedules a command to be run during Run and End states, all the time. - * This is called "Schedule for Joystick" because joysticks don't really have a - * condition you might consider 'useful for triggering', so the command - * just runs repeatedly. This adds the requirement that the BooleanSupplier function - * is also true for the command to be run. - * - * @param command The command to run repeatedly - * @param supplier The condition which must also be true to run the command - */ - public static void scheduleJoystick(Command command, BooleanSupplier supplier) { - scheduleForState(command, supplier, CommandOpMode.OpModeState.RUN, CommandOpMode.OpModeState.END); + public static void scheduleInit(Runnable methodRef) { + scheduleInit(new SimpleCommand(methodRef)); } - - /** - * Schedules a command to be run during Run and End states, all the time. - * This is called "Schedule for Joystick" because joysticks don't really have a - * condition you might consider 'useful for triggering', so the command - * just runs repeatedly - * - * @param command The command to run repeatedly. - */ - public static void scheduleJoystick(Command command) { - scheduleForState(command, CommandOpMode.OpModeState.RUN, CommandOpMode.OpModeState.END); + public static void scheduleInit(Consumer methodRef, T param) { + scheduleInit(new ParameterCommand<>(methodRef, param)); } + /** * Schedule a command to be run when the OpMode is one of the provided list of states and the * 'supplier' boolean function is also true. @@ -209,12 +299,19 @@ public static void scheduleForState( public static void scheduleForState(S req, Consumer methodRef, BooleanSupplier supplier, CommandOpMode.OpModeState... states) { - scheduleForState(new SimpleCommand(req, methodRef), supplier, states); + scheduleForState(new SimpleRequiredCommand(req, methodRef), supplier, states); } - public static void scheduleForState(S req, BiConsumer methodRef, T param, BooleanSupplier supplier, CommandOpMode.OpModeState... states) { - scheduleForState(new ParameterCommand(req, methodRef, param), supplier, states); + scheduleForState(new ParameterRequiredCommand(req, methodRef, param), supplier, states); + } + public static void scheduleForState(Runnable methodRef, BooleanSupplier supplier, + CommandOpMode.OpModeState... states) { + scheduleForState(new SimpleCommand(methodRef), supplier, states); + } + public static void scheduleForState(Consumer methodRef, T param, BooleanSupplier supplier, + CommandOpMode.OpModeState... states) { + scheduleForState(new ParameterCommand<>(methodRef, param), supplier, states); } /** @@ -229,13 +326,17 @@ public static void scheduleForState(Command command, CommandOpMode.OpModeState.. () -> opMode.getOpModeState().isState(states) ); } - public static void scheduleForState(S req, Consumer methodRef, CommandOpMode.OpModeState... states) { - scheduleForState(new SimpleCommand(req, methodRef), states); + scheduleForState(new SimpleRequiredCommand(req, methodRef), states); } - public static void scheduleForState(S req, BiConsumer methodRef, T param, CommandOpMode.OpModeState... states) { - scheduleForState(new ParameterCommand(req, methodRef, param), states); + scheduleForState(new ParameterRequiredCommand(req, methodRef, param), states); + } + public static void scheduleForState(Runnable methodRef, CommandOpMode.OpModeState... states) { + scheduleForState(new SimpleCommand(methodRef), states); + } + public static void scheduleForState(Consumer methodRef, T param, CommandOpMode.OpModeState... states) { + scheduleForState(new ParameterCommand<>(methodRef, param), states); } @@ -300,16 +401,13 @@ public static void scheduleDefault(Command command, Subsystem subsystem) { System.err.println("default commands must require their subsystem: " + command.getClass().toString()); } } - public static void scheduleDefault(S req, Consumer methodRef) { - scheduleDefault(new SimpleCommand(req, methodRef), req); + scheduleDefault(new SimpleRequiredCommand(req, methodRef), req); } - public static void scheduleDefault(S req, BiConsumer methodRef, T param) { - scheduleDefault(new ParameterCommand(req, methodRef, param), req); + scheduleDefault(new ParameterRequiredCommand(req, methodRef, param), req); } - /** * Register a periodic function to be run once each schedule loop * @@ -362,13 +460,17 @@ public static void schedule(Command command, BooleanSupplier supplier) { register(s); } } - public static void schedule(S req, Consumer methodRef, BooleanSupplier sup) { - schedule(new SimpleCommand(req, methodRef), sup); + schedule(new SimpleRequiredCommand(req, methodRef), sup); } - public static void schedule(S req, BiConsumer methodRef, T param, BooleanSupplier sup) { - schedule(new ParameterCommand(req, methodRef, param), sup); + schedule(new ParameterRequiredCommand(req, methodRef, param), sup); + } + public static void schedule(Runnable methodRef, BooleanSupplier sup) { + schedule(new SimpleCommand(methodRef), sup); + } + public static void schedule(Consumer methodRef, T param, BooleanSupplier sup) { + schedule(new ParameterCommand<>(methodRef, param), sup); } /** diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java index b65331cb..fa5b2c31 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java @@ -3,22 +3,20 @@ import com.technototes.library.subsystem.Subsystem; import java.util.function.BiConsumer; +import java.util.function.Consumer; -public class ParameterCommand implements Command { - T sub; +public class ParameterCommand implements Command { U param; - BiConsumer method; + Consumer method; - public ParameterCommand(T s, BiConsumer m, U arg) { + public ParameterCommand(Consumer m, U arg) { super(); - s = sub; param = arg; method = m; - addRequirements(sub); } @Override public void execute() { - method.accept(sub, param); + method.accept(param); } } \ No newline at end of file diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java new file mode 100644 index 00000000..38877e8c --- /dev/null +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java @@ -0,0 +1,24 @@ +package com.technototes.library.command; + +import com.technototes.library.subsystem.Subsystem; + +import java.util.function.BiConsumer; + +public class ParameterRequiredCommand implements Command { + T sub; + U param; + BiConsumer method; + + public ParameterRequiredCommand(T s, BiConsumer m, U arg) { + super(); + s = sub; + param = arg; + method = m; + addRequirements(sub); + } + + @Override + public void execute() { + method.accept(sub, param); + } +} \ No newline at end of file diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java index 8f345c49..7c3c7cda 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java @@ -4,19 +4,16 @@ import java.util.function.Consumer; -public class SimpleCommand implements Command { - T sub; - Consumer method; +public class SimpleCommand implements Command { + Runnable method; - public SimpleCommand(T s, Consumer m) { + public SimpleCommand(Runnable m) { super(); - s = sub; method = m; - addRequirements(sub); } @Override public void execute() { - method.accept(sub); + method.run(); } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java new file mode 100644 index 00000000..195a1b11 --- /dev/null +++ b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java @@ -0,0 +1,22 @@ +package com.technototes.library.command; + +import com.technototes.library.subsystem.Subsystem; + +import java.util.function.Consumer; + +public class SimpleRequiredCommand implements Command { + T sub; + Consumer method; + + public SimpleRequiredCommand(T s, Consumer m) { + super(); + s = sub; + method = m; + addRequirements(sub); + } + + @Override + public void execute() { + method.accept(sub); + } +} From 0430a59c165ad8fde5297c1114c04c032176e0f1 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sat, 14 Oct 2023 16:30:50 -0700 Subject: [PATCH 16/34] Added method-ref based command stuff for controls --- .../library/control/CommandInput.java | 154 +++++++++++++++++- .../technototes/library/hardware/Speaker.java | 2 +- 2 files changed, 151 insertions(+), 5 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java index e1fffe63..8275eba8 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java +++ b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java @@ -2,7 +2,15 @@ import com.technototes.library.command.Command; import com.technototes.library.command.CommandScheduler; +import com.technototes.library.command.ParameterCommand; +import com.technototes.library.command.ParameterRequiredCommand; +import com.technototes.library.command.SimpleCommand; +import com.technototes.library.command.SimpleRequiredCommand; +import com.technototes.library.subsystem.Subsystem; + +import java.util.function.BiConsumer; import java.util.function.BooleanSupplier; +import java.util.function.Consumer; /** * Class for gamepad-command integration @@ -20,6 +28,18 @@ public interface CommandInput extends BooleanSupplier { default T whenPressed(Command command) { return schedule(getInstance()::isJustPressed, command); } + default T whenPressed(S req, Consumer methodRef) { + return whenPressed(new SimpleRequiredCommand<>(req, methodRef)); + } + default T whenPressed(S req, BiConsumer methodRef, R param) { + return whenPressed(new ParameterRequiredCommand<>(req, methodRef, param)); + } + default T whenPressed(Runnable methodRef) { + return whenPressed(new SimpleCommand(methodRef)); + } + default T whenPressed(Consumer methodRef, R param) { + return whenPressed(new ParameterCommand<>(methodRef, param)); + } /** * Schedule a command to be run once the input is released. @@ -30,6 +50,19 @@ default T whenPressed(Command command) { default T whenReleased(Command command) { return schedule(getInstance()::isJustReleased, command); } + default T whenReleased(S req, Consumer methodRef) { + return whenReleased(new SimpleRequiredCommand<>(req, methodRef)); + } + default T whenReleased(S req, BiConsumer methodRef, R param) { + return whenReleased(new ParameterRequiredCommand<>(req, methodRef, param)); + } + default T whenReleased(Runnable methodRef) { + return whenReleased(new SimpleCommand(methodRef)); + } + default T whenReleased(Consumer methodRef, R param) { + return whenReleased(new ParameterCommand<>(methodRef, param)); + } + /** * Schedule a command to be run over & over while the input is pressed, @@ -41,6 +74,18 @@ default T whenReleased(Command command) { default T whilePressed(Command command) { return schedule(getInstance()::isPressed, command.cancelUpon(getInstance()::isReleased)); } + default T whilePressed(S req, Consumer methodRef) { + return whilePressed(new SimpleRequiredCommand<>(req, methodRef)); + } + default T whilePressed(S req, BiConsumer methodRef, R param) { + return whilePressed(new ParameterRequiredCommand<>(req, methodRef, param)); + } + default T whilePressed(Runnable methodRef) { + return whilePressed(new SimpleCommand(methodRef)); + } + default T whilePressed(Consumer methodRef, R param) { + return whilePressed(new ParameterCommand<>(methodRef, param)); + } /** * Schedule a command to be run over & over while the input is released, @@ -52,6 +97,18 @@ default T whilePressed(Command command) { default T whileReleased(Command command) { return schedule(getInstance()::isReleased, command.cancelUpon(getInstance()::isPressed)); } + default T whileReleased(S req, Consumer methodRef) { + return whileReleased(new SimpleRequiredCommand<>(req, methodRef)); + } + default T whileReleased(S req, BiConsumer methodRef, R param) { + return whileReleased(new ParameterRequiredCommand<>(req, methodRef, param)); + } + default T whileReleased(Runnable methodRef) { + return whileReleased(new SimpleCommand(methodRef)); + } + default T whileReleased(Consumer methodRef, R param) { + return whileReleased(new ParameterCommand<>(methodRef, param)); + } /** * Schedule a command to be run while the input is pressed, but only once, @@ -64,7 +121,18 @@ default T whileReleased(Command command) { default T whilePressedOnce(Command command) { return schedule(getInstance()::isJustPressed, command.cancelUpon(getInstance()::isReleased)); } - + default T whilePressedOnce(S req, Consumer methodRef) { + return whilePressedOnce(new SimpleRequiredCommand<>(req, methodRef)); + } + default T whilePressedOnce(S req, BiConsumer methodRef, R param) { + return whilePressedOnce(new ParameterRequiredCommand<>(req, methodRef, param)); + } + default T whilePressedOnce(Runnable methodRef) { + return whilePressedOnce(new SimpleCommand(methodRef)); + } + default T whilePressedOnce(Consumer methodRef, R param) { + return whilePressedOnce(new ParameterCommand<>(methodRef, param)); + } /** * Schedule a command to be run over & over while the input is pressed * @@ -74,9 +142,20 @@ default T whilePressedOnce(Command command) { default T whilePressedContinuous(Command command) { return schedule(getInstance()::isPressed, command); } - + default T whilePressedContinuous(S req, Consumer methodRef) { + return whilePressedContinuous(new SimpleRequiredCommand<>(req, methodRef)); + } + default T whilePressedContinuous(S req, BiConsumer methodRef, R param) { + return whilePressedContinuous(new ParameterRequiredCommand<>(req, methodRef, param)); + } + default T whilePressedContinuous(Runnable methodRef) { + return whilePressedContinuous(new SimpleCommand(methodRef)); + } + default T whilePressedContinuous(Consumer methodRef, R param) { + return whilePressedContinuous(new ParameterCommand<>(methodRef, param)); + } /** - * Schdule the command to be run when the input is released, but only once! + * Schedule the command to be run when the input is released, but only once! * * @param command The command to be run * @return The CommandInput<T> instance @@ -84,6 +163,18 @@ default T whilePressedContinuous(Command command) { default T whileReleasedOnce(Command command) { return schedule(getInstance()::isJustReleased, command.cancelUpon(getInstance()::isPressed)); } + default T whileReleasedOnce(S req, Consumer methodRef) { + return whileReleasedOnce(new SimpleRequiredCommand<>(req, methodRef)); + } + default T whileReleasedOnce(S req, BiConsumer methodRef, R param) { + return whileReleasedOnce(new ParameterRequiredCommand<>(req, methodRef, param)); + } + default T whileReleasedOnce(Runnable methodRef) { + return whileReleasedOnce(new SimpleCommand(methodRef)); + } + default T whileReleasedOnce(Consumer methodRef, R param) { + return whileReleasedOnce(new ParameterCommand<>(methodRef, param)); + } /** * Schedule a command to be run when the input was just toggled @@ -95,6 +186,18 @@ default T whileReleasedOnce(Command command) { default T whenToggled(Command command) { return schedule(getInstance()::isJustToggled, command); } + default T whenToggled(S req, Consumer methodRef) { + return whenToggled(new SimpleRequiredCommand<>(req, methodRef)); + } + default T whenToggled(S req, BiConsumer methodRef, R param) { + return whenToggled(new ParameterRequiredCommand<>(req, methodRef, param)); + } + default T whenToggled(Runnable methodRef) { + return whenToggled(new SimpleCommand(methodRef)); + } + default T whenToggled(Consumer methodRef, R param) { + return whenToggled(new ParameterCommand<>(methodRef, param)); + } /** * Schedule the command to be run when the input has only stopped being toggled @@ -105,6 +208,18 @@ default T whenToggled(Command command) { default T whenInverseToggled(Command command) { return schedule(getInstance()::isJustInverseToggled, command); } + default T whenInverseToggled(S req, Consumer methodRef) { + return whenInverseToggled(new SimpleRequiredCommand<>(req, methodRef)); + } + default T whenInverseToggled(S req, BiConsumer methodRef, R param) { + return whenInverseToggled(new ParameterRequiredCommand<>(req, methodRef, param)); + } + default T whenInverseToggled(Runnable methodRef) { + return whenInverseToggled(new SimpleCommand(methodRef)); + } + default T whenInverseToggled(Consumer methodRef, R param) { + return whenInverseToggled(new ParameterCommand<>(methodRef, param)); + } /** * Schedule the command to be run while the input is changing. @@ -118,6 +233,18 @@ default T whenInverseToggled(Command command) { default T whileToggled(Command command) { return schedule(getInstance()::isToggled, command.cancelUpon(getInstance()::isInverseToggled)); } + default T whileToggled(S req, Consumer methodRef) { + return whileToggled(new SimpleRequiredCommand<>(req, methodRef)); + } + default T whileToggled(S req, BiConsumer methodRef, R param) { + return whileToggled(new ParameterRequiredCommand<>(req, methodRef, param)); + } + default T whileToggled(Runnable methodRef) { + return whileToggled(new SimpleCommand(methodRef)); + } + default T whileToggled(Consumer methodRef, R param) { + return whileToggled(new ParameterCommand<>(methodRef, param)); + } /** * Schedule the command to run over & over while the input is *not* changing @@ -129,6 +256,18 @@ default T whileToggled(Command command) { default T whileInverseToggled(Command command) { return schedule(getInstance()::isInverseToggled, command.cancelUpon(getInstance()::isToggled)); } + default T whileInverseToggled(S req, Consumer methodRef) { + return whileInverseToggled(new SimpleRequiredCommand<>(req, methodRef)); + } + default T whileInverseToggled(S req, BiConsumer methodRef, R param) { + return whileInverseToggled(new ParameterRequiredCommand<>(req, methodRef, param)); + } + default T whileInverseToggled(Runnable methodRef) { + return whileInverseToggled(new SimpleCommand(methodRef)); + } + default T whileInverseToggled(Consumer methodRef, R param) { + return whileInverseToggled(new ParameterCommand<>(methodRef, param)); + } /** * Return instance of class parameter @@ -164,6 +303,8 @@ default T schedule(Command command) { * 'press' will be executed once when the input is pressed. * 'release' will be executed once when the input is released. * + * You could just use button.whenPressed(press).whenRelease(release) + * * @param press The command to run on Press * @param release The command to run on Release * @return The CommandInput<T> instance @@ -176,7 +317,9 @@ default T whenPressedReleased(Command press, Command release) { /** * For scheduling a pair commands for while the input is pressed and released. * 'press' will be executed over & over while the input is pressed. - * 'release' will be exeucted over & over while the input is released. + * 'release' will be executed over & over while the input is released. + * + * Just use button.whilePressed(...).whileReleased(...) * * @param press The command to run on Press * @param release The command to run on Release @@ -191,6 +334,9 @@ default T whilePressedReleased(Command press, Command release) { * For scheduling a pair of "opposite" commands for toggling when something * is or is not being toggled * + * For non-command (method ref) usage, just use + * button.whenToggled(toggled).whenInverseToggled(notToggled) + * * @param toggle The command to run when the input flips states * @param itoggle The command to run when the input has not changed states * @return The CommandInput<T> instance diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/Speaker.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/Speaker.java index a03f418b..9fd0780c 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/Speaker.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/Speaker.java @@ -10,7 +10,7 @@ /** * There's just no possible way I care about this. I think there are rules about *not* playing * anything through the speaker now, anyway. This is going away. (The rules were created because - * of Alex, if I recall correctly... + * of Alex, if I recall correctly...) */ @Deprecated public class Speaker { From 2f016de7d0d43111639f0dccb63db0c545023f06 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sat, 14 Oct 2023 21:43:46 -0700 Subject: [PATCH 17/34] Syntactic helpers for auto paths --- .../trajectorysequence/TrajectoryPath.java | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java diff --git a/Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java b/Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java new file mode 100644 index 00000000..a4416cea --- /dev/null +++ b/Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java @@ -0,0 +1,67 @@ +package com.technototes.path.trajectorysequence; + +import com.acmerobotics.roadrunner.geometry.Pose2d; +import com.technototes.path.geometry.ConfigurablePose; +import com.technototes.path.geometry.ConfigurablePoseD; + +import java.util.function.Function; + +public interface TrajectoryPath extends Function, TrajectorySequence> { + + static TrajectoryPath lineTo(ConfigurablePose start, ConfigurablePose end) { + return b -> b.apply(start.toPose()).lineTo(end.toPose().vec()).build(); + } + + static TrajectoryPath lineTo(ConfigurablePoseD start, ConfigurablePoseD end) { + return b -> b.apply(start.toPose()).lineTo(end.toPose().vec()).build(); + } + + static TrajectoryPath linesTo(ConfigurablePoseD start, ConfigurablePoseD... points) { + return b -> { + TrajectorySequenceBuilder bld = b.apply(start.toPose()); + for (ConfigurablePoseD d : points) { + bld = bld.lineTo(d.toPose().vec()); + } + return bld.build(); + }; + } + + static TrajectoryPath linesTo(ConfigurablePose start, ConfigurablePose... points) { + return b -> { + TrajectorySequenceBuilder bld = b.apply(start.toPose()); + for (ConfigurablePose d : points) { + bld = bld.lineTo(d.toPose().vec()); + } + return bld.build(); + }; + } + + static TrajectoryPath lineToLinearHeading(ConfigurablePose start, ConfigurablePose end) { + return b -> b.apply(start.toPose()).lineToLinearHeading(end.toPose()).build(); + } + + static TrajectoryPath lineToLinearHeading(ConfigurablePoseD start, ConfigurablePoseD end) { + return b -> b.apply(start.toPose()).lineToLinearHeading(end.toPose()).build(); + } + + static TrajectoryPath linesToLinearHeadings(ConfigurablePoseD start, ConfigurablePoseD... points) { + return b -> { + TrajectorySequenceBuilder bld = b.apply(start.toPose()); + for (ConfigurablePoseD d : points) { + bld = bld.lineToLinearHeading(d.toPose()); + } + return bld.build(); + }; + } + + static TrajectoryPath linesToLinearHeadings(ConfigurablePose start, ConfigurablePose... points) { + return b -> { + TrajectorySequenceBuilder bld = b.apply(start.toPose()); + for (ConfigurablePose d : points) { + bld = bld.lineToLinearHeading(d.toPose()); + } + return bld.build(); + }; + } +} + From 0634a1c33f57c8eae13000d393f473b6cc93615f Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sat, 14 Oct 2023 22:19:43 -0700 Subject: [PATCH 18/34] Source Formatting --- .../trajectorysequence/TrajectoryPath.java | 3 - .../library/command/CommandScheduler.java | 114 +++++++++++++----- .../library/command/ParameterCommand.java | 4 +- .../command/ParameterRequiredCommand.java | 4 +- .../library/command/SimpleCommand.java | 2 +- .../command/SimpleRequiredCommand.java | 2 +- .../library/control/CommandInput.java | 48 +++++++- .../subsystem/BasicVisionSubsystem.java | 2 + 8 files changed, 141 insertions(+), 38 deletions(-) diff --git a/Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java b/Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java index a4416cea..288145c0 100644 --- a/Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java +++ b/Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java @@ -3,11 +3,9 @@ import com.acmerobotics.roadrunner.geometry.Pose2d; import com.technototes.path.geometry.ConfigurablePose; import com.technototes.path.geometry.ConfigurablePoseD; - import java.util.function.Function; public interface TrajectoryPath extends Function, TrajectorySequence> { - static TrajectoryPath lineTo(ConfigurablePose start, ConfigurablePose end) { return b -> b.apply(start.toPose()).lineTo(end.toPose().vec()).build(); } @@ -64,4 +62,3 @@ static TrajectoryPath linesToLinearHeadings(ConfigurablePose start, Configurable }; } } - diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java index 3a7f1882..7e5a0c27 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java @@ -1,11 +1,9 @@ package com.technototes.library.command; import androidx.annotation.Nullable; - import com.technototes.library.general.Periodic; import com.technototes.library.structure.CommandOpMode; import com.technototes.library.subsystem.Subsystem; - import java.util.HashMap; import java.util.LinkedHashSet; import java.util.Map; @@ -26,6 +24,7 @@ * TODO: yoink that method and make static methods for next year's release... */ public final class CommandScheduler { + private static final Map commandMap = new HashMap<>(); private static final Map> requirementMap = new HashMap<>(); private static final Map defaultMap = new HashMap<>(); @@ -74,6 +73,7 @@ public static void resetScheduler() { public static void scheduleOnce(Command command) { schedule(command); } + /** * Schedule a command to run during a particular OpModeState * You can just use scheduleForState instead... @@ -84,6 +84,7 @@ public static void scheduleOnce(Command command) { public static void scheduleOnceForState(Command command, CommandOpMode.OpModeState state) { scheduleForState(command, state); } + /** * Schedules a command to be run during Run and End states, all the time. * This is called "Schedule for Joystick" because joysticks don't really have a @@ -97,6 +98,7 @@ public static void scheduleOnceForState(Command command, CommandOpMode.OpModeSta public static void scheduleJoystick(Command command, BooleanSupplier supplier) { scheduleForState(command, supplier, CommandOpMode.OpModeState.RUN, CommandOpMode.OpModeState.END); } + /** * Schedules a command to be run during Run and End states, all the time. * This is called "Schedule for Joystick" because joysticks don't really have a @@ -117,6 +119,7 @@ public static void scheduleJoystick(Command command) { public static void schedule(Command command) { schedule(command, () -> true); } + /** * Schedule a method on a subsystem to run as a command: * {@code @@ -127,8 +130,9 @@ public static void schedule(Command command) { * @param methodRef the function to invoke on the subsystem */ public static void schedule(S req, Consumer methodRef) { - schedule(req, methodRef, () -> true); + schedule(req, methodRef, () -> true); } + /** * Schedule a method on a subsystem to run as a command, that takes an extra parameter: * {@code @@ -141,8 +145,9 @@ public static void schedule(S req, Consumer methodRef) * @param param the parameter to pass to the function being called */ public static void schedule(S req, BiConsumer methodRef, T param) { - schedule(req, methodRef, param, () -> true); + schedule(req, methodRef, param, () -> true); } + /** * Schedule a method to run as a command that does not require controlling a subsystem! * {@code @@ -152,8 +157,9 @@ public static void schedule(S req, BiConsumer met * @param methodRef the function to invoke on the subsystem */ public static void schedule(Runnable methodRef) { - schedule(methodRef, () -> true); + schedule(methodRef, () -> true); } + /** * Schedule a method on a subsystem to run as a command, that takes an extra parameter: * {@code @@ -166,7 +172,7 @@ public static void schedule(Runnable methodRef) { * @param param the parameter to pass to the function being called */ public static void schedule(Consumer methodRef, T param) { - schedule(methodRef, param, () -> true); + schedule(methodRef, param, () -> true); } /** @@ -181,6 +187,7 @@ public static void schedule(Consumer methodRef, T pa public static void scheduleInit(Command command, BooleanSupplier supplier) { scheduleForState(command, supplier, CommandOpMode.OpModeState.INIT); } + /** * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode. * This can be used for vision, as well as running any system to help the @@ -198,6 +205,7 @@ public static void scheduleInit(Command command, BooleanSupplier supplier) { public static void scheduleInit(S req, Consumer methodRef, BooleanSupplier supplier) { scheduleInit(new SimpleRequiredCommand<>(req, methodRef), supplier); } + /** * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode, * that also takes a parameter. @@ -214,9 +222,15 @@ public static void scheduleInit(S req, Consumer methodR * @param param the argument passed to the methodRef function * @param supplier the boolean function to run to determine if the function should be run */ - public static void scheduleInit(S req, BiConsumer methodRef, T param, BooleanSupplier supplier) { + public static void scheduleInit( + S req, + BiConsumer methodRef, + T param, + BooleanSupplier supplier + ) { scheduleInit(new ParameterRequiredCommand(req, methodRef, param), supplier); } + /** * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode. * This can be used for vision, as well as running any system to help the @@ -234,6 +248,7 @@ public static void scheduleInit(S req, BiConsumer public static void scheduleInit(Runnable methodRef, BooleanSupplier supplier) { scheduleInit(new SimpleCommand(methodRef), supplier); } + /** * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode, * that also takes a parameter. @@ -264,20 +279,23 @@ public static void scheduleInit(Consumer methodRef, T param, BooleanSuppl public static void scheduleInit(Command command) { scheduleForState(command, () -> true, CommandOpMode.OpModeState.INIT); } + public static void scheduleInit(S req, Consumer methodRef) { scheduleInit(new SimpleRequiredCommand(req, methodRef)); } + public static void scheduleInit(S req, BiConsumer methodRef, T param) { scheduleInit(new ParameterRequiredCommand(req, methodRef, param)); } + public static void scheduleInit(Runnable methodRef) { scheduleInit(new SimpleCommand(methodRef)); } + public static void scheduleInit(Consumer methodRef, T param) { scheduleInit(new ParameterCommand<>(methodRef, param)); } - /** * Schedule a command to be run when the OpMode is one of the provided list of states and the * 'supplier' boolean function is also true. @@ -287,30 +305,49 @@ public static void scheduleInit(Consumer methodRef, T param) { * @param supplier The function to determin in the command should be scheduled */ public static void scheduleForState( - Command command, - BooleanSupplier supplier, - CommandOpMode.OpModeState... states + Command command, + BooleanSupplier supplier, + CommandOpMode.OpModeState... states ) { schedule( - command.cancelUpon(() -> !opMode.getOpModeState().isState(states)), - () -> supplier.getAsBoolean() && opMode.getOpModeState().isState(states) + command.cancelUpon(() -> !opMode.getOpModeState().isState(states)), + () -> supplier.getAsBoolean() && opMode.getOpModeState().isState(states) ); } - public static void scheduleForState(S req, Consumer methodRef, BooleanSupplier supplier, - CommandOpMode.OpModeState... states) { + public static void scheduleForState( + S req, + Consumer methodRef, + BooleanSupplier supplier, + CommandOpMode.OpModeState... states + ) { scheduleForState(new SimpleRequiredCommand(req, methodRef), supplier, states); } - public static void scheduleForState(S req, BiConsumer methodRef, T param, BooleanSupplier supplier, - CommandOpMode.OpModeState... states) { + + public static void scheduleForState( + S req, + BiConsumer methodRef, + T param, + BooleanSupplier supplier, + CommandOpMode.OpModeState... states + ) { scheduleForState(new ParameterRequiredCommand(req, methodRef, param), supplier, states); } - public static void scheduleForState(Runnable methodRef, BooleanSupplier supplier, - CommandOpMode.OpModeState... states) { + + public static void scheduleForState( + Runnable methodRef, + BooleanSupplier supplier, + CommandOpMode.OpModeState... states + ) { scheduleForState(new SimpleCommand(methodRef), supplier, states); } - public static void scheduleForState(Consumer methodRef, T param, BooleanSupplier supplier, - CommandOpMode.OpModeState... states) { + + public static void scheduleForState( + Consumer methodRef, + T param, + BooleanSupplier supplier, + CommandOpMode.OpModeState... states + ) { scheduleForState(new ParameterCommand<>(methodRef, param), supplier, states); } @@ -322,24 +359,36 @@ public static void scheduleForState(Consumer methodRef, T param, BooleanS */ public static void scheduleForState(Command command, CommandOpMode.OpModeState... states) { schedule( - command.cancelUpon(() -> !opMode.getOpModeState().isState(states)), - () -> opMode.getOpModeState().isState(states) + command.cancelUpon(() -> !opMode.getOpModeState().isState(states)), + () -> opMode.getOpModeState().isState(states) ); } - public static void scheduleForState(S req, Consumer methodRef, CommandOpMode.OpModeState... states) { + + public static void scheduleForState( + S req, + Consumer methodRef, + CommandOpMode.OpModeState... states + ) { scheduleForState(new SimpleRequiredCommand(req, methodRef), states); } - public static void scheduleForState(S req, BiConsumer methodRef, T param, CommandOpMode.OpModeState... states) { + + public static void scheduleForState( + S req, + BiConsumer methodRef, + T param, + CommandOpMode.OpModeState... states + ) { scheduleForState(new ParameterRequiredCommand(req, methodRef, param), states); } + public static void scheduleForState(Runnable methodRef, CommandOpMode.OpModeState... states) { scheduleForState(new SimpleCommand(methodRef), states); } + public static void scheduleForState(Consumer methodRef, T param, CommandOpMode.OpModeState... states) { scheduleForState(new ParameterCommand<>(methodRef, param), states); } - /** * Schedule the 'other' command (the second one) when the 'dependency' command has * finished (but *not* been cancelled!). @@ -401,9 +450,11 @@ public static void scheduleDefault(Command command, Subsystem subsystem) { System.err.println("default commands must require their subsystem: " + command.getClass().toString()); } } + public static void scheduleDefault(S req, Consumer methodRef) { scheduleDefault(new SimpleRequiredCommand(req, methodRef), req); } + public static void scheduleDefault(S req, BiConsumer methodRef, T param) { scheduleDefault(new ParameterRequiredCommand(req, methodRef, param), req); } @@ -460,15 +511,24 @@ public static void schedule(Command command, BooleanSupplier supplier) { register(s); } } + public static void schedule(S req, Consumer methodRef, BooleanSupplier sup) { schedule(new SimpleRequiredCommand(req, methodRef), sup); } - public static void schedule(S req, BiConsumer methodRef, T param, BooleanSupplier sup) { + + public static void schedule( + S req, + BiConsumer methodRef, + T param, + BooleanSupplier sup + ) { schedule(new ParameterRequiredCommand(req, methodRef, param), sup); } + public static void schedule(Runnable methodRef, BooleanSupplier sup) { schedule(new SimpleCommand(methodRef), sup); } + public static void schedule(Consumer methodRef, T param, BooleanSupplier sup) { schedule(new ParameterCommand<>(methodRef, param), sup); } diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java index fa5b2c31..9fbf3292 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java @@ -1,11 +1,11 @@ package com.technototes.library.command; import com.technototes.library.subsystem.Subsystem; - import java.util.function.BiConsumer; import java.util.function.Consumer; public class ParameterCommand implements Command { + U param; Consumer method; @@ -19,4 +19,4 @@ public ParameterCommand(Consumer m, U arg) { public void execute() { method.accept(param); } -} \ No newline at end of file +} diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java index 38877e8c..73b4fcf2 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java @@ -1,10 +1,10 @@ package com.technototes.library.command; import com.technototes.library.subsystem.Subsystem; - import java.util.function.BiConsumer; public class ParameterRequiredCommand implements Command { + T sub; U param; BiConsumer method; @@ -21,4 +21,4 @@ public ParameterRequiredCommand(T s, BiConsumer m, U arg) { public void execute() { method.accept(sub, param); } -} \ No newline at end of file +} diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java index 7c3c7cda..3a64b9b7 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java @@ -1,10 +1,10 @@ package com.technototes.library.command; import com.technototes.library.subsystem.Subsystem; - import java.util.function.Consumer; public class SimpleCommand implements Command { + Runnable method; public SimpleCommand(Runnable m) { diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java index 195a1b11..41ab957e 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java @@ -1,10 +1,10 @@ package com.technototes.library.command; import com.technototes.library.subsystem.Subsystem; - import java.util.function.Consumer; public class SimpleRequiredCommand implements Command { + T sub; Consumer method; diff --git a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java index 8275eba8..1437dfcb 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java +++ b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java @@ -7,7 +7,6 @@ import com.technototes.library.command.SimpleCommand; import com.technototes.library.command.SimpleRequiredCommand; import com.technototes.library.subsystem.Subsystem; - import java.util.function.BiConsumer; import java.util.function.BooleanSupplier; import java.util.function.Consumer; @@ -28,15 +27,19 @@ public interface CommandInput extends BooleanSupplier { default T whenPressed(Command command) { return schedule(getInstance()::isJustPressed, command); } + default T whenPressed(S req, Consumer methodRef) { return whenPressed(new SimpleRequiredCommand<>(req, methodRef)); } + default T whenPressed(S req, BiConsumer methodRef, R param) { return whenPressed(new ParameterRequiredCommand<>(req, methodRef, param)); } + default T whenPressed(Runnable methodRef) { return whenPressed(new SimpleCommand(methodRef)); } + default T whenPressed(Consumer methodRef, R param) { return whenPressed(new ParameterCommand<>(methodRef, param)); } @@ -50,20 +53,23 @@ default T whenPressed(Consumer methodRef, R param) { default T whenReleased(Command command) { return schedule(getInstance()::isJustReleased, command); } + default T whenReleased(S req, Consumer methodRef) { return whenReleased(new SimpleRequiredCommand<>(req, methodRef)); } + default T whenReleased(S req, BiConsumer methodRef, R param) { return whenReleased(new ParameterRequiredCommand<>(req, methodRef, param)); } + default T whenReleased(Runnable methodRef) { return whenReleased(new SimpleCommand(methodRef)); } + default T whenReleased(Consumer methodRef, R param) { return whenReleased(new ParameterCommand<>(methodRef, param)); } - /** * Schedule a command to be run over & over while the input is pressed, * but once it's released, the command will be cancelled. @@ -74,15 +80,19 @@ default T whenReleased(Consumer methodRef, R param) { default T whilePressed(Command command) { return schedule(getInstance()::isPressed, command.cancelUpon(getInstance()::isReleased)); } + default T whilePressed(S req, Consumer methodRef) { return whilePressed(new SimpleRequiredCommand<>(req, methodRef)); } + default T whilePressed(S req, BiConsumer methodRef, R param) { return whilePressed(new ParameterRequiredCommand<>(req, methodRef, param)); } + default T whilePressed(Runnable methodRef) { return whilePressed(new SimpleCommand(methodRef)); } + default T whilePressed(Consumer methodRef, R param) { return whilePressed(new ParameterCommand<>(methodRef, param)); } @@ -97,15 +107,19 @@ default T whilePressed(Consumer methodRef, R param) { default T whileReleased(Command command) { return schedule(getInstance()::isReleased, command.cancelUpon(getInstance()::isPressed)); } + default T whileReleased(S req, Consumer methodRef) { return whileReleased(new SimpleRequiredCommand<>(req, methodRef)); } + default T whileReleased(S req, BiConsumer methodRef, R param) { return whileReleased(new ParameterRequiredCommand<>(req, methodRef, param)); } + default T whileReleased(Runnable methodRef) { return whileReleased(new SimpleCommand(methodRef)); } + default T whileReleased(Consumer methodRef, R param) { return whileReleased(new ParameterCommand<>(methodRef, param)); } @@ -121,18 +135,23 @@ default T whileReleased(Consumer methodRef, R param) { default T whilePressedOnce(Command command) { return schedule(getInstance()::isJustPressed, command.cancelUpon(getInstance()::isReleased)); } + default T whilePressedOnce(S req, Consumer methodRef) { return whilePressedOnce(new SimpleRequiredCommand<>(req, methodRef)); } + default T whilePressedOnce(S req, BiConsumer methodRef, R param) { return whilePressedOnce(new ParameterRequiredCommand<>(req, methodRef, param)); } + default T whilePressedOnce(Runnable methodRef) { return whilePressedOnce(new SimpleCommand(methodRef)); } + default T whilePressedOnce(Consumer methodRef, R param) { return whilePressedOnce(new ParameterCommand<>(methodRef, param)); } + /** * Schedule a command to be run over & over while the input is pressed * @@ -142,18 +161,23 @@ default T whilePressedOnce(Consumer methodRef, R param) { default T whilePressedContinuous(Command command) { return schedule(getInstance()::isPressed, command); } + default T whilePressedContinuous(S req, Consumer methodRef) { return whilePressedContinuous(new SimpleRequiredCommand<>(req, methodRef)); } + default T whilePressedContinuous(S req, BiConsumer methodRef, R param) { return whilePressedContinuous(new ParameterRequiredCommand<>(req, methodRef, param)); } + default T whilePressedContinuous(Runnable methodRef) { return whilePressedContinuous(new SimpleCommand(methodRef)); } + default T whilePressedContinuous(Consumer methodRef, R param) { return whilePressedContinuous(new ParameterCommand<>(methodRef, param)); } + /** * Schedule the command to be run when the input is released, but only once! * @@ -163,15 +187,19 @@ default T whilePressedContinuous(Consumer methodRef, R param) { default T whileReleasedOnce(Command command) { return schedule(getInstance()::isJustReleased, command.cancelUpon(getInstance()::isPressed)); } + default T whileReleasedOnce(S req, Consumer methodRef) { return whileReleasedOnce(new SimpleRequiredCommand<>(req, methodRef)); } + default T whileReleasedOnce(S req, BiConsumer methodRef, R param) { return whileReleasedOnce(new ParameterRequiredCommand<>(req, methodRef, param)); } + default T whileReleasedOnce(Runnable methodRef) { return whileReleasedOnce(new SimpleCommand(methodRef)); } + default T whileReleasedOnce(Consumer methodRef, R param) { return whileReleasedOnce(new ParameterCommand<>(methodRef, param)); } @@ -186,15 +214,19 @@ default T whileReleasedOnce(Consumer methodRef, R param) { default T whenToggled(Command command) { return schedule(getInstance()::isJustToggled, command); } + default T whenToggled(S req, Consumer methodRef) { return whenToggled(new SimpleRequiredCommand<>(req, methodRef)); } + default T whenToggled(S req, BiConsumer methodRef, R param) { return whenToggled(new ParameterRequiredCommand<>(req, methodRef, param)); } + default T whenToggled(Runnable methodRef) { return whenToggled(new SimpleCommand(methodRef)); } + default T whenToggled(Consumer methodRef, R param) { return whenToggled(new ParameterCommand<>(methodRef, param)); } @@ -208,15 +240,19 @@ default T whenToggled(Consumer methodRef, R param) { default T whenInverseToggled(Command command) { return schedule(getInstance()::isJustInverseToggled, command); } + default T whenInverseToggled(S req, Consumer methodRef) { return whenInverseToggled(new SimpleRequiredCommand<>(req, methodRef)); } + default T whenInverseToggled(S req, BiConsumer methodRef, R param) { return whenInverseToggled(new ParameterRequiredCommand<>(req, methodRef, param)); } + default T whenInverseToggled(Runnable methodRef) { return whenInverseToggled(new SimpleCommand(methodRef)); } + default T whenInverseToggled(Consumer methodRef, R param) { return whenInverseToggled(new ParameterCommand<>(methodRef, param)); } @@ -233,15 +269,19 @@ default T whenInverseToggled(Consumer methodRef, R param) { default T whileToggled(Command command) { return schedule(getInstance()::isToggled, command.cancelUpon(getInstance()::isInverseToggled)); } + default T whileToggled(S req, Consumer methodRef) { return whileToggled(new SimpleRequiredCommand<>(req, methodRef)); } + default T whileToggled(S req, BiConsumer methodRef, R param) { return whileToggled(new ParameterRequiredCommand<>(req, methodRef, param)); } + default T whileToggled(Runnable methodRef) { return whileToggled(new SimpleCommand(methodRef)); } + default T whileToggled(Consumer methodRef, R param) { return whileToggled(new ParameterCommand<>(methodRef, param)); } @@ -256,15 +296,19 @@ default T whileToggled(Consumer methodRef, R param) { default T whileInverseToggled(Command command) { return schedule(getInstance()::isInverseToggled, command.cancelUpon(getInstance()::isToggled)); } + default T whileInverseToggled(S req, Consumer methodRef) { return whileInverseToggled(new SimpleRequiredCommand<>(req, methodRef)); } + default T whileInverseToggled(S req, BiConsumer methodRef, R param) { return whileInverseToggled(new ParameterRequiredCommand<>(req, methodRef, param)); } + default T whileInverseToggled(Runnable methodRef) { return whileInverseToggled(new SimpleCommand(methodRef)); } + default T whileInverseToggled(Consumer methodRef, R param) { return whileInverseToggled(new ParameterCommand<>(methodRef, param)); } diff --git a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java index bd816fe7..3a0c3245 100644 --- a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java +++ b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java @@ -93,8 +93,10 @@ public BasicVisionSubsystem stopStreaming() { // How many rectangles are you checking? abstract int numRectangles(); + // Get the specific rectangle number abstract Rect getRect(int rectNumber); + // Process the particular rectangle (you probably want to call countPixelsOfColor ;) ) public abstract void runDetection(Mat inputHSV, int rectNumber); From 5a50d0ed557ffcd5a9e66a8adbd9ab1bced4d165 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 15 Oct 2023 11:04:12 -0700 Subject: [PATCH 19/34] Added a little bit to the Vision stuff as I'm porting PowerPlay --- .../src/main/java/com/technototes/vision/HSVRange.java | 4 ++++ .../vision/subsystem/BasicVisionSubsystem.java | 10 +++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/Vision/src/main/java/com/technototes/vision/HSVRange.java b/Vision/src/main/java/com/technototes/vision/HSVRange.java index db9e4d88..14c6454c 100644 --- a/Vision/src/main/java/com/technototes/vision/HSVRange.java +++ b/Vision/src/main/java/com/technototes/vision/HSVRange.java @@ -48,6 +48,10 @@ public HSVRange truncateRange() { return null; } + public HSVRange newHue(int newHue, int hRange) { + return new HSVRange(newHue, hRange, satLow, satHigh, valLow, valHigh); + } + public Scalar lowEdge() { return new Scalar(hueLow, satLow, valLow); } diff --git a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java index 3a0c3245..d0344e8d 100644 --- a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java +++ b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java @@ -92,19 +92,22 @@ public BasicVisionSubsystem stopStreaming() { // But really, you should be using FtcDashboard. It's much faster to get this right. // How many rectangles are you checking? - abstract int numRectangles(); + public abstract int numRectangles(); // Get the specific rectangle number - abstract Rect getRect(int rectNumber); + public abstract Rect getRect(int rectNumber); // Process the particular rectangle (you probably want to call countPixelsOfColor ;) ) public abstract void runDetection(Mat inputHSV, int rectNumber); + protected void detectionStart() {} + protected void detectionEnd() {} + protected void detectionProcessing(Mat frame) { // Put the input matrix in a member variable, so that other functions can draw on it curFrameRGB = frame; int count = numRectangles(); - + detectionStart(); for (int i = 0; i < count; i++) { // First, slice the smaller rectangle out of the overall bitmap: Rect r = getRect(i); @@ -116,6 +119,7 @@ protected void detectionProcessing(Mat frame) { Imgproc.cvtColor(subRectRGB, subRectHSV, Imgproc.COLOR_RGB2HSV); runDetection(subRectHSV, i); } + detectionEnd(); } @Override From 4181cc78a618ed046c11659c4e4c04e87e1f8caf Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 15 Oct 2023 15:14:39 -0700 Subject: [PATCH 20/34] Moved detectionStart before numRectangles --- .../com/technototes/vision/subsystem/BasicVisionSubsystem.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java index d0344e8d..a1ea8f18 100644 --- a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java +++ b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java @@ -106,8 +106,8 @@ protected void detectionEnd() {} protected void detectionProcessing(Mat frame) { // Put the input matrix in a member variable, so that other functions can draw on it curFrameRGB = frame; - int count = numRectangles(); detectionStart(); + int count = numRectangles(); for (int i = 0; i < count; i++) { // First, slice the smaller rectangle out of the overall bitmap: Rect r = getRect(i); From 3bb5a9b2d80003dce6e97a98837988fbd4a2abd3 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 15 Oct 2023 20:51:26 -0700 Subject: [PATCH 21/34] Some doc updates. I should go dig up how to deploy stuff to github.io again --- .../library/command/CommandScheduler.java | 12 +- .../library/control/ButtonBase.java | 22 + .../library/control/CommandInput.java | 506 +++++++++++++++++- .../com/technototes/library/util/Range.java | 2 +- .../java/com/technototes/vision/HSVRange.java | 31 +- .../subsystem/BasicVisionSubsystem.java | 73 ++- 6 files changed, 635 insertions(+), 11 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java index 7e5a0c27..f9e593d6 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java @@ -128,6 +128,7 @@ public static void schedule(Command command) { * * @param req the subsystem required * @param methodRef the function to invoke on the subsystem + * @param The type of the subsystem required by the method */ public static void schedule(S req, Consumer methodRef) { schedule(req, methodRef, () -> true); @@ -143,6 +144,8 @@ public static void schedule(S req, Consumer methodRef) * @param req the subsystem required * @param methodRef the function to invoke on the subsystem * @param param the parameter to pass to the function being called + * @param The type of the subsystem required by the method + * @param The type of the parameter to pass to the method */ public static void schedule(S req, BiConsumer methodRef, T param) { schedule(req, methodRef, param, () -> true); @@ -167,9 +170,10 @@ public static void schedule(Runnable methodRef) { * CommandScheduler.schedule(robot.liftSubsys, LiftSubsystem::GoToPosition, LiftPos.MIDDLE) * } * - * @param req the subsystem required * @param methodRef the function to invoke on the subsystem * @param param the parameter to pass to the function being called + * @param The type of the subsystem required by the method + * @param The type of the parameter to pass to the method */ public static void schedule(Consumer methodRef, T param) { schedule(methodRef, param, () -> true); @@ -201,6 +205,7 @@ public static void scheduleInit(Command command, BooleanSupplier supplier) { * @param req the subsystem required * @param methodRef the function to invoke on the subsystem * @param supplier the boolean function to run to determine if the function should be run + * @param The type of the subsystem required by the method */ public static void scheduleInit(S req, Consumer methodRef, BooleanSupplier supplier) { scheduleInit(new SimpleRequiredCommand<>(req, methodRef), supplier); @@ -221,6 +226,8 @@ public static void scheduleInit(S req, Consumer methodR * @param methodRef the function to invoke on the subsystem * @param param the argument passed to the methodRef function * @param supplier the boolean function to run to determine if the function should be run + * @param The type of the subsystem required by the method + * @param The type of the parameter to pass to the method */ public static void scheduleInit( S req, @@ -241,7 +248,6 @@ public static void scheduleInit( * CommandScheduler.scheduleInit(robot.visionSystem, TokenIdentifyingSubsystem::seeTheThing, () -> TokenIdentifyingSubsystem.CAMERA_CONNECTED) * } * - * @param req the subsystem required * @param methodRef the function to invoke on the subsystem * @param supplier the boolean function to run to determine if the function should be run */ @@ -260,10 +266,10 @@ public static void scheduleInit(Runnable methodRef, BooleanSupplier supplier) { * // but only if TokenIdentifyingSubsystem.CAMERA_CONNECTED is also true * CommandScheduler.scheduleInit(robot.visionSystem, TokenIdentifyingSubsystem::seeTheThing, Alliance.RED, () -> TokenIdentifyingSubsystem.CAMERA_CONNECTED) * } - * @param req the subsystem required * @param methodRef the function to invoke on the subsystem * @param param the argument passed to the methodRef function * @param supplier the boolean function to run to determine if the function should be run + * @param The type of the parameter to pass to the method */ public static void scheduleInit(Consumer methodRef, T param, BooleanSupplier supplier) { scheduleInit(new ParameterCommand<>(methodRef, param), supplier); diff --git a/RobotLibrary/src/main/java/com/technototes/library/control/ButtonBase.java b/RobotLibrary/src/main/java/com/technototes/library/control/ButtonBase.java index 07164d6b..cdb643cd 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/control/ButtonBase.java +++ b/RobotLibrary/src/main/java/com/technototes/library/control/ButtonBase.java @@ -115,26 +115,48 @@ public boolean isInverseToggled() { */ @Override public boolean getAsBoolean() { + // Alex had to get some of that sweet, sweet exclusive or operator... + // For the non-bit-twiddly among us, this is (bs.get() != inverted) && isEnabled() + // Or, verbally: flip the booleanSupplier if it's inverted, and it's only true if + // it's also enabled... return booleanSupplier.getAsBoolean() ^ inverted && isEnabled(); } + /** + * Inverts the button, such that "isPressed" and "isReleased" are opposite, along with everything + * that entails + * + * @param invert Inversion value (true inverts, false leaves the values as is) + * @return the ButtonBase object + */ @Override public ButtonBase setInverted(boolean invert) { inverted = invert; return this; } + /** + * @return True if the button is inverted (pressed registers as released, etc...) + */ @Override public boolean getInverted() { return inverted; } + /** + * Enable or disable the button + * @param enable True for enabled, false for disabled + * @return + */ @Override public ButtonBase setEnabled(boolean enable) { enabled = enable; return this; } + /** + * @return True if the button is enabled + */ @Override public boolean isEnabled() { return enabled; diff --git a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java index 1437dfcb..a773b521 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java +++ b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java @@ -28,18 +28,66 @@ default T whenPressed(Command command) { return schedule(getInstance()::isJustPressed, command); } + /** + * Schedule a method of a required subsystem to be run once the input is pressed. + * + * {@code + * // This command calls robot.liftSubsys.MoveUp() + * gamepad.dpad.up.whenPressed(robot.liftSubsys, LiftSubsystem::MoveUp) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whenPressed(S req, Consumer methodRef) { return whenPressed(new SimpleRequiredCommand<>(req, methodRef)); } + /** + * Schedule a method of a required subsystem (with a parameter) to be run once the input is pressed. + * + * {@code + * // This command calls robot.liftSubsys.Move(LiftDirection.UP) + * gamepad.dpad.up.whenPressed(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param param the value to pass to the method being invoked + * @param The type of the subsystem required by the method + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whenPressed(S req, BiConsumer methodRef, R param) { return whenPressed(new ParameterRequiredCommand<>(req, methodRef, param)); } + /** + * Schedule a method to be run once the input is pressed. + * + * {@code + * // This command calls robot.brightenLights + * gamepad.dpad.up.whenPressed(robot::brightenLights) + * } + * @param methodRef the method on the subsystem to invoke + * @return The CommandInput<T> instance + */ default T whenPressed(Runnable methodRef) { return whenPressed(new SimpleCommand(methodRef)); } + /** + * Schedule a method with a parameter to be run once the input is pressed. + * + * {@code + * // This command calls robot.blinkLights(RGB_PURPLE) + * gamepad.dpad.up.whenPressed(robot::blinkLights, RGB_PURPLE) + * } + * @param methodRef the method to invoke + * @param param the parameter to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whenPressed(Consumer methodRef, R param) { return whenPressed(new ParameterCommand<>(methodRef, param)); } @@ -54,18 +102,66 @@ default T whenReleased(Command command) { return schedule(getInstance()::isJustReleased, command); } + /** + * Schedule a method of a required subsystem to be run once the input is released. + * + * {@code + * // This command calls robot.liftSubsys.MoveUp() + * gamepad.dpad.up.whenReleased(robot.liftSubsys, LiftSubsystem::MoveUp) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whenReleased(S req, Consumer methodRef) { return whenReleased(new SimpleRequiredCommand<>(req, methodRef)); } + /** + * Schedule a method of a required subsystem (with a parameter) to be run once the input is released. + * + * {@code + * // This command calls robot.liftSubsys.Move(LiftDirection.UP) + * gamepad.dpad.up.whenReleased(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param param the value to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whenReleased(S req, BiConsumer methodRef, R param) { return whenReleased(new ParameterRequiredCommand<>(req, methodRef, param)); } + /** + * Schedule a method to be run once the input is released. + * + * {@code + * // This command calls robot.brightenLights + * gamepad.dpad.up.whenReleased(robot::brightenLights) + * } + * @param methodRef the method on the subsystem to invoke + * @return The CommandInput<T> instance + */ default T whenReleased(Runnable methodRef) { return whenReleased(new SimpleCommand(methodRef)); } + /** + * Schedule a method with a parameter to be run once the input is released. + * + * {@code + * // This command calls robot.blinkLights(RGB_PURPLE) + * gamepad.dpad.up.whenReleased(robot::blinkLights, RGB_PURPLE) + * } + * @param methodRef the method to invoke + * @param param the parameter to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whenReleased(Consumer methodRef, R param) { return whenReleased(new ParameterCommand<>(methodRef, param)); } @@ -81,18 +177,70 @@ default T whilePressed(Command command) { return schedule(getInstance()::isPressed, command.cancelUpon(getInstance()::isReleased)); } + /** + * Schedule a method of a required subsystem to be run over & over while the input is pressed, + * but once it's released, the command will be cancelled. + * + * {@code + * // This command calls robot.liftSubsys.MoveUp() + * gamepad.dpad.up.whilePressed(robot.liftSubsys, LiftSubsystem::MoveUp) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whilePressed(S req, Consumer methodRef) { return whilePressed(new SimpleRequiredCommand<>(req, methodRef)); } + /** + * Schedule a method of a required subsystem (with a parameter) to be run over & over while the input is pressed, + * but once it's released, the command will be cancelled. + * + * {@code + * // This command calls robot.liftSubsys.Move(LiftDirection.UP) + * gamepad.dpad.up.whilePressed(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param param the value to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whilePressed(S req, BiConsumer methodRef, R param) { return whilePressed(new ParameterRequiredCommand<>(req, methodRef, param)); } + /** + * Schedule a method to be run over & over while the input is pressed, + * but once it's released, the command will be cancelled. + * + * {@code + * // This command calls robot.brightenLights + * gamepad.dpad.up.whilePressed(robot::brightenLights) + * } + * @param methodRef the method on the subsystem to invoke + * @return The CommandInput<T> instance + */ default T whilePressed(Runnable methodRef) { return whilePressed(new SimpleCommand(methodRef)); } + /** + * Schedule a method with a parameter to be run over & over while the input is pressed, + * but once it's released, the command will be cancelled. + * + * {@code + * // This command calls robot.blinkLights(RGB_PURPLE) + * gamepad.dpad.up.whilePressed(robot::blinkLights, RGB_PURPLE) + * } + * @param methodRef the method to invoke + * @param param the parameter to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whilePressed(Consumer methodRef, R param) { return whilePressed(new ParameterCommand<>(methodRef, param)); } @@ -108,18 +256,70 @@ default T whileReleased(Command command) { return schedule(getInstance()::isReleased, command.cancelUpon(getInstance()::isPressed)); } + /** + * Schedule a method of a required subsystem to be run over & over while the input is released, + * but once it's pressed, the command will be cancelled. + * + * {@code + * // This command calls robot.liftSubsys.StayPut() + * gamepad.dpad.up.whileReleased(robot.liftSubsys, LiftSubsystem::StayPut) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whileReleased(S req, Consumer methodRef) { return whileReleased(new SimpleRequiredCommand<>(req, methodRef)); } + /** + * Schedule a method of a required subsystem (with a parameter) to be run over & over while the input is released, + * but once it's pressed, the command will be cancelled. + * + * {@code + * // This command calls robot.liftSubsys.Move(LiftDirection.UP) + * gamepad.dpad.up.whileReleased(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param param the value to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whileReleased(S req, BiConsumer methodRef, R param) { return whileReleased(new ParameterRequiredCommand<>(req, methodRef, param)); } + /** + * Schedule a method to be run over & over while the input is released, + * but once it's pressed, the command will be cancelled. + * + * {@code + * // This command calls robot.brightenLights + * gamepad.dpad.up.whileReleased(robot::brightenLights) + * } + * @param methodRef the method on the subsystem to invoke + * @return The CommandInput<T> instance + */ default T whileReleased(Runnable methodRef) { return whileReleased(new SimpleCommand(methodRef)); } + /** + * Schedule a method with a parameter to be run over & over while the input is released, + * but once it's pressed, the command will be cancelled. + * + * {@code + * // This command calls robot.blinkLights(RGB_PURPLE) + * gamepad.dpad.up.whileReleased(robot::blinkLights, RGB_PURPLE) + * } + * @param methodRef the method to invoke + * @param param the parameter to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whileReleased(Consumer methodRef, R param) { return whileReleased(new ParameterCommand<>(methodRef, param)); } @@ -136,18 +336,74 @@ default T whilePressedOnce(Command command) { return schedule(getInstance()::isJustPressed, command.cancelUpon(getInstance()::isReleased)); } + /** + * Schedule a method of a required subsystem to be run while the input is pressed, but only once, + * and if the command takes so long that the input is released, the command + * will be cancelled. + * + * {@code + * // This command calls robot.liftSubsys.StayPut() + * gamepad.dpad.up.whilePressedOnce(robot.liftSubsys, LiftSubsystem::StayPut) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whilePressedOnce(S req, Consumer methodRef) { return whilePressedOnce(new SimpleRequiredCommand<>(req, methodRef)); } + /** + * Schedule a method of a required subsystem (with a parameter) to be run while the input is pressed, but only once, + * and if the command takes so long that the input is released, the command + * will be cancelled. + * + * {@code + * // This command calls robot.liftSubsys.Move(LiftDirection.UP) + * gamepad.dpad.up.whilePressedOnce(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param param the value to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whilePressedOnce(S req, BiConsumer methodRef, R param) { return whilePressedOnce(new ParameterRequiredCommand<>(req, methodRef, param)); } + /** + * Schedule a method to be run while the input is pressed, but only once, + * and if the command takes so long that the input is released, the command + * will be cancelled. + * + * {@code + * // This command calls robot.brightenLights + * gamepad.dpad.up.whilePressedOnce(robot::brightenLights) + * } + * @param methodRef the method on the subsystem to invoke + * @return The CommandInput<T> instance + */ default T whilePressedOnce(Runnable methodRef) { return whilePressedOnce(new SimpleCommand(methodRef)); } + /** + * Schedule a method with a parameter to be run while the input is pressed, but only once, + * and if the command takes so long that the input is released, the command + * will be cancelled. + * + * {@code + * // This command calls robot.blinkLights(RGB_PURPLE) + * gamepad.dpad.up.whilePressedOnce(robot::blinkLights, RGB_PURPLE) + * } + * @param methodRef the method to invoke + * @param param the parameter to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whilePressedOnce(Consumer methodRef, R param) { return whilePressedOnce(new ParameterCommand<>(methodRef, param)); } @@ -162,18 +418,66 @@ default T whilePressedContinuous(Command command) { return schedule(getInstance()::isPressed, command); } + /** + * Schedule a method of a required subsystem to be run over & over while the input is pressed + * + * {@code + * // This command calls robot.liftSubsys.MoveUp() + * gamepad.dpad.up.whilePressedContinuous(robot.liftSubsys, LiftSubsystem::MoveUp) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whilePressedContinuous(S req, Consumer methodRef) { return whilePressedContinuous(new SimpleRequiredCommand<>(req, methodRef)); } + /** + * Schedule a method of a required subsystem (with a parameter) to be run over & over while the input is pressed + * + * {@code + * // This command calls robot.liftSubsys.Move(LiftDirection.UP) + * gamepad.dpad.up.whilePressedContinuous(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param param the value to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whilePressedContinuous(S req, BiConsumer methodRef, R param) { return whilePressedContinuous(new ParameterRequiredCommand<>(req, methodRef, param)); } + /** + * Schedule a method to be run over & over while the input is pressed + * + * {@code + * // This command calls robot.brightenLights + * gamepad.dpad.up.whilePressedContinuous(robot::brightenLights) + * } + * @param methodRef the method on the subsystem to invoke + * @return The CommandInput<T> instance + */ default T whilePressedContinuous(Runnable methodRef) { return whilePressedContinuous(new SimpleCommand(methodRef)); } + /** + * Schedule a method with a parameter to be run over & over while the input is pressed + * + * {@code + * // This command calls robot.blinkLights(RGB_PURPLE) + * gamepad.dpad.up.whilePressedContinuous(robot::blinkLights, RGB_PURPLE) + * } + * @param methodRef the method to invoke + * @param param the parameter to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whilePressedContinuous(Consumer methodRef, R param) { return whilePressedContinuous(new ParameterCommand<>(methodRef, param)); } @@ -188,18 +492,66 @@ default T whileReleasedOnce(Command command) { return schedule(getInstance()::isJustReleased, command.cancelUpon(getInstance()::isPressed)); } + /** + * Schedule the method to be run on the given subsystem to be run when the input is + * released, but only once! + * + * {@code + * // This command calls robot.liftSubsys.MoveUp() + * gamepad.dpad.up.whileReleasedOnce(robot.liftSubsys, LiftSubsystem::MoveUp) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whileReleasedOnce(S req, Consumer methodRef) { return whileReleasedOnce(new SimpleRequiredCommand<>(req, methodRef)); } - + /** + * Schedule the method to be run (with the parameter provided) on the given subsystem to be + * run when the input is released, but only once! + * + * {@code + * // This command calls robot.liftSubsys.Move(LiftDirection.UP) + * gamepad.dpad.up.whileReleasedOnce(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) + * } + * @param req The subsystem to control + * @param methodRef the method on the subsystem to invoke + * @param param the value to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whileReleasedOnce(S req, BiConsumer methodRef, R param) { return whileReleasedOnce(new ParameterRequiredCommand<>(req, methodRef, param)); } - + /** + * Schedule the method to be run when the input is released, but only once! + * + * {@code + * // This command calls robot.lightsOff + * gamepad.dpad.up.whileReleasedOnce(robot::lightsOff) + * } + * @param methodRef the method on the subsystem to invoke + * @return The CommandInput<T> instance + */ default T whileReleasedOnce(Runnable methodRef) { return whileReleasedOnce(new SimpleCommand(methodRef)); } - + /** + * Schedule the method to be run (with the paramter provided) when the input is released, + * but only once! + * + * {@code + * // This command calls robot.blinkLights(2) + * gamepad.dpad.up.whileReleasedOnce(robot::blinkLights, 2) + * } + * @param methodRef the method to invoke + * @param param the parameter to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whileReleasedOnce(Consumer methodRef, R param) { return whileReleasedOnce(new ParameterCommand<>(methodRef, param)); } @@ -215,18 +567,54 @@ default T whenToggled(Command command) { return schedule(getInstance()::isJustToggled, command); } + /** + * Schedule a method that requires a subsystem to be run when the input was just toggled + * (From pressed to released, or released to pressed) + * + * @param req The required subsystem i.e. the subsystem being controlled + * @param methodRef The method of the subsystem being invoked + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whenToggled(S req, Consumer methodRef) { return whenToggled(new SimpleRequiredCommand<>(req, methodRef)); } + /** + * Schedule a method that requires a subsystem (with a parameter) to be run when the input was just toggled + * (From pressed to released, or released to pressed) + * + * @param req The required subsystem i.e. the subsystem being controlled + * @param methodRef The method of the subsystem being invoked + * @param param The parameter to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whenToggled(S req, BiConsumer methodRef, R param) { return whenToggled(new ParameterRequiredCommand<>(req, methodRef, param)); } + /** + * Schedule a method to be run when the input was just toggled + * (From pressed to released, or released to pressed) + * + * @param methodRef The method to be invoked + * @return The CommandInput<T> instance + */ default T whenToggled(Runnable methodRef) { return whenToggled(new SimpleCommand(methodRef)); } + /** + * Schedule a method (with a parameter) to be run when the input was just toggled + * (From pressed to released, or released to pressed) + * + * @param methodRef The method to be invoked + * @param param the parameter to be passed to the method invoked + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whenToggled(Consumer methodRef, R param) { return whenToggled(new ParameterCommand<>(methodRef, param)); } @@ -241,18 +629,50 @@ default T whenInverseToggled(Command command) { return schedule(getInstance()::isJustInverseToggled, command); } + /** + * Schedule a method on a subsystem to be run when the input has only stopped being toggled + * + * @param req The required subsystem i.e. the subsystem being controlled + * @param methodRef The method of the subsystem being invoked + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whenInverseToggled(S req, Consumer methodRef) { return whenInverseToggled(new SimpleRequiredCommand<>(req, methodRef)); } + /** + * Schedule the command to be run when the input has only stopped being toggled + * + * @param req The required subsystem i.e. the subsystem being controlled + * @param methodRef The method of the subsystem being invoked + * @param param The parameter to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whenInverseToggled(S req, BiConsumer methodRef, R param) { return whenInverseToggled(new ParameterRequiredCommand<>(req, methodRef, param)); } + /** + * Schedule a method to be run when the input has only stopped being toggled + * + * @param methodRef The method to be invoked + * @return The CommandInput<T> instance + */ default T whenInverseToggled(Runnable methodRef) { return whenInverseToggled(new SimpleCommand(methodRef)); } + /** + * Schedule a method with a parameter to be run when the input has only stopped being toggled + * + * @param methodRef The method to be invoked + * @param param the parameter to be passed to the method invoked + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whenInverseToggled(Consumer methodRef, R param) { return whenInverseToggled(new ParameterCommand<>(methodRef, param)); } @@ -270,18 +690,62 @@ default T whileToggled(Command command) { return schedule(getInstance()::isToggled, command.cancelUpon(getInstance()::isInverseToggled)); } + /** + * Schedule a method to be run while the input is changing. + * It will be canceled once the input is not changing. + * This is questionably useful, as toggling over & over is a 'frequency' problem. + * I expect this is going to behave almost the same as whenToggled... + * + * @param req The required subsystem i.e. the subsystem being controlled + * @param methodRef The method of the subsystem being invoked + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whileToggled(S req, Consumer methodRef) { return whileToggled(new SimpleRequiredCommand<>(req, methodRef)); } + /** + * Schedule a method (with a parameter) to be run while the input is changing. + * It will be canceled once the input is not changing. + * This is questionably useful, as toggling over & over is a 'frequency' problem. + * I expect this is going to behave almost the same as whenToggled... + * + * @param req The required subsystem i.e. the subsystem being controlled + * @param methodRef The method of the subsystem being invoked + * @param param The parameter to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whileToggled(S req, BiConsumer methodRef, R param) { return whileToggled(new ParameterRequiredCommand<>(req, methodRef, param)); } + /** + * Schedule a method to be run while the input is changing. + * It will be canceled once the input is not changing. + * This is questionably useful, as toggling over & over is a 'frequency' problem. + * I expect this is going to behave almost the same as whenToggled... + * + * @param methodRef The method to be invoked + * @return The CommandInput<T> instance + */ default T whileToggled(Runnable methodRef) { return whileToggled(new SimpleCommand(methodRef)); } + /** + * Schedule a method (with a parameter) to be run while the input is changing. + * It will be canceled once the input is not changing. + * This is questionably useful, as toggling over & over is a 'frequency' problem. + * I expect this is going to behave almost the same as whenToggled... + * + * @param methodRef The method to be invoked + * @param param the parameter to be passed to the method invoked + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whileToggled(Consumer methodRef, R param) { return whileToggled(new ParameterCommand<>(methodRef, param)); } @@ -297,18 +761,54 @@ default T whileInverseToggled(Command command) { return schedule(getInstance()::isInverseToggled, command.cancelUpon(getInstance()::isToggled)); } + /** + * Schedule the command to run over & over while the input is *not* changing + * It will be canceled once the input is toggled. + * + * @param req The required subsystem i.e. the subsystem being controlled + * @param methodRef The method of the subsystem being invoked + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whileInverseToggled(S req, Consumer methodRef) { return whileInverseToggled(new SimpleRequiredCommand<>(req, methodRef)); } + /** + * Schedule the command to run over & over while the input is *not* changing + * It will be canceled once the input is toggled. + * + * @param req The required subsystem i.e. the subsystem being controlled + * @param methodRef The method of the subsystem being invoked + * @param param The parameter to pass to the method being invoked + * @param The type of the parameter to pass to the method + * @param The type of the subsystem required by the method + * @return The CommandInput<T> instance + */ default T whileInverseToggled(S req, BiConsumer methodRef, R param) { return whileInverseToggled(new ParameterRequiredCommand<>(req, methodRef, param)); } + /** + * Schedule the command to run over & over while the input is *not* changing + * It will be canceled once the input is toggled. + * + * @param methodRef The method to be invoked + * @return The CommandInput<T> instance + */ default T whileInverseToggled(Runnable methodRef) { return whileInverseToggled(new SimpleCommand(methodRef)); } + /** + * Schedule the command to run over & over while the input is *not* changing + * It will be canceled once the input is toggled. + * + * @param methodRef The method to be invoked + * @param param the parameter to be passed to the method invoked + * @param The type of the parameter to pass to the method + * @return The CommandInput<T> instance + */ default T whileInverseToggled(Consumer methodRef, R param) { return whileInverseToggled(new ParameterCommand<>(methodRef, param)); } diff --git a/RobotLibrary/src/main/java/com/technototes/library/util/Range.java b/RobotLibrary/src/main/java/com/technototes/library/util/Range.java index 5415d52f..7b1cfdac 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/util/Range.java +++ b/RobotLibrary/src/main/java/com/technototes/library/util/Range.java @@ -57,7 +57,7 @@ public void scale(double scalar) { /** * Get the 'middle' of the range * - * @return the average of min & max + * @return the average of min & max */ public double middle() { return (min + max) / 2; diff --git a/Vision/src/main/java/com/technototes/vision/HSVRange.java b/Vision/src/main/java/com/technototes/vision/HSVRange.java index 14c6454c..f0298888 100644 --- a/Vision/src/main/java/com/technototes/vision/HSVRange.java +++ b/Vision/src/main/java/com/technototes/vision/HSVRange.java @@ -2,6 +2,9 @@ import org.opencv.core.Scalar; +/** + * This is used to detect colors in a particular HSV 'range' + */ public class HSVRange { int hueLow, hueHigh; @@ -18,7 +21,16 @@ private HSVRange(int hLo, int hHi, HSVRange copyFrom) { valHigh = copyFrom.valHigh; } - // Create an HSV color range, around 'hue' (0-180, 2 degrees) + /** + * Create an HSV color range, around 'hue' (0-180, 2 degrees) + * + * @param hue The hue (0-179): each unit is *2* degrees! + * @param hRange The +/- on the hue for detection + * @param sLo The low saturation range + * @param sHi The high saturation range + * @param vLo The low value range + * @param vHi The high value range + */ public HSVRange(int hue, int hRange, int sLo, int sHi, int vLo, int vHi) { while (hue > 180) { hue -= 180; @@ -34,6 +46,9 @@ public HSVRange(int hue, int hRange, int sLo, int sHi, int vLo, int vHi) { valHigh = Math.max(vLo, vHi); } + /** + * @return An HSVRange for the 'low end' of the hue range, if it's below 0, null otherwise + */ public HSVRange makeWrapAround() { if (hueLow >= 0) { return null; @@ -41,6 +56,9 @@ public HSVRange makeWrapAround() { return new HSVRange(180 + hueLow, 180, this); } + /** + * @return An HSVRange for the positive part of a hue range if it spans across 0, null otherwise + */ public HSVRange truncateRange() { if (hueLow < 0) { return new HSVRange(0, hueHigh, this); @@ -48,14 +66,25 @@ public HSVRange truncateRange() { return null; } + /** + * @param newHue The new hue for an existing HSVrange + * @param hRange The new range for an existing HSVRange + * @return A new HSVRange using the current Saturation and Values, with a new hue & hue range + */ public HSVRange newHue(int newHue, int hRange) { return new HSVRange(newHue, hRange, satLow, satHigh, valLow, valHigh); } + /** + * @return A Scalar for OpenCV use for color detection for the low end + */ public Scalar lowEdge() { return new Scalar(hueLow, satLow, valLow); } + /** + * @return A Scalar for OpenCV use for color detection for the high end + */ public Scalar highEdge() { return new Scalar(hueHigh, satHigh, valHigh); } diff --git a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java index a1ea8f18..0217b997 100644 --- a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java +++ b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java @@ -21,15 +21,30 @@ public abstract class BasicVisionSubsystem extends OpenCvPipeline implements Sub * The Camera object this subsystem is processing frames from */ protected Camera camera; + /** + * The width and height of the image requested from the camera + */ protected int width, height; + /** + * The rotation applied to the image + */ protected OpenCvCameraRotation rotation; + /** + * The current frame being processed (can be drawn on!) + */ protected Mat curFrameRGB; + /** + * True iff the pipeline is properly set and running + */ protected boolean pipelineSet; /** * Create the subsystem with the Camera provided * * @param c The camera to process frames from + * @param w The width of the camera image + * @param h The height fo the camera image + * @param rot The rotation of the camera image */ public BasicVisionSubsystem(Camera c, int w, int h, OpenCvCameraRotation rot) { camera = c; @@ -49,10 +64,17 @@ public Camera getDevice() { return camera; } + + /** + * Start the images coming from the camera + */ protected void beginStreaming() { camera.startStreaming(width, height, rotation); } + /** + * Turn on the camera and start visual processing + */ public void startVisionPipeline() { camera.setPipeline(this); pipelineSet = true; @@ -60,6 +82,9 @@ public void startVisionPipeline() { camera.openCameraDeviceAsync(this::beginStreaming, i -> startVisionPipeline()); } + /** + * Turn off the camera and enable visual processing + */ public void stopVisionPipeline() { camera.setPipeline(null); pipelineSet = false; @@ -68,6 +93,11 @@ public void stopVisionPipeline() { }); } + /** + * Turn off the camera and stop visual processing + * + * @return this for chaining if you really want... + */ public BasicVisionSubsystem startStreaming() { beginStreaming(); return this; @@ -91,18 +121,45 @@ public BasicVisionSubsystem stopStreaming() { // If you don't use FtcDashboard, just make an array of Rect's and be done with it. // But really, you should be using FtcDashboard. It's much faster to get this right. - // How many rectangles are you checking? + /** + * @return How many rectangles are you checking + */ public abstract int numRectangles(); - // Get the specific rectangle number + /** + * Get the specific rectangle number + * + * @param rectNumber Which rectangle to return + * @return The rectangle that will be processed + */ public abstract Rect getRect(int rectNumber); - // Process the particular rectangle (you probably want to call countPixelsOfColor ;) ) + + + /** + * Process the particular rectangle (you probably want to call countPixelsOfColor ;) ) + * @param inputHSV The HSV rectangle to process + * @param rectNumber The rectangle this Mat is from within the overall image + */ public abstract void runDetection(Mat inputHSV, int rectNumber); + /** + * Override this to do something before a frame is processed + */ protected void detectionStart() {} + /** + * Override this to do something after a frame is processed + */ protected void detectionEnd() {} + /** + * Run processing on the frame provided. + * This invokes detectionStart, numRectangles, getRect, runDetection, and detectionEnd. + * You probably don't want to bother overriding it, unless you can't use the rectangle + * processing facilty as is. + * + * @param frame The RGB frame from the camera + */ protected void detectionProcessing(Mat frame) { // Put the input matrix in a member variable, so that other functions can draw on it curFrameRGB = frame; @@ -132,6 +189,16 @@ public void init(Mat firstFrame) { detectionProcessing(firstFrame); } + /** + * Count the number of pixels that are in the given range + * + * @param range The HSV range to look for + * @param imgHSV A sub-rectangle to count pixels in + * @param telemetryRGB The (optional) output RGB image (to help with debugging) + * @param xOffset The x-offset fo the subrectangle within the output RGB image + * @param yOffset The y-offset fo the subrectangle within the output RGB image + * @return The number of pixels that were found to be within the specified range + */ protected int countPixelsOfColor(HSVRange range, Mat imgHSV, Mat telemetryRGB, int xOffset, int yOffset) { int totalColorCount = 0; // Since we might have a hue range of -15 to 15 to detect red, From 848fe6a6f66ee1b21064f3bbc2a3e47794499fff Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Mon, 16 Oct 2023 23:06:31 -0700 Subject: [PATCH 22/34] Added some @Deprecated tags in the IMU class, formatted code --- .../com/technototes/library/control/CommandInput.java | 3 +++ .../com/technototes/library/hardware/sensor/IMU.java | 10 ++++++++++ .../vision/subsystem/BasicVisionSubsystem.java | 4 +--- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java index a773b521..3e2d005a 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java +++ b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java @@ -508,6 +508,7 @@ default T whileReleasedOnce(Command command) { default T whileReleasedOnce(S req, Consumer methodRef) { return whileReleasedOnce(new SimpleRequiredCommand<>(req, methodRef)); } + /** * Schedule the method to be run (with the parameter provided) on the given subsystem to be * run when the input is released, but only once! @@ -526,6 +527,7 @@ default T whileReleasedOnce(S req, Consumer methodRef) default T whileReleasedOnce(S req, BiConsumer methodRef, R param) { return whileReleasedOnce(new ParameterRequiredCommand<>(req, methodRef, param)); } + /** * Schedule the method to be run when the input is released, but only once! * @@ -539,6 +541,7 @@ default T whileReleasedOnce(S req, BiConsumer met default T whileReleasedOnce(Runnable methodRef) { return whileReleasedOnce(new SimpleCommand(methodRef)); } + /** * Schedule the method to be run (with the paramter provided) when the input is released, * but only once! diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/IMU.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/IMU.java index 9d3c330f..4c235c3a 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/IMU.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/IMU.java @@ -15,7 +15,10 @@ public class IMU extends Sensor implements /** * The direction of the axes signs when remapping the axes + * + * Probably don't use this stuff. Just use the IMU direction from the 8.1 and later SDK */ + @Deprecated public enum AxesSigns { /** * Positive, Positive, Positive @@ -74,7 +77,10 @@ public enum AxesSigns { /** * Make an imu + * + * Use the Logo/Usb Facing direction API's as part of the FTC 8.1+ SDK */ + @Deprecated public IMU(com.qualcomm.robotcore.hardware.IMU device, com.qualcomm.robotcore.hardware.IMU.Parameters params) { super(device); angleOffset = 0.0; @@ -88,7 +94,10 @@ public IMU(com.qualcomm.robotcore.hardware.IMU device, com.qualcomm.robotcore.ha /** * Make an imu + * + * Use the Logo/Usb Facing direction API's as part of the FTC 8.1+ SDK */ + @Deprecated public IMU(String deviceName, com.qualcomm.robotcore.hardware.IMU.Parameters params) { super(deviceName); angleOffset = 0.0; @@ -238,6 +247,7 @@ public IMU remapAxesAndSigns(AxesOrder order, AxesSigns signs) { * @param legacySigns The *legacy* signs desired * @return this (for chaining) */ + @Deprecated public IMU remapLegacyAxes(AxesOrder legacyOrder, AxesSigns legacySigns) { // The BNO055 has the X and Y axes rotated 90 degrees :/ // These are *very* untested diff --git a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java index 0217b997..3f09882f 100644 --- a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java +++ b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java @@ -64,7 +64,6 @@ public Camera getDevice() { return camera; } - /** * Start the images coming from the camera */ @@ -134,8 +133,6 @@ public BasicVisionSubsystem stopStreaming() { */ public abstract Rect getRect(int rectNumber); - - /** * Process the particular rectangle (you probably want to call countPixelsOfColor ;) ) * @param inputHSV The HSV rectangle to process @@ -147,6 +144,7 @@ public BasicVisionSubsystem stopStreaming() { * Override this to do something before a frame is processed */ protected void detectionStart() {} + /** * Override this to do something after a frame is processed */ From 09b6e301ba8e2a7e6527ace624d463930718f38c Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Thu, 19 Oct 2023 07:00:03 -0700 Subject: [PATCH 23/34] Wrote up a little bit about simulation, to get it written down somewhere --- notes.md | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/notes.md b/notes.md index d917ab77..049c1152 100644 --- a/notes.md +++ b/notes.md @@ -1,6 +1,7 @@ # Notes for Kevin -(I'm the software mentor, picking up ownership of TechnLib from Alex Stedman, the original author) +(I'm the software mentor for 16750/20403 and have picked up ownership of TechnLib from Alex Stedman, +the original author, as he's doing silly things like "attending college") ## Hardware details to keep in mind @@ -9,3 +10,40 @@ The analog sticks are vertically inverted: When you push the stick up/away, the The shoulder triggers' range is from 0 to 1, not -1 to 1. I'm not currently sure what orientation the SDK 8.1+ IMU calls 0 degrees. + +## Simulation + +This has been in my head since my first year (2019, SkyStone) + +There ought to be a simulator for this stuff. It would let programmers work more independently to +validate basic stuff. I've never built a simulator, but I'm a semi competent developer, so (famous +last words) how hard can it be? ftcsim and vrs both lack some amount of flexibility, why doing a lot +more than what I really need/want for a team who's building a real bot. + +The core things that would need simulated: + +- Motors (with encoders) +- Servos (in both CR and Servo mode) +- Sensors (pick the order to get them going) + - IMU + - Bump + - Color + - 2M range + - Range + +Probably not worth simulating: + +- Vision. I could support connecting a webcam so the students could use an actual webcam, but I'm + not about to deal with AprilTags and TFOD. ML sucks. It doesn't work at level level of determinism + that makes me thing I could do anything useful with it. It's quantum physics, if the probability + of weird stuff happening is 10^-2 instead of 10^-20000000. Thanks, but no thanks. +- Controllers. Just wire them up from the computer + +Where do things get messy? I'd need some mechanism to translate rotational motion. I don't have the +interest to do a full physics simulator, so I could potentially make this pretty rudimentary. + +### What's next? + +Get through this season, then maybe start horsing around with this? Maybe learn Kotlin, since it +looks _much_ less verbose than Java (Seriously, Java, you've had almost 30 years. Why do you still +hate developers so much?) From d528e61ef24a49e7ddc7cd230179749b9ca13a04 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Thu, 19 Oct 2023 19:07:57 -0700 Subject: [PATCH 24/34] Removed a bunch of overloads to simplify the API's --- .../library/control/CommandInput.java | 679 ------------------ .../java/com/technototes/vision/HSVRange.java | 3 + 2 files changed, 3 insertions(+), 679 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java index 3e2d005a..db161c3a 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java +++ b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java @@ -28,70 +28,6 @@ default T whenPressed(Command command) { return schedule(getInstance()::isJustPressed, command); } - /** - * Schedule a method of a required subsystem to be run once the input is pressed. - * - * {@code - * // This command calls robot.liftSubsys.MoveUp() - * gamepad.dpad.up.whenPressed(robot.liftSubsys, LiftSubsystem::MoveUp) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whenPressed(S req, Consumer methodRef) { - return whenPressed(new SimpleRequiredCommand<>(req, methodRef)); - } - - /** - * Schedule a method of a required subsystem (with a parameter) to be run once the input is pressed. - * - * {@code - * // This command calls robot.liftSubsys.Move(LiftDirection.UP) - * gamepad.dpad.up.whenPressed(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param param the value to pass to the method being invoked - * @param The type of the subsystem required by the method - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whenPressed(S req, BiConsumer methodRef, R param) { - return whenPressed(new ParameterRequiredCommand<>(req, methodRef, param)); - } - - /** - * Schedule a method to be run once the input is pressed. - * - * {@code - * // This command calls robot.brightenLights - * gamepad.dpad.up.whenPressed(robot::brightenLights) - * } - * @param methodRef the method on the subsystem to invoke - * @return The CommandInput<T> instance - */ - default T whenPressed(Runnable methodRef) { - return whenPressed(new SimpleCommand(methodRef)); - } - - /** - * Schedule a method with a parameter to be run once the input is pressed. - * - * {@code - * // This command calls robot.blinkLights(RGB_PURPLE) - * gamepad.dpad.up.whenPressed(robot::blinkLights, RGB_PURPLE) - * } - * @param methodRef the method to invoke - * @param param the parameter to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whenPressed(Consumer methodRef, R param) { - return whenPressed(new ParameterCommand<>(methodRef, param)); - } - /** * Schedule a command to be run once the input is released. * @@ -102,70 +38,6 @@ default T whenReleased(Command command) { return schedule(getInstance()::isJustReleased, command); } - /** - * Schedule a method of a required subsystem to be run once the input is released. - * - * {@code - * // This command calls robot.liftSubsys.MoveUp() - * gamepad.dpad.up.whenReleased(robot.liftSubsys, LiftSubsystem::MoveUp) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whenReleased(S req, Consumer methodRef) { - return whenReleased(new SimpleRequiredCommand<>(req, methodRef)); - } - - /** - * Schedule a method of a required subsystem (with a parameter) to be run once the input is released. - * - * {@code - * // This command calls robot.liftSubsys.Move(LiftDirection.UP) - * gamepad.dpad.up.whenReleased(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param param the value to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whenReleased(S req, BiConsumer methodRef, R param) { - return whenReleased(new ParameterRequiredCommand<>(req, methodRef, param)); - } - - /** - * Schedule a method to be run once the input is released. - * - * {@code - * // This command calls robot.brightenLights - * gamepad.dpad.up.whenReleased(robot::brightenLights) - * } - * @param methodRef the method on the subsystem to invoke - * @return The CommandInput<T> instance - */ - default T whenReleased(Runnable methodRef) { - return whenReleased(new SimpleCommand(methodRef)); - } - - /** - * Schedule a method with a parameter to be run once the input is released. - * - * {@code - * // This command calls robot.blinkLights(RGB_PURPLE) - * gamepad.dpad.up.whenReleased(robot::blinkLights, RGB_PURPLE) - * } - * @param methodRef the method to invoke - * @param param the parameter to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whenReleased(Consumer methodRef, R param) { - return whenReleased(new ParameterCommand<>(methodRef, param)); - } - /** * Schedule a command to be run over & over while the input is pressed, * but once it's released, the command will be cancelled. @@ -177,74 +49,6 @@ default T whilePressed(Command command) { return schedule(getInstance()::isPressed, command.cancelUpon(getInstance()::isReleased)); } - /** - * Schedule a method of a required subsystem to be run over & over while the input is pressed, - * but once it's released, the command will be cancelled. - * - * {@code - * // This command calls robot.liftSubsys.MoveUp() - * gamepad.dpad.up.whilePressed(robot.liftSubsys, LiftSubsystem::MoveUp) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whilePressed(S req, Consumer methodRef) { - return whilePressed(new SimpleRequiredCommand<>(req, methodRef)); - } - - /** - * Schedule a method of a required subsystem (with a parameter) to be run over & over while the input is pressed, - * but once it's released, the command will be cancelled. - * - * {@code - * // This command calls robot.liftSubsys.Move(LiftDirection.UP) - * gamepad.dpad.up.whilePressed(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param param the value to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whilePressed(S req, BiConsumer methodRef, R param) { - return whilePressed(new ParameterRequiredCommand<>(req, methodRef, param)); - } - - /** - * Schedule a method to be run over & over while the input is pressed, - * but once it's released, the command will be cancelled. - * - * {@code - * // This command calls robot.brightenLights - * gamepad.dpad.up.whilePressed(robot::brightenLights) - * } - * @param methodRef the method on the subsystem to invoke - * @return The CommandInput<T> instance - */ - default T whilePressed(Runnable methodRef) { - return whilePressed(new SimpleCommand(methodRef)); - } - - /** - * Schedule a method with a parameter to be run over & over while the input is pressed, - * but once it's released, the command will be cancelled. - * - * {@code - * // This command calls robot.blinkLights(RGB_PURPLE) - * gamepad.dpad.up.whilePressed(robot::blinkLights, RGB_PURPLE) - * } - * @param methodRef the method to invoke - * @param param the parameter to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whilePressed(Consumer methodRef, R param) { - return whilePressed(new ParameterCommand<>(methodRef, param)); - } - /** * Schedule a command to be run over & over while the input is released, * but once it's pressed, the command will be cancelled. @@ -256,74 +60,6 @@ default T whileReleased(Command command) { return schedule(getInstance()::isReleased, command.cancelUpon(getInstance()::isPressed)); } - /** - * Schedule a method of a required subsystem to be run over & over while the input is released, - * but once it's pressed, the command will be cancelled. - * - * {@code - * // This command calls robot.liftSubsys.StayPut() - * gamepad.dpad.up.whileReleased(robot.liftSubsys, LiftSubsystem::StayPut) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whileReleased(S req, Consumer methodRef) { - return whileReleased(new SimpleRequiredCommand<>(req, methodRef)); - } - - /** - * Schedule a method of a required subsystem (with a parameter) to be run over & over while the input is released, - * but once it's pressed, the command will be cancelled. - * - * {@code - * // This command calls robot.liftSubsys.Move(LiftDirection.UP) - * gamepad.dpad.up.whileReleased(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param param the value to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whileReleased(S req, BiConsumer methodRef, R param) { - return whileReleased(new ParameterRequiredCommand<>(req, methodRef, param)); - } - - /** - * Schedule a method to be run over & over while the input is released, - * but once it's pressed, the command will be cancelled. - * - * {@code - * // This command calls robot.brightenLights - * gamepad.dpad.up.whileReleased(robot::brightenLights) - * } - * @param methodRef the method on the subsystem to invoke - * @return The CommandInput<T> instance - */ - default T whileReleased(Runnable methodRef) { - return whileReleased(new SimpleCommand(methodRef)); - } - - /** - * Schedule a method with a parameter to be run over & over while the input is released, - * but once it's pressed, the command will be cancelled. - * - * {@code - * // This command calls robot.blinkLights(RGB_PURPLE) - * gamepad.dpad.up.whileReleased(robot::blinkLights, RGB_PURPLE) - * } - * @param methodRef the method to invoke - * @param param the parameter to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whileReleased(Consumer methodRef, R param) { - return whileReleased(new ParameterCommand<>(methodRef, param)); - } - /** * Schedule a command to be run while the input is pressed, but only once, * and if the command takes so long that the input is released, the command @@ -336,78 +72,6 @@ default T whilePressedOnce(Command command) { return schedule(getInstance()::isJustPressed, command.cancelUpon(getInstance()::isReleased)); } - /** - * Schedule a method of a required subsystem to be run while the input is pressed, but only once, - * and if the command takes so long that the input is released, the command - * will be cancelled. - * - * {@code - * // This command calls robot.liftSubsys.StayPut() - * gamepad.dpad.up.whilePressedOnce(robot.liftSubsys, LiftSubsystem::StayPut) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whilePressedOnce(S req, Consumer methodRef) { - return whilePressedOnce(new SimpleRequiredCommand<>(req, methodRef)); - } - - /** - * Schedule a method of a required subsystem (with a parameter) to be run while the input is pressed, but only once, - * and if the command takes so long that the input is released, the command - * will be cancelled. - * - * {@code - * // This command calls robot.liftSubsys.Move(LiftDirection.UP) - * gamepad.dpad.up.whilePressedOnce(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param param the value to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whilePressedOnce(S req, BiConsumer methodRef, R param) { - return whilePressedOnce(new ParameterRequiredCommand<>(req, methodRef, param)); - } - - /** - * Schedule a method to be run while the input is pressed, but only once, - * and if the command takes so long that the input is released, the command - * will be cancelled. - * - * {@code - * // This command calls robot.brightenLights - * gamepad.dpad.up.whilePressedOnce(robot::brightenLights) - * } - * @param methodRef the method on the subsystem to invoke - * @return The CommandInput<T> instance - */ - default T whilePressedOnce(Runnable methodRef) { - return whilePressedOnce(new SimpleCommand(methodRef)); - } - - /** - * Schedule a method with a parameter to be run while the input is pressed, but only once, - * and if the command takes so long that the input is released, the command - * will be cancelled. - * - * {@code - * // This command calls robot.blinkLights(RGB_PURPLE) - * gamepad.dpad.up.whilePressedOnce(robot::blinkLights, RGB_PURPLE) - * } - * @param methodRef the method to invoke - * @param param the parameter to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whilePressedOnce(Consumer methodRef, R param) { - return whilePressedOnce(new ParameterCommand<>(methodRef, param)); - } - /** * Schedule a command to be run over & over while the input is pressed * @@ -418,70 +82,6 @@ default T whilePressedContinuous(Command command) { return schedule(getInstance()::isPressed, command); } - /** - * Schedule a method of a required subsystem to be run over & over while the input is pressed - * - * {@code - * // This command calls robot.liftSubsys.MoveUp() - * gamepad.dpad.up.whilePressedContinuous(robot.liftSubsys, LiftSubsystem::MoveUp) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whilePressedContinuous(S req, Consumer methodRef) { - return whilePressedContinuous(new SimpleRequiredCommand<>(req, methodRef)); - } - - /** - * Schedule a method of a required subsystem (with a parameter) to be run over & over while the input is pressed - * - * {@code - * // This command calls robot.liftSubsys.Move(LiftDirection.UP) - * gamepad.dpad.up.whilePressedContinuous(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param param the value to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whilePressedContinuous(S req, BiConsumer methodRef, R param) { - return whilePressedContinuous(new ParameterRequiredCommand<>(req, methodRef, param)); - } - - /** - * Schedule a method to be run over & over while the input is pressed - * - * {@code - * // This command calls robot.brightenLights - * gamepad.dpad.up.whilePressedContinuous(robot::brightenLights) - * } - * @param methodRef the method on the subsystem to invoke - * @return The CommandInput<T> instance - */ - default T whilePressedContinuous(Runnable methodRef) { - return whilePressedContinuous(new SimpleCommand(methodRef)); - } - - /** - * Schedule a method with a parameter to be run over & over while the input is pressed - * - * {@code - * // This command calls robot.blinkLights(RGB_PURPLE) - * gamepad.dpad.up.whilePressedContinuous(robot::blinkLights, RGB_PURPLE) - * } - * @param methodRef the method to invoke - * @param param the parameter to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whilePressedContinuous(Consumer methodRef, R param) { - return whilePressedContinuous(new ParameterCommand<>(methodRef, param)); - } - /** * Schedule the command to be run when the input is released, but only once! * @@ -492,73 +92,6 @@ default T whileReleasedOnce(Command command) { return schedule(getInstance()::isJustReleased, command.cancelUpon(getInstance()::isPressed)); } - /** - * Schedule the method to be run on the given subsystem to be run when the input is - * released, but only once! - * - * {@code - * // This command calls robot.liftSubsys.MoveUp() - * gamepad.dpad.up.whileReleasedOnce(robot.liftSubsys, LiftSubsystem::MoveUp) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whileReleasedOnce(S req, Consumer methodRef) { - return whileReleasedOnce(new SimpleRequiredCommand<>(req, methodRef)); - } - - /** - * Schedule the method to be run (with the parameter provided) on the given subsystem to be - * run when the input is released, but only once! - * - * {@code - * // This command calls robot.liftSubsys.Move(LiftDirection.UP) - * gamepad.dpad.up.whileReleasedOnce(robot.liftSubsys, LiftSubsystem::Move, LiftDirction.UP) - * } - * @param req The subsystem to control - * @param methodRef the method on the subsystem to invoke - * @param param the value to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whileReleasedOnce(S req, BiConsumer methodRef, R param) { - return whileReleasedOnce(new ParameterRequiredCommand<>(req, methodRef, param)); - } - - /** - * Schedule the method to be run when the input is released, but only once! - * - * {@code - * // This command calls robot.lightsOff - * gamepad.dpad.up.whileReleasedOnce(robot::lightsOff) - * } - * @param methodRef the method on the subsystem to invoke - * @return The CommandInput<T> instance - */ - default T whileReleasedOnce(Runnable methodRef) { - return whileReleasedOnce(new SimpleCommand(methodRef)); - } - - /** - * Schedule the method to be run (with the paramter provided) when the input is released, - * but only once! - * - * {@code - * // This command calls robot.blinkLights(2) - * gamepad.dpad.up.whileReleasedOnce(robot::blinkLights, 2) - * } - * @param methodRef the method to invoke - * @param param the parameter to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whileReleasedOnce(Consumer methodRef, R param) { - return whileReleasedOnce(new ParameterCommand<>(methodRef, param)); - } - /** * Schedule a command to be run when the input was just toggled * (From pressed to released, or released to pressed) @@ -570,58 +103,6 @@ default T whenToggled(Command command) { return schedule(getInstance()::isJustToggled, command); } - /** - * Schedule a method that requires a subsystem to be run when the input was just toggled - * (From pressed to released, or released to pressed) - * - * @param req The required subsystem i.e. the subsystem being controlled - * @param methodRef The method of the subsystem being invoked - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whenToggled(S req, Consumer methodRef) { - return whenToggled(new SimpleRequiredCommand<>(req, methodRef)); - } - - /** - * Schedule a method that requires a subsystem (with a parameter) to be run when the input was just toggled - * (From pressed to released, or released to pressed) - * - * @param req The required subsystem i.e. the subsystem being controlled - * @param methodRef The method of the subsystem being invoked - * @param param The parameter to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whenToggled(S req, BiConsumer methodRef, R param) { - return whenToggled(new ParameterRequiredCommand<>(req, methodRef, param)); - } - - /** - * Schedule a method to be run when the input was just toggled - * (From pressed to released, or released to pressed) - * - * @param methodRef The method to be invoked - * @return The CommandInput<T> instance - */ - default T whenToggled(Runnable methodRef) { - return whenToggled(new SimpleCommand(methodRef)); - } - - /** - * Schedule a method (with a parameter) to be run when the input was just toggled - * (From pressed to released, or released to pressed) - * - * @param methodRef The method to be invoked - * @param param the parameter to be passed to the method invoked - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whenToggled(Consumer methodRef, R param) { - return whenToggled(new ParameterCommand<>(methodRef, param)); - } - /** * Schedule the command to be run when the input has only stopped being toggled * @@ -632,54 +113,6 @@ default T whenInverseToggled(Command command) { return schedule(getInstance()::isJustInverseToggled, command); } - /** - * Schedule a method on a subsystem to be run when the input has only stopped being toggled - * - * @param req The required subsystem i.e. the subsystem being controlled - * @param methodRef The method of the subsystem being invoked - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whenInverseToggled(S req, Consumer methodRef) { - return whenInverseToggled(new SimpleRequiredCommand<>(req, methodRef)); - } - - /** - * Schedule the command to be run when the input has only stopped being toggled - * - * @param req The required subsystem i.e. the subsystem being controlled - * @param methodRef The method of the subsystem being invoked - * @param param The parameter to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whenInverseToggled(S req, BiConsumer methodRef, R param) { - return whenInverseToggled(new ParameterRequiredCommand<>(req, methodRef, param)); - } - - /** - * Schedule a method to be run when the input has only stopped being toggled - * - * @param methodRef The method to be invoked - * @return The CommandInput<T> instance - */ - default T whenInverseToggled(Runnable methodRef) { - return whenInverseToggled(new SimpleCommand(methodRef)); - } - - /** - * Schedule a method with a parameter to be run when the input has only stopped being toggled - * - * @param methodRef The method to be invoked - * @param param the parameter to be passed to the method invoked - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whenInverseToggled(Consumer methodRef, R param) { - return whenInverseToggled(new ParameterCommand<>(methodRef, param)); - } - /** * Schedule the command to be run while the input is changing. * It will be canceled once the input is not changing. @@ -693,66 +126,6 @@ default T whileToggled(Command command) { return schedule(getInstance()::isToggled, command.cancelUpon(getInstance()::isInverseToggled)); } - /** - * Schedule a method to be run while the input is changing. - * It will be canceled once the input is not changing. - * This is questionably useful, as toggling over & over is a 'frequency' problem. - * I expect this is going to behave almost the same as whenToggled... - * - * @param req The required subsystem i.e. the subsystem being controlled - * @param methodRef The method of the subsystem being invoked - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whileToggled(S req, Consumer methodRef) { - return whileToggled(new SimpleRequiredCommand<>(req, methodRef)); - } - - /** - * Schedule a method (with a parameter) to be run while the input is changing. - * It will be canceled once the input is not changing. - * This is questionably useful, as toggling over & over is a 'frequency' problem. - * I expect this is going to behave almost the same as whenToggled... - * - * @param req The required subsystem i.e. the subsystem being controlled - * @param methodRef The method of the subsystem being invoked - * @param param The parameter to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whileToggled(S req, BiConsumer methodRef, R param) { - return whileToggled(new ParameterRequiredCommand<>(req, methodRef, param)); - } - - /** - * Schedule a method to be run while the input is changing. - * It will be canceled once the input is not changing. - * This is questionably useful, as toggling over & over is a 'frequency' problem. - * I expect this is going to behave almost the same as whenToggled... - * - * @param methodRef The method to be invoked - * @return The CommandInput<T> instance - */ - default T whileToggled(Runnable methodRef) { - return whileToggled(new SimpleCommand(methodRef)); - } - - /** - * Schedule a method (with a parameter) to be run while the input is changing. - * It will be canceled once the input is not changing. - * This is questionably useful, as toggling over & over is a 'frequency' problem. - * I expect this is going to behave almost the same as whenToggled... - * - * @param methodRef The method to be invoked - * @param param the parameter to be passed to the method invoked - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whileToggled(Consumer methodRef, R param) { - return whileToggled(new ParameterCommand<>(methodRef, param)); - } - /** * Schedule the command to run over & over while the input is *not* changing * It will be canceled once the input is toggled. @@ -764,58 +137,6 @@ default T whileInverseToggled(Command command) { return schedule(getInstance()::isInverseToggled, command.cancelUpon(getInstance()::isToggled)); } - /** - * Schedule the command to run over & over while the input is *not* changing - * It will be canceled once the input is toggled. - * - * @param req The required subsystem i.e. the subsystem being controlled - * @param methodRef The method of the subsystem being invoked - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whileInverseToggled(S req, Consumer methodRef) { - return whileInverseToggled(new SimpleRequiredCommand<>(req, methodRef)); - } - - /** - * Schedule the command to run over & over while the input is *not* changing - * It will be canceled once the input is toggled. - * - * @param req The required subsystem i.e. the subsystem being controlled - * @param methodRef The method of the subsystem being invoked - * @param param The parameter to pass to the method being invoked - * @param The type of the parameter to pass to the method - * @param The type of the subsystem required by the method - * @return The CommandInput<T> instance - */ - default T whileInverseToggled(S req, BiConsumer methodRef, R param) { - return whileInverseToggled(new ParameterRequiredCommand<>(req, methodRef, param)); - } - - /** - * Schedule the command to run over & over while the input is *not* changing - * It will be canceled once the input is toggled. - * - * @param methodRef The method to be invoked - * @return The CommandInput<T> instance - */ - default T whileInverseToggled(Runnable methodRef) { - return whileInverseToggled(new SimpleCommand(methodRef)); - } - - /** - * Schedule the command to run over & over while the input is *not* changing - * It will be canceled once the input is toggled. - * - * @param methodRef The method to be invoked - * @param param the parameter to be passed to the method invoked - * @param The type of the parameter to pass to the method - * @return The CommandInput<T> instance - */ - default T whileInverseToggled(Consumer methodRef, R param) { - return whileInverseToggled(new ParameterCommand<>(methodRef, param)); - } - /** * Return instance of class parameter * diff --git a/Vision/src/main/java/com/technototes/vision/HSVRange.java b/Vision/src/main/java/com/technototes/vision/HSVRange.java index f0298888..65ec0a63 100644 --- a/Vision/src/main/java/com/technototes/vision/HSVRange.java +++ b/Vision/src/main/java/com/technototes/vision/HSVRange.java @@ -2,6 +2,9 @@ import org.opencv.core.Scalar; +/** + * This is used to detect colors in a particular HSV 'range' + */ /** * This is used to detect colors in a particular HSV 'range' */ From fe0a89b367b23af1b5aef848c24aa52a770d7897 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Thu, 19 Oct 2023 21:31:33 -0700 Subject: [PATCH 25/34] Added an extra constructor for SimpleCommand --- .../java/com/technototes/library/command/SimpleCommand.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java index 3a64b9b7..92515cf3 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleCommand.java @@ -12,6 +12,11 @@ public SimpleCommand(Runnable m) { method = m; } + public SimpleCommand(Consumer m, T arg) { + super(); + method = () -> m.accept(arg); + } + @Override public void execute() { method.run(); From c4edc95d1f2b52baba1a5e9ce5b15208ed7980ba Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Thu, 19 Oct 2023 21:51:30 -0700 Subject: [PATCH 26/34] Removed a bunch of overloads to simplify the CommandScheduler API, too --- .../library/command/CommandScheduler.java | 250 ------------------ 1 file changed, 250 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java index f9e593d6..10e3bebe 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java @@ -8,9 +8,7 @@ import java.util.LinkedHashSet; import java.util.Map; import java.util.Set; -import java.util.function.BiConsumer; import java.util.function.BooleanSupplier; -import java.util.function.Consumer; /** * This is a "singleton" object for scheduling commands. Most usage originates from {@link Command} @@ -120,65 +118,6 @@ public static void schedule(Command command) { schedule(command, () -> true); } - /** - * Schedule a method on a subsystem to run as a command: - * {@code - * CommandScheduler.schedule(robot.intakeSubsystem, IntakeSubsystem::activate) - * } - * - * @param req the subsystem required - * @param methodRef the function to invoke on the subsystem - * @param The type of the subsystem required by the method - */ - public static void schedule(S req, Consumer methodRef) { - schedule(req, methodRef, () -> true); - } - - /** - * Schedule a method on a subsystem to run as a command, that takes an extra parameter: - * {@code - * // This command effectively calls robot.liftSubsys.GoToPosition(LiftPos.MIDDLE) - * CommandScheduler.schedule(robot.liftSubsys, LiftSubsystem::GoToPosition, LiftPos.MIDDLE) - * } - * - * @param req the subsystem required - * @param methodRef the function to invoke on the subsystem - * @param param the parameter to pass to the function being called - * @param The type of the subsystem required by the method - * @param The type of the parameter to pass to the method - */ - public static void schedule(S req, BiConsumer methodRef, T param) { - schedule(req, methodRef, param, () -> true); - } - - /** - * Schedule a method to run as a command that does not require controlling a subsystem! - * {@code - * CommandScheduler.schedule(robot.signalSubsystem::blinkLights) - * } - * - * @param methodRef the function to invoke on the subsystem - */ - public static void schedule(Runnable methodRef) { - schedule(methodRef, () -> true); - } - - /** - * Schedule a method on a subsystem to run as a command, that takes an extra parameter: - * {@code - * // This command effectively calls robot.liftSubsys.GoToPosition(LiftPos.MIDDLE) - * CommandScheduler.schedule(robot.liftSubsys, LiftSubsystem::GoToPosition, LiftPos.MIDDLE) - * } - * - * @param methodRef the function to invoke on the subsystem - * @param param the parameter to pass to the function being called - * @param The type of the subsystem required by the method - * @param The type of the parameter to pass to the method - */ - public static void schedule(Consumer methodRef, T param) { - schedule(methodRef, param, () -> true); - } - /** * Schedule a command to be run recurringly during the 'Init' phase of an opmode. * This can be used for vision, as well as running any system to help the @@ -192,89 +131,6 @@ public static void scheduleInit(Command command, BooleanSupplier supplier) { scheduleForState(command, supplier, CommandOpMode.OpModeState.INIT); } - /** - * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode. - * This can be used for vision, as well as running any system to help the - * drive team ensure that the robot is appropriately positioned on the field. - * This will only be run if the BooleanSupplier 'supplier' is also true! - * {@code - * // This command effectively calls robot.visionSystem.seeTheThing() - * CommandScheduler.scheduleInit(robot.visionSystem, TokenIdentifyingSubsystem::seeTheThing, () -> TokenIdentifyingSubsystem.CAMERA_CONNECTED) - * } - * - * @param req the subsystem required - * @param methodRef the function to invoke on the subsystem - * @param supplier the boolean function to run to determine if the function should be run - * @param The type of the subsystem required by the method - */ - public static void scheduleInit(S req, Consumer methodRef, BooleanSupplier supplier) { - scheduleInit(new SimpleRequiredCommand<>(req, methodRef), supplier); - } - - /** - * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode, - * that also takes a parameter. - * This can be used for vision, as well as running any system to help the - * drive team ensure that the robot is appropriately positioned on the field. - * This will only be run if the BooleanSupplier 'supplier' is also true! - * {@code - * // This command effectively calls robot.visionSystem.seeTheThing(Alliance.RED), - * // but only if TokenIdentifyingSubsystem.CAMERA_CONNECTED is also true - * CommandScheduler.scheduleInit(robot.visionSystem, TokenIdentifyingSubsystem::seeTheThing, Alliance.RED, () -> TokenIdentifyingSubsystem.CAMERA_CONNECTED) - * } - * @param req the subsystem required - * @param methodRef the function to invoke on the subsystem - * @param param the argument passed to the methodRef function - * @param supplier the boolean function to run to determine if the function should be run - * @param The type of the subsystem required by the method - * @param The type of the parameter to pass to the method - */ - public static void scheduleInit( - S req, - BiConsumer methodRef, - T param, - BooleanSupplier supplier - ) { - scheduleInit(new ParameterRequiredCommand(req, methodRef, param), supplier); - } - - /** - * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode. - * This can be used for vision, as well as running any system to help the - * drive team ensure that the robot is appropriately positioned on the field. - * This will only be run if the BooleanSupplier 'supplier' is also true! - * {@code - * // This command effectively calls robot.visionSystem.seeTheThing() - * CommandScheduler.scheduleInit(robot.visionSystem, TokenIdentifyingSubsystem::seeTheThing, () -> TokenIdentifyingSubsystem.CAMERA_CONNECTED) - * } - * - * @param methodRef the function to invoke on the subsystem - * @param supplier the boolean function to run to determine if the function should be run - */ - public static void scheduleInit(Runnable methodRef, BooleanSupplier supplier) { - scheduleInit(new SimpleCommand(methodRef), supplier); - } - - /** - * Schedule a method on a subsystem to be run recurringly during the 'Init' phase of an opmode, - * that also takes a parameter. - * This can be used for vision, as well as running any system to help the - * drive team ensure that the robot is appropriately positioned on the field. - * This will only be run if the BooleanSupplier 'supplier' is also true! - * {@code - * // This command effectively calls robot.visionSystem.seeTheThing(Alliance.RED), - * // but only if TokenIdentifyingSubsystem.CAMERA_CONNECTED is also true - * CommandScheduler.scheduleInit(robot.visionSystem, TokenIdentifyingSubsystem::seeTheThing, Alliance.RED, () -> TokenIdentifyingSubsystem.CAMERA_CONNECTED) - * } - * @param methodRef the function to invoke on the subsystem - * @param param the argument passed to the methodRef function - * @param supplier the boolean function to run to determine if the function should be run - * @param The type of the parameter to pass to the method - */ - public static void scheduleInit(Consumer methodRef, T param, BooleanSupplier supplier) { - scheduleInit(new ParameterCommand<>(methodRef, param), supplier); - } - /** * Schedule a command to be run recurringly during the 'Init' phase of an opmode. * This can be used for vision, as well as running any system to help the @@ -286,22 +142,6 @@ public static void scheduleInit(Command command) { scheduleForState(command, () -> true, CommandOpMode.OpModeState.INIT); } - public static void scheduleInit(S req, Consumer methodRef) { - scheduleInit(new SimpleRequiredCommand(req, methodRef)); - } - - public static void scheduleInit(S req, BiConsumer methodRef, T param) { - scheduleInit(new ParameterRequiredCommand(req, methodRef, param)); - } - - public static void scheduleInit(Runnable methodRef) { - scheduleInit(new SimpleCommand(methodRef)); - } - - public static void scheduleInit(Consumer methodRef, T param) { - scheduleInit(new ParameterCommand<>(methodRef, param)); - } - /** * Schedule a command to be run when the OpMode is one of the provided list of states and the * 'supplier' boolean function is also true. @@ -321,42 +161,6 @@ public static void scheduleForState( ); } - public static void scheduleForState( - S req, - Consumer methodRef, - BooleanSupplier supplier, - CommandOpMode.OpModeState... states - ) { - scheduleForState(new SimpleRequiredCommand(req, methodRef), supplier, states); - } - - public static void scheduleForState( - S req, - BiConsumer methodRef, - T param, - BooleanSupplier supplier, - CommandOpMode.OpModeState... states - ) { - scheduleForState(new ParameterRequiredCommand(req, methodRef, param), supplier, states); - } - - public static void scheduleForState( - Runnable methodRef, - BooleanSupplier supplier, - CommandOpMode.OpModeState... states - ) { - scheduleForState(new SimpleCommand(methodRef), supplier, states); - } - - public static void scheduleForState( - Consumer methodRef, - T param, - BooleanSupplier supplier, - CommandOpMode.OpModeState... states - ) { - scheduleForState(new ParameterCommand<>(methodRef, param), supplier, states); - } - /** * Schedule a command to be run when the OpMode is one of the provided list of states. * @@ -370,31 +174,6 @@ public static void scheduleForState(Command command, CommandOpMode.OpModeState.. ); } - public static void scheduleForState( - S req, - Consumer methodRef, - CommandOpMode.OpModeState... states - ) { - scheduleForState(new SimpleRequiredCommand(req, methodRef), states); - } - - public static void scheduleForState( - S req, - BiConsumer methodRef, - T param, - CommandOpMode.OpModeState... states - ) { - scheduleForState(new ParameterRequiredCommand(req, methodRef, param), states); - } - - public static void scheduleForState(Runnable methodRef, CommandOpMode.OpModeState... states) { - scheduleForState(new SimpleCommand(methodRef), states); - } - - public static void scheduleForState(Consumer methodRef, T param, CommandOpMode.OpModeState... states) { - scheduleForState(new ParameterCommand<>(methodRef, param), states); - } - /** * Schedule the 'other' command (the second one) when the 'dependency' command has * finished (but *not* been cancelled!). @@ -457,14 +236,6 @@ public static void scheduleDefault(Command command, Subsystem subsystem) { } } - public static void scheduleDefault(S req, Consumer methodRef) { - scheduleDefault(new SimpleRequiredCommand(req, methodRef), req); - } - - public static void scheduleDefault(S req, BiConsumer methodRef, T param) { - scheduleDefault(new ParameterRequiredCommand(req, methodRef, param), req); - } - /** * Register a periodic function to be run once each schedule loop * @@ -518,27 +289,6 @@ public static void schedule(Command command, BooleanSupplier supplier) { } } - public static void schedule(S req, Consumer methodRef, BooleanSupplier sup) { - schedule(new SimpleRequiredCommand(req, methodRef), sup); - } - - public static void schedule( - S req, - BiConsumer methodRef, - T param, - BooleanSupplier sup - ) { - schedule(new ParameterRequiredCommand(req, methodRef, param), sup); - } - - public static void schedule(Runnable methodRef, BooleanSupplier sup) { - schedule(new SimpleCommand(methodRef), sup); - } - - public static void schedule(Consumer methodRef, T param, BooleanSupplier sup) { - schedule(new ParameterCommand<>(methodRef, param), sup); - } - /** * This is invoked from inside the CommandOpMode method, during the opCode. * It it the core logic of actually scheduling & running the commands. From 4d09f6db25b4d79ae2e0f57ce4c14c30a2355c8a Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Thu, 19 Oct 2023 22:11:24 -0700 Subject: [PATCH 27/34] Deprecated the Paramater*Command classes, and made SimpleRequiredCommand also handle a parameter --- .../technototes/library/command/ParameterCommand.java | 6 ++++++ .../library/command/ParameterRequiredCommand.java | 8 ++++++++ .../library/command/SimpleRequiredCommand.java | 10 +++++++++- 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java index 9fbf3292..3900597c 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java @@ -4,6 +4,12 @@ import java.util.function.BiConsumer; import java.util.function.Consumer; +/** + * Use SimpleCommand: It can handle a single Function (Runnable) + * or a F(T) (Consumer) + * @param + */ +@Deprecated public class ParameterCommand implements Command { U param; diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java index 73b4fcf2..305ec5cf 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java @@ -3,6 +3,14 @@ import com.technototes.library.subsystem.Subsystem; import java.util.function.BiConsumer; +/** + * Use SimplerRequiredCommand instead of this. It's more flexible: + * It works with or without a parameter, so it needed renamed... + * + * @param + * @param + */ +@Deprecated public class ParameterRequiredCommand implements Command { T sub; diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java index 41ab957e..213acdf7 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/SimpleRequiredCommand.java @@ -1,6 +1,7 @@ package com.technototes.library.command; import com.technototes.library.subsystem.Subsystem; +import java.util.function.BiConsumer; import java.util.function.Consumer; public class SimpleRequiredCommand implements Command { @@ -10,11 +11,18 @@ public class SimpleRequiredCommand implements Command { public SimpleRequiredCommand(T s, Consumer m) { super(); - s = sub; + sub = s; method = m; addRequirements(sub); } + public SimpleRequiredCommand(T s, BiConsumer m, U arg) { + super(); + sub = s; + method = subsys -> m.accept(subsys, arg); + addRequirements(sub); + } + @Override public void execute() { method.accept(sub); From 745313e09a944bd77648e9214b06001c16aa8033 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Fri, 20 Oct 2023 20:51:19 -0700 Subject: [PATCH 28/34] Added comments --- .../trajectorysequence/TrajectoryPath.java | 112 ++++++++++++++++++ .../library/command/CommandScheduler.java | 1 + 2 files changed, 113 insertions(+) diff --git a/Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java b/Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java index 288145c0..35941384 100644 --- a/Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java +++ b/Path/src/main/java/com/technototes/path/trajectorysequence/TrajectoryPath.java @@ -6,14 +6,91 @@ import java.util.function.Function; public interface TrajectoryPath extends Function, TrajectorySequence> { + /** + * Create a spline between two poses + * + * @param start The beginning of a spline + * @param end The end of a spline + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ + static TrajectoryPath splineTo(ConfigurablePose start, ConfigurablePose end) { + return b -> b.apply(start.toPose()).splineTo(end.toVec(), end.getHeading()).build(); + } + + /** + * Create a spline between two poses + * + * @param start The beginning of a spline + * @param end The end of a spline + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ + static TrajectoryPath splineTo(ConfigurablePoseD start, ConfigurablePoseD end) { + return b -> b.apply(start.toPose()).splineTo(end.toVec(), end.getHeading()).build(); + } + + /** + * Create a spline between a list of poses + * + * @param start The beginning of a spline + * @param points The remaing points of the spline + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ + static TrajectoryPath splinesTo(ConfigurablePoseD start, ConfigurablePoseD... points) { + return b -> { + TrajectorySequenceBuilder bld = b.apply(start.toPose()); + for (ConfigurablePoseD d : points) { + bld = bld.splineTo(d.toVec(), d.getHeading()); + } + return bld.build(); + }; + } + + /** + * Create a spline between a list of poses + * + * @param start The beginning of a spline + * @param points The remaing points of the spline + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ + static TrajectoryPath splinesTo(ConfigurablePose start, ConfigurablePose... points) { + return b -> { + TrajectorySequenceBuilder bld = b.apply(start.toPose()); + for (ConfigurablePose d : points) { + bld = bld.splineTo(d.toVec(), d.getHeading()); + } + return bld.build(); + }; + } + + /** + * Create a line between two poses + * + * @param start The beginning of the line + * @param end The end of the line + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ static TrajectoryPath lineTo(ConfigurablePose start, ConfigurablePose end) { return b -> b.apply(start.toPose()).lineTo(end.toPose().vec()).build(); } + /** + * Create a line between two poses + * + * @param start The beginning of the line + * @param end The end of the line + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ static TrajectoryPath lineTo(ConfigurablePoseD start, ConfigurablePoseD end) { return b -> b.apply(start.toPose()).lineTo(end.toPose().vec()).build(); } + /** + * Create a line between a list of poses + * + * @param start The beginning of the line + * @param points The points of the line + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ static TrajectoryPath linesTo(ConfigurablePoseD start, ConfigurablePoseD... points) { return b -> { TrajectorySequenceBuilder bld = b.apply(start.toPose()); @@ -24,6 +101,13 @@ static TrajectoryPath linesTo(ConfigurablePoseD start, ConfigurablePoseD... poin }; } + /** + * Create a line between a list of poses + * + * @param start The beginning of the line + * @param points The points of the line + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ static TrajectoryPath linesTo(ConfigurablePose start, ConfigurablePose... points) { return b -> { TrajectorySequenceBuilder bld = b.apply(start.toPose()); @@ -34,14 +118,35 @@ static TrajectoryPath linesTo(ConfigurablePose start, ConfigurablePose... points }; } + /** + * Create a line between two poses on a specific linear heading + * + * @param start The beginning of the line + * @param end The end of the line + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ static TrajectoryPath lineToLinearHeading(ConfigurablePose start, ConfigurablePose end) { return b -> b.apply(start.toPose()).lineToLinearHeading(end.toPose()).build(); } + /** + * Create a line between two poses on a specific linear heading + * + * @param start The beginning of the line + * @param end The end of the line + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ static TrajectoryPath lineToLinearHeading(ConfigurablePoseD start, ConfigurablePoseD end) { return b -> b.apply(start.toPose()).lineToLinearHeading(end.toPose()).build(); } + /** + * Create a set of lines between a list of poses on a specific linear heading + * + * @param start The beginning of the line + * @param points The list of points in the line + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ static TrajectoryPath linesToLinearHeadings(ConfigurablePoseD start, ConfigurablePoseD... points) { return b -> { TrajectorySequenceBuilder bld = b.apply(start.toPose()); @@ -52,6 +157,13 @@ static TrajectoryPath linesToLinearHeadings(ConfigurablePoseD start, Configurabl }; } + /** + * Create a set of lines between a list of poses on a specific linear heading + * + * @param start The beginning of the line + * @param points The list of points in the line + * @return A function that takes a 'start' location and returns a TrajectorySequenceBuilder + */ static TrajectoryPath linesToLinearHeadings(ConfigurablePose start, ConfigurablePose... points) { return b -> { TrajectorySequenceBuilder bld = b.apply(start.toPose()); diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java index 10e3bebe..60e4d542 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java +++ b/RobotLibrary/src/main/java/com/technototes/library/command/CommandScheduler.java @@ -283,6 +283,7 @@ public static Command getCurrent(Subsystem s) { public static void schedule(Command command, BooleanSupplier supplier) { commandMap.put(command, supplier); for (Subsystem s : command.getRequirements()) { + // TODO: Fail if a required subsystem is null, and maybe log something requirementMap.putIfAbsent(s, new LinkedHashSet<>()); requirementMap.get(s).add(command); register(s); From cf64d2674e4c1ccd03d8f7dcb6850cbfe442b08a Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 22 Oct 2023 13:18:32 -0700 Subject: [PATCH 29/34] Deprecated the {Device}Subsystem classes, added TwoDeadWheelLocalizer --- .../path/subsystem/TwoDeadWheelLocalizer.java | 104 ++++++++++++++++++ .../library/command/ParameterCommand.java | 28 ----- .../command/ParameterRequiredCommand.java | 32 ------ .../library/control/CommandInput.java | 7 -- .../library/hardware/HardwareDeviceGroup.java | 7 ++ .../hardware/motor/EncodedMotorGroup.java | 16 ++- .../library/hardware/motor/MotorGroup.java | 16 ++- .../library/hardware2/AnalogBuilder.java | 2 + .../library/hardware2/CRServoBuilder.java | 1 + .../library/hardware2/ColorBuilder.java | 1 + .../library/hardware2/ColorRangeBuilder.java | 1 + .../library/hardware2/DigitalBuilder.java | 1 + .../library/hardware2/DistanceBuilder.java | 1 + .../library/hardware2/HardwareBuilder.java | 1 + .../library/hardware2/IMUBuilder.java | 1 + .../library/hardware2/MotorBuilder.java | 1 + .../library/hardware2/ServoBuilder.java | 1 + .../library/subsystem/DeviceSubsystem.java | 5 +- .../drivebase/DrivebaseSubsystem.java | 9 +- .../SimpleMecanumDrivebaseSubsystem.java | 47 ++++---- .../drivebase/TankDrivebaseSubsystem.java | 28 +++-- .../motor/EncodedMotorSubsystem.java | 7 +- .../subsystem/motor/MotorSubsystem.java | 7 +- .../subsystem/servo/ServoSubsystem.java | 7 +- 24 files changed, 217 insertions(+), 114 deletions(-) create mode 100644 Path/src/main/java/com/technototes/path/subsystem/TwoDeadWheelLocalizer.java delete mode 100644 RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java delete mode 100644 RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java diff --git a/Path/src/main/java/com/technototes/path/subsystem/TwoDeadWheelLocalizer.java b/Path/src/main/java/com/technototes/path/subsystem/TwoDeadWheelLocalizer.java new file mode 100644 index 00000000..75e5b7bd --- /dev/null +++ b/Path/src/main/java/com/technototes/path/subsystem/TwoDeadWheelLocalizer.java @@ -0,0 +1,104 @@ +package com.technototes.path.subsystem; + +import static com.technototes.path.subsystem.DeadWheelConstants.EncoderOverflow; +import static com.technototes.path.subsystem.DeadWheelConstants.ForwardOffset; +import static com.technototes.path.subsystem.DeadWheelConstants.GearRatio; +import static com.technototes.path.subsystem.DeadWheelConstants.LateralDistance; +import static com.technototes.path.subsystem.DeadWheelConstants.TicksPerRev; +import static com.technototes.path.subsystem.DeadWheelConstants.WheelRadius; + +import androidx.annotation.NonNull; +import com.acmerobotics.roadrunner.geometry.Pose2d; +import com.acmerobotics.roadrunner.localization.ThreeTrackingWheelLocalizer; +import com.acmerobotics.roadrunner.localization.TwoTrackingWheelLocalizer; +import com.technototes.library.hardware.sensor.IMU; +import com.technototes.library.hardware.sensor.encoder.MotorEncoder; +import com.technototes.library.subsystem.Subsystem; +import java.util.Arrays; +import java.util.List; +import java.util.function.DoubleSupplier; + +/* + * Sample tracking wheel localizer implementation assuming a standard configuration: + * + * /---------------\ + * | ____ | + * | ---- | + * | || ^ | + * | ||<- lr | | + * | fb | + * | | + * \---------------/ + * + * COMPLETELY UNTESTED!! + */ +public class TwoDeadWheelLocalizer extends TwoTrackingWheelLocalizer implements Subsystem { + + protected MotorEncoder leftrightEncoder, frontbackEncoder; + protected DoubleSupplier headingSupplier; + protected double lateralDistance, forwardOffset, gearRatio, wheelRadius, ticksPerRev; + + protected boolean encoderOverflow; + + public TwoDeadWheelLocalizer(IMU imu, MotorEncoder lr, MotorEncoder fb, DeadWheelConstants constants) { + super( + Arrays.asList( + new Pose2d(0, constants.getDouble(LateralDistance.class), 0), // left + new Pose2d(constants.getDouble(ForwardOffset.class), 0, Math.toRadians(90)) // front + ) + ); + leftrightEncoder = lr; + frontbackEncoder = fb; + headingSupplier = () -> imu.gyroHeading(); + + lateralDistance = constants.getDouble(LateralDistance.class); + forwardOffset = constants.getDouble(ForwardOffset.class); + encoderOverflow = constants.getBoolean(EncoderOverflow.class); + gearRatio = constants.getDouble(GearRatio.class); + ticksPerRev = constants.getDouble(TicksPerRev.class); + wheelRadius = constants.getDouble(WheelRadius.class); + } + + public double encoderTicksToInches(double ticks) { + return ((getWheelRadius() * 2 * Math.PI * getGearRatio() * ticks) / getTicksPerRev()); + } + + @NonNull + @Override + public List getWheelPositions() { + return Arrays.asList( + encoderTicksToInches(leftrightEncoder.getCurrentPosition()), + encoderTicksToInches(frontbackEncoder.getCurrentPosition()) + ); + } + + @NonNull + @Override + public List getWheelVelocities() { + // TODO: If your encoder velocity can exceed 32767 counts / second (such as the REV Through Bore and other + // competing magnetic encoders), change Encoder.getRawVelocity() to Encoder.getCorrectedVelocity() to enable a + // compensation method + + return Arrays.asList( + encoderTicksToInches(leftrightEncoder.getCorrectedVelocity()), + encoderTicksToInches(frontbackEncoder.getCorrectedVelocity()) + ); + } + + public double getTicksPerRev() { + return ticksPerRev; + } + + public double getWheelRadius() { + return wheelRadius; + } + + public double getGearRatio() { + return gearRatio; + } + + @Override + public double getHeading() { + return headingSupplier.getAsDouble(); + } +} diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java deleted file mode 100644 index 3900597c..00000000 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterCommand.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.technototes.library.command; - -import com.technototes.library.subsystem.Subsystem; -import java.util.function.BiConsumer; -import java.util.function.Consumer; - -/** - * Use SimpleCommand: It can handle a single Function (Runnable) - * or a F(T) (Consumer) - * @param - */ -@Deprecated -public class ParameterCommand implements Command { - - U param; - Consumer method; - - public ParameterCommand(Consumer m, U arg) { - super(); - param = arg; - method = m; - } - - @Override - public void execute() { - method.accept(param); - } -} diff --git a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java b/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java deleted file mode 100644 index 305ec5cf..00000000 --- a/RobotLibrary/src/main/java/com/technototes/library/command/ParameterRequiredCommand.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.technototes.library.command; - -import com.technototes.library.subsystem.Subsystem; -import java.util.function.BiConsumer; - -/** - * Use SimplerRequiredCommand instead of this. It's more flexible: - * It works with or without a parameter, so it needed renamed... - * - * @param - * @param - */ -@Deprecated -public class ParameterRequiredCommand implements Command { - - T sub; - U param; - BiConsumer method; - - public ParameterRequiredCommand(T s, BiConsumer m, U arg) { - super(); - s = sub; - param = arg; - method = m; - addRequirements(sub); - } - - @Override - public void execute() { - method.accept(sub, param); - } -} diff --git a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java index db161c3a..fc7afd8f 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java +++ b/RobotLibrary/src/main/java/com/technototes/library/control/CommandInput.java @@ -2,14 +2,7 @@ import com.technototes.library.command.Command; import com.technototes.library.command.CommandScheduler; -import com.technototes.library.command.ParameterCommand; -import com.technototes.library.command.ParameterRequiredCommand; -import com.technototes.library.command.SimpleCommand; -import com.technototes.library.command.SimpleRequiredCommand; -import com.technototes.library.subsystem.Subsystem; -import java.util.function.BiConsumer; import java.util.function.BooleanSupplier; -import java.util.function.Consumer; /** * Class for gamepad-command integration diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java index d5785348..126428b2 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java @@ -1,5 +1,6 @@ package com.technototes.library.hardware; +import com.technototes.library.hardware.motor.Motor; import java.util.Arrays; import java.util.List; @@ -40,4 +41,10 @@ default List getAllDeviceList() { * @param value the value to propagate */ default void propagate(double value) {} + + T getDeviceNum(int i); + + default int getDeviceCount() { + return getFollowers().length + 1; + } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java index 94104972..0c31b40c 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java @@ -11,26 +11,26 @@ public class EncodedMotorGroup extends EncodedMotor implements HardwareDeviceGroup> { - private final Motor[] followers; + private final EncodedMotor[] followers; /** Create an encoded motor groupM * * @param leader The Lead motor * @param followers The following motors */ - public EncodedMotorGroup(EncodedMotor leader, Motor... followers) { + public EncodedMotorGroup(EncodedMotor leader, EncodedMotor... followers) { super(leader.getDevice()); this.followers = followers; } @Override - public Motor[] getFollowers() { + public EncodedMotor[] getFollowers() { return followers; } @Override - public Motor[] getAllDevices() { - Motor[] m = new Motor[followers.length + 1]; + public EncodedMotor[] getAllDevices() { + EncodedMotor[] m = new EncodedMotor[followers.length + 1]; m[0] = this; System.arraycopy(followers, 0, m, 1, m.length - 1); return m; @@ -38,7 +38,7 @@ public Motor[] getAllDevices() { @Override public void propagate(double value) { - for (Motor m : followers) { + for (EncodedMotor m : followers) { m.setSpeed(value); } } @@ -55,4 +55,8 @@ public boolean setPosition(double ticks, double speed) { propagate(super.getSpeed()); return b; } + + public EncodedMotor getDeviceNum(int i) { + return (i == 0) ? this : followers[i - 1]; + } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java index aa8db24b..9e778a3d 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java @@ -3,7 +3,8 @@ import com.qualcomm.robotcore.hardware.DcMotorSimple; import com.technototes.library.hardware.HardwareDeviceGroup; -/** Class for a group of motors +/** + * Class for a group of motors * * @param The type of motors to group */ @@ -12,7 +13,8 @@ public class MotorGroup extends Motor implements Har private final Motor[] followers; - /** Make a motor group + /** + * Make a motor group * * @param motors The motors */ @@ -48,4 +50,14 @@ public void setSpeed(double speed) { super.setSpeed(speed); propagate(speed); } + + public void setSpeeds(double... speeds) { + for (int i = 0; i < speeds.length && i < getDeviceCount(); i++) { + getDeviceNum(i).setSpeed(speeds[i]); + } + } + + public Motor getDeviceNum(int i) { + return (i == 0) ? this : followers[i - 1]; + } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware2/AnalogBuilder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware2/AnalogBuilder.java index 07e3b6ed..adaa1088 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware2/AnalogBuilder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware2/AnalogBuilder.java @@ -5,7 +5,9 @@ /** * TODO: Remove this. I don't believe this adds much value. Yeah, HardwareMap.get is weird, but * it's in all the documentation, so just read it, see it in the examples, and you're done. + * */ +@Deprecated public class AnalogBuilder extends HardwareBuilder { public AnalogBuilder(String name) { diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware2/CRServoBuilder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware2/CRServoBuilder.java index 87e03c77..b00a1248 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware2/CRServoBuilder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware2/CRServoBuilder.java @@ -7,6 +7,7 @@ * TODO: Remove this. I don't believe this adds much value. Yeah, HardwareMap.get is weird, but * it's in all the documentation, so just read it, see it in the examples, and you're done. */ +@Deprecated public class CRServoBuilder extends HardwareBuilder { public CRServoBuilder(String name) { diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware2/ColorBuilder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware2/ColorBuilder.java index e8c1fc60..52d9264e 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware2/ColorBuilder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware2/ColorBuilder.java @@ -6,6 +6,7 @@ * TODO: Remove this. I don't believe this adds much value. Yeah, HardwareMap.get is weird, but * it's in all the documentation, so just read it, see it in the examples, and you're done. */ +@Deprecated public class ColorBuilder extends HardwareBuilder { public ColorBuilder(String name) { diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware2/ColorRangeBuilder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware2/ColorRangeBuilder.java index 95d26915..8d760997 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware2/ColorRangeBuilder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware2/ColorRangeBuilder.java @@ -6,6 +6,7 @@ * TODO: Remove this. I don't believe this adds much value. Yeah, HardwareMap.get is weird, but * it's in all the documentation, so just read it, see it in the examples, and you're done. */ +@Deprecated public class ColorRangeBuilder extends HardwareBuilder { public ColorRangeBuilder(String name) { diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware2/DigitalBuilder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware2/DigitalBuilder.java index 86fc59aa..1842ffc7 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware2/DigitalBuilder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware2/DigitalBuilder.java @@ -6,6 +6,7 @@ * TODO: Remove this. I don't believe this adds much value. Yeah, HardwareMap.get is weird, but * it's in all the documentation, so just read it, see it in the examples, and you're done. */ +@Deprecated public class DigitalBuilder extends HardwareBuilder { /** diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware2/DistanceBuilder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware2/DistanceBuilder.java index 42aadcc7..094fc57a 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware2/DistanceBuilder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware2/DistanceBuilder.java @@ -6,6 +6,7 @@ * TODO: Remove this. I don't believe this adds much value. Yeah, HardwareMap.get is weird, but * it's in all the documentation, so just read it, see it in the examples, and you're done. */ +@Deprecated public class DistanceBuilder extends HardwareBuilder { public DistanceBuilder(String name) { diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware2/HardwareBuilder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware2/HardwareBuilder.java index 0dd694e8..d0d2d209 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware2/HardwareBuilder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware2/HardwareBuilder.java @@ -7,6 +7,7 @@ * TODO: Remove this. I don't believe this adds much value. Yeah, HardwareMap.get is weird, but * it's in all the documentation, so just read it, see it in the examples, and you're done. */ +@Deprecated public class HardwareBuilder { private static HardwareMap hardwareMap = null; diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware2/IMUBuilder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware2/IMUBuilder.java index 3555d0ee..d3bebe9a 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware2/IMUBuilder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware2/IMUBuilder.java @@ -9,6 +9,7 @@ * TODO: Remove this. I don't believe this adds much value. Yeah, HardwareMap.get is weird, but * it's in all the documentation, so just read it, see it in the examples, and you're done. */ +@Deprecated public class IMUBuilder extends HardwareBuilder { /** diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware2/MotorBuilder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware2/MotorBuilder.java index d5fa7db8..d6dbc61a 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware2/MotorBuilder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware2/MotorBuilder.java @@ -9,6 +9,7 @@ * TODO: Remove this. I don't believe this adds much value. Yeah, HardwareMap.get is weird, but * it's in all the documentation, so just read it, see it in the examples, and you're done. */ +@Deprecated public class MotorBuilder extends HardwareBuilder { public MotorBuilder(String name) { diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware2/ServoBuilder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware2/ServoBuilder.java index b2119fe0..6589318a 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware2/ServoBuilder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware2/ServoBuilder.java @@ -7,6 +7,7 @@ * TODO: Remove this. I don't believe this adds much value. Yeah, HardwareMap.get is weird, but * it's in all the documentation, so just read it, see it in the examples, and you're done. */ +@Deprecated public class ServoBuilder extends HardwareBuilder { public ServoBuilder(String name) { diff --git a/RobotLibrary/src/main/java/com/technototes/library/subsystem/DeviceSubsystem.java b/RobotLibrary/src/main/java/com/technototes/library/subsystem/DeviceSubsystem.java index 51ffdf88..f48abf52 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/subsystem/DeviceSubsystem.java +++ b/RobotLibrary/src/main/java/com/technototes/library/subsystem/DeviceSubsystem.java @@ -2,10 +2,13 @@ import com.technototes.library.hardware.HardwareDevice; -/** class for subsystems +/** + * Don't do this, don't use this. Subsystems should be used for encapsulation, not for exposing + * the rest of the system to a hardware device * @author Alex Stedman * @param The {@link HardwareDevice} for this subsystem */ +@Deprecated public abstract class DeviceSubsystem> implements Subsystem { protected T device; diff --git a/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/DrivebaseSubsystem.java b/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/DrivebaseSubsystem.java index 4e43fd42..a6b649be 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/DrivebaseSubsystem.java +++ b/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/DrivebaseSubsystem.java @@ -3,7 +3,6 @@ import com.qualcomm.robotcore.hardware.DcMotorSimple; import com.technototes.library.hardware.motor.Motor; import com.technototes.library.hardware.motor.MotorGroup; -import com.technototes.library.subsystem.DeviceSubsystem; import java.util.function.DoubleSupplier; /** @@ -12,7 +11,9 @@ * @param The type of motors for the drivebase * @author Alex Stedman The motors for the drivebase */ -public abstract class DrivebaseSubsystem extends DeviceSubsystem> { +public abstract class DrivebaseSubsystem { + + protected MotorGroup motors; /** * Override this to get the gyroscope heading. @@ -26,7 +27,7 @@ public abstract class DrivebaseSubsystem extends Device * @param motors The drive motors */ public DrivebaseSubsystem(Motor... motors) { - super(new MotorGroup(motors)); + this.motors = new MotorGroup(motors); } /** @@ -36,7 +37,7 @@ public DrivebaseSubsystem(Motor... motors) { * @param motors The drive motors */ public DrivebaseSubsystem(DoubleSupplier gyro, Motor... motors) { - super(new MotorGroup(motors)); + this.motors = new MotorGroup(motors); gyroSupplier = gyro; } diff --git a/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/SimpleMecanumDrivebaseSubsystem.java b/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/SimpleMecanumDrivebaseSubsystem.java index 3ec21f5b..fea4021d 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/SimpleMecanumDrivebaseSubsystem.java +++ b/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/SimpleMecanumDrivebaseSubsystem.java @@ -5,18 +5,35 @@ import com.technototes.library.hardware.motor.Motor; import java.util.function.DoubleSupplier; -/** Class for mecanum/xdrive drivebases - * @author Alex Stedman +/** + * Class for mecanum/xdrive drivebases + * * @param The motor type for the subsystem + * @author Alex Stedman */ public class SimpleMecanumDrivebaseSubsystem extends DrivebaseSubsystem { - /** Drive motors - * + /** + * Drive motors */ - public Motor flMotor, frMotor, rlMotor, rrMotor; + protected Motor flMotor() { + return motors.getDeviceNum(0); + } + + protected Motor frMotor() { + return motors.getDeviceNum(1); + } + + protected Motor rlMotor() { + return motors.getDeviceNum(2); + } + + protected Motor rrMotor() { + return motors.getDeviceNum(3); + } - /** Create mecanum drivebase + /** + * Create mecanum drivebase * * @param flMotor The front left motor for the drivebase * @param frMotor The front right motor for the drivebase @@ -25,15 +42,12 @@ public class SimpleMecanumDrivebaseSubsystem extends Dr */ public SimpleMecanumDrivebaseSubsystem(Motor flMotor, Motor frMotor, Motor rlMotor, Motor rrMotor) { super(flMotor, frMotor, rlMotor, rrMotor); - this.flMotor = flMotor; - this.frMotor = frMotor; - this.rlMotor = rlMotor; - this.rrMotor = rrMotor; } - /** Create mecanum drivebase + /** + * Create mecanum drivebase * - * @param gyro The gyro supplier + * @param gyro The gyro supplier * @param flMotor The front left motor for the drivebase * @param frMotor The front right motor for the drivebase * @param rlMotor The rear left motor for the drivebase @@ -47,10 +61,6 @@ public SimpleMecanumDrivebaseSubsystem( Motor rrMotor ) { super(gyro, flMotor, frMotor, rlMotor, rrMotor); - this.flMotor = flMotor; - this.frMotor = frMotor; - this.rlMotor = rlMotor; - this.rrMotor = rrMotor; } public void joystickDrive(double x, double y, double rotation) { @@ -89,9 +99,6 @@ public void stop() { } public void drive(double flSpeed, double frSpeed, double rlSpeed, double rrSpeed) { - flMotor.setSpeed(flSpeed * getSpeed()); - frMotor.setSpeed(frSpeed * getSpeed()); - rlMotor.setSpeed(rlSpeed * getSpeed()); - rrMotor.setSpeed(rrSpeed * getSpeed()); + motors.setSpeeds(flSpeed * getSpeed(), frSpeed * getSpeed(), rlSpeed * getSpeed(), rrSpeed * getSpeed()); } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/TankDrivebaseSubsystem.java b/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/TankDrivebaseSubsystem.java index 69b7eafb..75a6f670 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/TankDrivebaseSubsystem.java +++ b/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/TankDrivebaseSubsystem.java @@ -4,26 +4,33 @@ import com.qualcomm.robotcore.util.Range; import com.technototes.library.hardware.motor.Motor; -/** Class for drivebase subsystems - * @author Alex Stedman +/** + * Class for drivebase subsystems + * * @param The type of motor for the drivebase + * @author Alex Stedman */ public class TankDrivebaseSubsystem extends DrivebaseSubsystem { - /** Drive motors - * + /** + * Drive motors */ - public Motor leftSide, rightSide; + protected Motor leftSide() { + return motors.getDeviceNum(0); + } + + protected Motor rightSide() { + return motors.getDeviceNum(1); + } - /** Create tank drivebase + /** + * Create tank drivebase * - * @param leftMotor The motor/motorgroup for the left side of the drivebase + * @param leftMotor The motor/motorgroup for the left side of the drivebase * @param rightMotor The motor/motorgroup for the right side of the drivebase */ public TankDrivebaseSubsystem(Motor leftMotor, Motor rightMotor) { super(leftMotor, rightMotor); - leftSide = leftMotor; - rightSide = rightMotor; } public void arcadeDrive(double y, double x) { @@ -40,7 +47,6 @@ public void stop() { } public void drive(double l, double r) { - leftSide.setSpeed(l * getSpeed()); - rightSide.setSpeed(r * getSpeed()); + motors.setSpeeds(l * getSpeed(), r * getSpeed()); } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/subsystem/motor/EncodedMotorSubsystem.java b/RobotLibrary/src/main/java/com/technototes/library/subsystem/motor/EncodedMotorSubsystem.java index 79664970..e9b15f79 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/subsystem/motor/EncodedMotorSubsystem.java +++ b/RobotLibrary/src/main/java/com/technototes/library/subsystem/motor/EncodedMotorSubsystem.java @@ -2,9 +2,14 @@ import com.technototes.library.hardware.motor.EncodedMotor; -/** Class for encoded motor subsystems +/** + * A bad example class for encoded motor subsystems + * + * This is an anti-pattern. + * Subsystems are levels of abstraction. This doesn't provide a real level of abstraction. * @author Alex Stedman */ +@Deprecated public class EncodedMotorSubsystem extends MotorSubsystem> { /** Max speed diff --git a/RobotLibrary/src/main/java/com/technototes/library/subsystem/motor/MotorSubsystem.java b/RobotLibrary/src/main/java/com/technototes/library/subsystem/motor/MotorSubsystem.java index 19d61407..b2b47c06 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/subsystem/motor/MotorSubsystem.java +++ b/RobotLibrary/src/main/java/com/technototes/library/subsystem/motor/MotorSubsystem.java @@ -3,10 +3,15 @@ import com.technototes.library.hardware.motor.Motor; import com.technototes.library.subsystem.DeviceSubsystem; -/** Class for motor subsystems +/** + * a bad example class for motor subsystems: + * Don't expose a device as a subsystem. Subsystems should control/mediate access to the devices, + * not just expose a device. + * * @author Alex Stedman * @param The motor type */ +@Deprecated public class MotorSubsystem> extends DeviceSubsystem { /** Create motor subsystem diff --git a/RobotLibrary/src/main/java/com/technototes/library/subsystem/servo/ServoSubsystem.java b/RobotLibrary/src/main/java/com/technototes/library/subsystem/servo/ServoSubsystem.java index 9cbea8f4..b460c606 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/subsystem/servo/ServoSubsystem.java +++ b/RobotLibrary/src/main/java/com/technototes/library/subsystem/servo/ServoSubsystem.java @@ -4,9 +4,14 @@ import com.technototes.library.hardware.servo.ServoGroup; import com.technototes.library.subsystem.DeviceSubsystem; -/** Class for servo subsystems +/** + * a bad example class for servo subsystems + * + * This is an anti-pattern: Don't expose a servo as a subsystem. Expose capabilities of the + * subsystem, for use by commands * @author Alex Stedman */ +@Deprecated public class ServoSubsystem extends DeviceSubsystem { /** Create servo subsystem From 8ffdfa6746cbdc3f6735d6d1c364b3d01de5821f Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 22 Oct 2023 14:49:44 -0700 Subject: [PATCH 30/34] Finished cleaning up the *Group types --- .../library/hardware/HardwareDeviceGroup.java | 2 +- .../hardware/motor/EncodedMotorGroup.java | 29 +++++++++++++++---- .../library/hardware/servo/ServoGroup.java | 11 +++++++ .../drivebase/DrivebaseSubsystem.java | 3 +- 4 files changed, 38 insertions(+), 7 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java index 126428b2..30a13ee0 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java @@ -20,7 +20,7 @@ public interface HardwareDeviceGroup { */ T[] getFollowers(); - default List getFollowerist() { + default List getFollowerList() { return Arrays.asList(getFollowers()); } diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java index 0c31b40c..c148cf47 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java @@ -3,7 +3,9 @@ import com.qualcomm.robotcore.hardware.DcMotorSimple; import com.technototes.library.hardware.HardwareDeviceGroup; -/** Class for encoded motor groups +/** + * Class for encoded motor groups + * * @author Alex Stedman */ @SuppressWarnings("unused") @@ -13,9 +15,10 @@ public class EncodedMotorGroup private final EncodedMotor[] followers; - /** Create an encoded motor groupM + /** + * Create an encoded motor groupM * - * @param leader The Lead motor + * @param leader The Lead motor * @param followers The following motors */ public EncodedMotorGroup(EncodedMotor leader, EncodedMotor... followers) { @@ -49,10 +52,26 @@ public void setVelocity(double tps) { propagate(super.getSpeed()); } + public void setVelocities(double... tps) { + for (int i = 0; i < tps.length && i < getDeviceCount(); i++) { + getDeviceNum(i).setVelocity(tps[i]); + } + } + @Override public boolean setPosition(double ticks, double speed) { - boolean b = super.setPosition(ticks, speed); - propagate(super.getSpeed()); + boolean b = true; + for (int i = 0; i < getDeviceCount(); i++) { + b = getDeviceNum(i).setPosition(ticks, speed) && b; + } + return b; + } + + public boolean setPositions(double... ticks_then_speeds) { + boolean b = true; + for (int i = 0; i < ticks_then_speeds.length / 2 && i < getDeviceCount(); i++) { + b = getDeviceNum(i).setPosition(ticks_then_speeds[i * 2], ticks_then_speeds[i * 2 + 1]) && b; + } return b; } diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java index 616b977a..bd4d2d44 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java @@ -45,12 +45,23 @@ public void propagate(double value) { } } + @Override + public Servo getDeviceNum(int i) { + return (i == 0) ? this : followers[i - 1]; + } + @Override public void setPosition(double position) { super.setPosition(position); propagate(position); } + public void setPositions(double... positions) { + for (int i = 0; i < positions.length && i < getDeviceCount(); i++) { + getDeviceNum(i).setPosition(positions[i]); + } + } + @Override public ServoGroup startAt(double position) { return (ServoGroup) super.startAt(position); diff --git a/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/DrivebaseSubsystem.java b/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/DrivebaseSubsystem.java index a6b649be..5d377a10 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/DrivebaseSubsystem.java +++ b/RobotLibrary/src/main/java/com/technototes/library/subsystem/drivebase/DrivebaseSubsystem.java @@ -3,6 +3,7 @@ import com.qualcomm.robotcore.hardware.DcMotorSimple; import com.technototes.library.hardware.motor.Motor; import com.technototes.library.hardware.motor.MotorGroup; +import com.technototes.library.subsystem.Subsystem; import java.util.function.DoubleSupplier; /** @@ -11,7 +12,7 @@ * @param The type of motors for the drivebase * @author Alex Stedman The motors for the drivebase */ -public abstract class DrivebaseSubsystem { +public abstract class DrivebaseSubsystem implements Subsystem { protected MotorGroup motors; From f2bb58958284e85ddbb0eb94a5e6f6de1abb8c1b Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 22 Oct 2023 15:17:19 -0700 Subject: [PATCH 31/34] Modified propagate to take (effectively) a method ref to run --- .../library/hardware/HardwareDeviceGroup.java | 9 +++++++-- .../library/hardware/motor/EncodedMotorGroup.java | 11 ++--------- .../library/hardware/motor/MotorGroup.java | 9 +-------- .../library/hardware/servo/ServoGroup.java | 9 +-------- 4 files changed, 11 insertions(+), 27 deletions(-) diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java index 30a13ee0..802e135b 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/HardwareDeviceGroup.java @@ -3,6 +3,7 @@ import com.technototes.library.hardware.motor.Motor; import java.util.Arrays; import java.util.List; +import java.util.function.Consumer; /** * Interface for hardware device groups @@ -38,9 +39,13 @@ default List getAllDeviceList() { /** * Propagate actions across the followers * - * @param value the value to propagate + * @param func the action to propagate */ - default void propagate(double value) {} + default void propagate(Consumer func) { + for (T obj : getFollowers()) { + func.accept(obj); + } + } T getDeviceNum(int i); diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java index c148cf47..77c92ca2 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotorGroup.java @@ -11,7 +11,7 @@ @SuppressWarnings("unused") public class EncodedMotorGroup extends EncodedMotor - implements HardwareDeviceGroup> { + implements HardwareDeviceGroup> { private final EncodedMotor[] followers; @@ -39,17 +39,10 @@ public EncodedMotor[] getAllDevices() { return m; } - @Override - public void propagate(double value) { - for (EncodedMotor m : followers) { - m.setSpeed(value); - } - } - @Override public void setVelocity(double tps) { super.setVelocity(tps); - propagate(super.getSpeed()); + propagate(obj -> obj.setVelocity(tps)); } public void setVelocities(double... tps) { diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java index 9e778a3d..347739e3 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/MotorGroup.java @@ -38,17 +38,10 @@ public Motor[] getAllDevices() { return m; } - @Override - public void propagate(double value) { - for (Motor m : followers) { - m.setSpeed(value); - } - } - @Override public void setSpeed(double speed) { super.setSpeed(speed); - propagate(speed); + propagate(obj -> obj.setSpeed(speed)); } public void setSpeeds(double... speeds) { diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java index bd4d2d44..931e7660 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/ServoGroup.java @@ -38,13 +38,6 @@ public Servo[] getAllDevices() { return m; } - @Override - public void propagate(double value) { - for (Servo s : followers) { - s.setPosition(value); - } - } - @Override public Servo getDeviceNum(int i) { return (i == 0) ? this : followers[i - 1]; @@ -53,7 +46,7 @@ public Servo getDeviceNum(int i) { @Override public void setPosition(double position) { super.setPosition(position); - propagate(position); + propagate(obj -> obj.setPosition(position)); } public void setPositions(double... positions) { From e0314bd286ccd7fb039357635ffeb02ace1ac3d0 Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Fri, 3 Nov 2023 10:44:30 -0700 Subject: [PATCH 32/34] Added some stuff to readme --- readme.md | 46 +++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 41 insertions(+), 5 deletions(-) diff --git a/readme.md b/readme.md index 54c0f6d9..89ef362b 100644 --- a/readme.md +++ b/readme.md @@ -9,9 +9,7 @@ TechnoLib is a FTC Library for everyone: - Annotation based Telemetry - And much much more -**The goal of this library is stated as follows** The goal of TechnoLib is not only to provide -versatile resources that assist in software development and strengthen code structure, but to also -abstract out redundancy. +### The goal of this library is not only to provide versatile resources that assist in software development and strengthen code structure, but to also abstract out redundancy. ## Installation @@ -25,11 +23,11 @@ But if this library is so good, it must be hard to install right? wrong: } ``` - And add this to the dependencies block in TeamCode/build.gradle: - `implementation 'com.github.technototes:TechnoLib:1.2.0'` **(replace 1.2.0 with the latest + `implementation 'com.github.technototes:TechnoLib:1.3.0'` **(replace 1.3.0 with the latest release)** - Build the code and you are good to go -### Version 1.2.0 has breaking changes. +### Both versions 1.2.0 and 1.2.0 have breaking changes. See below for details @@ -81,3 +79,41 @@ to use the remapAxes function (which has been renamed) and the constructor for t that you specify the orientation of your control hub. The SDK also changed the axes' orientation on the hub. You'll be happier by just switching your mental model to the new IMU class (but it's weird that FIRST changed it :/ ) + +# Notes from Kevin Frei + +Hi, the original author of this libary (Alex Stedman) graduated and went off to college. So now I'm +maintaining it. + +I'm an FTC mentor, not an FRC mentor. My goals are to enable capable programmers (often times coming +from Python) to be able to create a functional, _reliable_ robot quickly and easily. Java, and +particularly some Java conventions however, are not always the most conducive language to these +goals. I've made a few minor edits/improvements in the 1.3.0 release, but I'm also prototyping a new +2.0 release during the 2023/2024 season (our students are still using 1.3.0). The point of me +working on the prototype during build/competition season is primarily because I'm watching what +students struggle with, what I'm stuck explaining over & over, etc... and am trying to adjust +the library to be more approachable and easier to interact with. + +## Small Ideas + +Initially, I found the hardware wrapper types to be mostly just a waste of effort. Now, however, I'm +considering building out MUCH more capability in them. The 2 primary things I'd like to add are: + +1. Resilience to disconnected hardware +2. Easy, code-free logging opt-in/opt-out + +For item 1, we have a typical setup where we have flags in the "robot" object where we can +'disconnect' a subsystem, thus allowing the bot to continue to function even when specific hardware +isn't connected. This could be done without too much effort, and could potentially also be a nice +stepping stone to some level of hardware simulation. + +For item 2, for most of the hardware types, it's often useful to log data from those types (current +power/velocity, current tick values, etc...) but doing so is somewhat clunky. It would be nice if +you could set a flag in the dashboard, or perhaps just add a top-level to the constructor or a +subsystem that would enable/disable logging with little-to-no code changes. + +## Big Ideas + +Full simulation of a robot would be _tremendously_ helpful. Initially just being able to simulate +all the hardware would be useful. Being able to configure motors, servos, and sensors in a 3 +dimensional model, with connections to parts would be MUCH more work (but also MUCH cooler) From d28c873cf3b76e5c73382898a6549560560d74ba Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 26 Nov 2023 12:21:59 -0800 Subject: [PATCH 33/34] Added (NYI) CRServo and MotorAsServo hardware devices --- .../library/hardware/motor/CRServo.java | 36 ++++++++++++ .../library/hardware/motor/Motor.java | 31 ++++++++-- .../library/hardware/servo/MotorAsServo.java | 56 +++++++++++++++++++ 3 files changed, 119 insertions(+), 4 deletions(-) create mode 100644 RobotLibrary/src/main/java/com/technototes/library/hardware/motor/CRServo.java create mode 100644 RobotLibrary/src/main/java/com/technototes/library/hardware/servo/MotorAsServo.java diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/CRServo.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/CRServo.java new file mode 100644 index 00000000..4b508e58 --- /dev/null +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/CRServo.java @@ -0,0 +1,36 @@ +package com.technototes.library.hardware.motor; + +import com.technototes.library.hardware.HardwareDevice; +import java.io.InvalidClassException; +import java.util.function.Supplier; + +/** + * This is for "continuous rotation" servos. They work, unfortunately, like motors + * without encoders: You can set a power (from 0 to 1, typically, with .5 as "stop") and the + * servo will spin in the direct, at the provided speed... + * + * Not Yet Implemented! + * TODO: Implement this + */ +public class CRServo extends HardwareDevice implements Supplier { + + public CRServo(com.qualcomm.robotcore.hardware.CRServo device, String deviceName) throws InvalidClassException { + super(device, deviceName); + throw new InvalidClassException("com.technototes.library.hardware.motor.CRServo", "Not Yet Implemented"); + } + + protected CRServo(String deviceName) throws InvalidClassException { + super(deviceName); + throw new InvalidClassException("com.technototes.library.hardware.motor.CRServo", "Not Yet Implemented"); + } + + @Override + public String LogLine() { + return null; + } + + @Override + public Double get() { + return null; + } +} diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java index 01c5321f..eac04003 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/Motor.java @@ -43,8 +43,10 @@ public Motor(String deviceName) { * @return The Motor (for chaining) */ public Motor setLimits(double mi, double ma) { - min = Range.clip(mi, -1, 1); - max = Range.clip(ma, -1, 1); + mi = Range.clip(mi, -1, 1); + ma = Range.clip(ma, -1, 1); + min = Math.min(mi, ma); + max = Math.max(mi, ma); return this; } @@ -83,18 +85,39 @@ public Motor setDirection(DcMotorSimple.Direction dir) { * Gets the power value for the motor * * @return the power value (as a double) + * @deprecated use getPower() instead */ + @Deprecated public double getSpeed() { + return getPower(); + } + + /** + * Gets the power value for the motor + * + * @return the power value (as a double) + */ + public double getPower() { return device.getPower(); } /** - * Set speed of motor + * Set the (range-clipped) speed of motor * * @param speed The speed of the motor */ + @Deprecated public void setSpeed(double speed) { - device.setPower(Range.clip(speed, min, max)); + setPower(speed); + } + + /** + * Set the (range-clipped) power of the motor + * + * @param pow The power value (-1 -> 1) + */ + public void setPower(double pow) { + device.setPower(Range.clip(pow, min, max)); } /** diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/MotorAsServo.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/MotorAsServo.java new file mode 100644 index 00000000..36db14cb --- /dev/null +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/servo/MotorAsServo.java @@ -0,0 +1,56 @@ +package com.technototes.library.hardware.servo; + +import com.qualcomm.robotcore.hardware.DcMotor; +import com.qualcomm.robotcore.hardware.DcMotorEx; +import com.technototes.library.hardware.HardwareDevice; +import com.technototes.library.hardware.Sensored; +import java.io.InvalidClassException; + +/** + * This is to use a motor as a servo using the built-in capabilities (instead of doing it manually) + * + * One rather important feature would be to hand control back & forth between a normal encoded + * motor. The alternative would be to extend EncodedMotor to just "do" this stuff automatically. + * Honestly, that probably makes more sense, but requires some thought about state transitions. + * + * @param + * Not Yet Implemented! + * TODO: Implement this + * + */ +public class MotorAsServo extends HardwareDevice implements Sensored { + + public MotorAsServo(T device, String deviceName) throws InvalidClassException { + super(device, deviceName); + throw new InvalidClassException("com.technototes.library.hardware.servo.MotorAsServo", "Not Yet Implemented"); + } + + protected MotorAsServo(String deviceName) throws InvalidClassException { + super(deviceName); + throw new InvalidClassException("com.technototes.library.hardware.servo.MotorAsServo", "Not Yet Implemented"); + } + + /** + * @return + */ + @Override + public String LogLine() { + return null; + } + + /** + * @return + */ + @Override + public double getSensorValue() { + return 0; + } + + /** + * @return + */ + @Override + public double getAsDouble() { + return getSensorValue(); + } +} From 99b2b55774520339f84bb7ac0ef543fa334f3aba Mon Sep 17 00:00:00 2001 From: Kevin Frei Date: Sun, 26 Nov 2023 14:32:59 -0800 Subject: [PATCH 34/34] A few more updates, cleaned up getting the motor --- .../PathingMecanumDrivebaseSubsystem.java | 8 ++++---- .../library/hardware/motor/EncodedMotor.java | 6 ++++++ .../sensor/encoder/ExternalEncoder.java | 6 +++++- .../hardware/sensor/encoder/MotorEncoder.java | 4 ---- .../vision/subsystem/BasicVisionSubsystem.java | 18 +++++++++--------- 5 files changed, 24 insertions(+), 18 deletions(-) diff --git a/Path/src/main/java/com/technototes/path/subsystem/PathingMecanumDrivebaseSubsystem.java b/Path/src/main/java/com/technototes/path/subsystem/PathingMecanumDrivebaseSubsystem.java index 20c7b813..fecd2046 100644 --- a/Path/src/main/java/com/technototes/path/subsystem/PathingMecanumDrivebaseSubsystem.java +++ b/Path/src/main/java/com/technototes/path/subsystem/PathingMecanumDrivebaseSubsystem.java @@ -123,10 +123,10 @@ public PathingMecanumDrivebaseSubsystem( c.getDouble(WheelBase.class), c.getDouble(LateralMult.class) ); - leftFront = fl.getDevice(); - leftRear = rl.getDevice(); - rightRear = rr.getDevice(); - rightFront = fr.getDevice(); + leftFront = fl.getRawMotor(DcMotorEx.class); + leftRear = rl.getRawMotor(DcMotorEx.class); + rightRear = rr.getRawMotor(DcMotorEx.class); + rightFront = fr.getRawMotor(DcMotorEx.class); motors = Arrays.asList(leftFront, leftRear, rightRear, rightFront); diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java index 9159bac8..bf52cee5 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/motor/EncodedMotor.java @@ -291,4 +291,10 @@ public EncodedMotor coast() { public EncodedMotor setLimits(double mi, double ma) { return (EncodedMotor) super.setLimits(mi, ma); } + + // Ah, Java, you're such a hideous language... + public U getRawMotor(Class type) { + T device = getRawDevice(); + return (device != null && type.isInstance(device)) ? type.cast(device) : null; + } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/encoder/ExternalEncoder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/encoder/ExternalEncoder.java index d3ce9a95..6f1cd74b 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/encoder/ExternalEncoder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/encoder/ExternalEncoder.java @@ -43,6 +43,10 @@ public void zeroEncoder() { */ @Override public double getSensorValue() { - return getDevice().getVoltage() - zero; + AnalogInput device = getRawDevice(); + if (device != null) { + val = device.getVoltage(); + } + return val - zero; } } diff --git a/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/encoder/MotorEncoder.java b/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/encoder/MotorEncoder.java index 15eb8f36..140c71a4 100644 --- a/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/encoder/MotorEncoder.java +++ b/RobotLibrary/src/main/java/com/technototes/library/hardware/sensor/encoder/MotorEncoder.java @@ -75,10 +75,6 @@ public MotorEncoder(DcMotorEx motor) { this(motor, new ElapsedTime()); } - public MotorEncoder(EncodedMotor motor) { - this(motor.getDevice()); - } - public MotorEncoder(String deviceName) { this(hardwareMap.get(DcMotorEx.class, deviceName)); } diff --git a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java index 3f09882f..c5613a83 100644 --- a/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java +++ b/Vision/src/main/java/com/technototes/vision/subsystem/BasicVisionSubsystem.java @@ -60,7 +60,7 @@ public BasicVisionSubsystem(Camera c, int w, int h, OpenCvCameraRotation rot) { * * @return the Camera device in use */ - public Camera getDevice() { + protected Camera getRawDevice() { return camera; } @@ -211,15 +211,15 @@ protected int countPixelsOfColor(HSVRange range, Mat imgHSV, Mat telemetryRGB, i // Check to see which pixels are between low and high, output into a boolean matrix Cr Mat count = new Mat(); Core.inRange(imgHSV, low, high, count); - // TODO: It seems like there should be a more optimized way to do this. - for (int i = 0; i < count.width(); i++) { - for (int j = 0; j < count.height(); j++) { - if (count.get(j, i)[0] > 0) { - totalColorCount++; - // Draw a dots on the image at this point - input was put into img - if (telemetryRGB != null) { + totalColorCount = Core.countNonZero(count); + if (telemetryRGB != null) { + // TODO: It seems like there should be a more optimized way to do this. + for (int i = 0; i < count.width(); i++) { + for (int j = 0; j < count.height(); j++) { + if (count.get(j, i)[0] > 0) { + // Draw a dots on the image at this point - input was put into img // The color choice makes things stripey, which makes it easier to identify - double[] colorToDraw = ((j + i) & 3) != 0 ? low.val : high.val; + double[] colorToDraw = ((j + i) & 2) != 0 ? low.val : high.val; telemetryRGB.put(j + yOffset, i + xOffset, colorToDraw); } }