<h2>org.das2.datum.Orbits</h2><p>Orbits are a map of string identifiers to DatumRanges, typically used to enumerate the orbits a spacecraft makes.
 For example, Cassini orbit "C" was from 2004-366T07:03 to 2005-032T03:27 and "33" was from  2006-318T23:34 to 2006-330T22:23.
 There are two types of orbits: canonical, which have an identifier like "cassini" and can be used by the community, and user
 which have identifiers like  https://raw.githubusercontent.com/autoplot/orbits/main/psp/psp-aa25.txt.  In either case, these 
 refer to a file.  The canonical ones are stored on the das2 website at  http://das2.org/Orbits/&lt;id&gt;.dat.  This file is a
 three-column ASCII file with the orbit id in either the first or last column.  Note any line not meeting this spec is ignored,
 so that orbit files can contain additional documentation (and can sit within a wiki).</p>
<hr>
<a name="compare"></a>
<h2>compare</h2>
compare( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> a, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> b ) &rarr; int

<p>return -1 if a is before b, 0 if they are equal, and 1 if a is after b.</p>

<h3>Parameters</h3>
a - a String
<br>
b - a String

<h3>Returns:</h3>
an int

<br><br>
<a href="https://github.com/autoplot/dev/search?q=compare&unscoped_q=compare">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#compare">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="first"></a>
<h2>first</h2>
first(  ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return the first orbit id, so that we can iterate through all</p>

<h3>Returns:</h3>
a String

<br><br>
<a href="https://github.com/autoplot/dev/search?q=first&unscoped_q=first">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#first">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="getDatumRange"></a>
<h2>getDatumRange</h2>
getDatumRange( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> orbit ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a>

<p>return the DatumRange for this orbit number.  Note this IS NOT an OrbitDatumRange.</p>

<h3>Parameters</h3>
orbit - a String

<h3>Returns:</h3>
a DatumRange

<br><br>
<a href="https://github.com/autoplot/dev/search?q=getDatumRange&unscoped_q=getDatumRange">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#getDatumRange">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="getOrbit"></a>
<h2>getOrbit</h2>
getOrbit( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/Datum.html'>Datum</a> d ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>returns the first orbit containing the time, or null if none do.</p>

<h3>Parameters</h3>
d - a Datum

<h3>Returns:</h3>
the orbit number or null
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getOrbit&unscoped_q=getOrbit">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#getOrbit">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="getOrbitOnOrBefore"></a>
<h2>getOrbitOnOrBefore</h2>
getOrbitOnOrBefore( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/Datum.html'>Datum</a> d ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return the closest orbit on or before datum d.</p>

<h3>Parameters</h3>
d - the datum

<h3>Returns:</h3>
the id of the closest orbit before, or null.
<h3>See Also:</h3>
<a href='http://jfaden.net/~jbf/autoplot/script/demos/jeremy/onOrBefore.jy'>http://jfaden.net/~jbf/autoplot/script/demos/jeremy/onOrBefore.jy</a> <br>
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getOrbitOnOrBefore&unscoped_q=getOrbitOnOrBefore">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#getOrbitOnOrBefore">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="getOrbitsFor"></a>
<h2>getOrbitsFor</h2>
getOrbitsFor( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> sc ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/Orbits.html'>org.das2.datum.Orbits</a>

<p>Return the orbits for the named spacecraft, or those described in the file pointed to the URL when
 the "sc" identifier is a URL.

 Example files may be on the wiki page http://das2.org/wiki/index.php/Orbits.&lt;SC%gt;,
 or on the classpath in /orbits/&lt;SC&gt;.dat  The orbits file will be read by ignoring any line
 that does not contain three non-space blobs, and either the first two or last two should parse as an
 ISO8601 string.  The ISO8601 strings must start with 4-digit years, either
 Note the input can then be html, with a pre section containing the orbits.

 Note the wiki page is the source for cassini and crres, but other missions may come from special places encoded here.
 Mediawiki introduced two problems: first, that typos were not identified clearly because a 200 (ok) code is returned
 for any URL.  Second, it's not trivial to set up mirrors that put data into the wiki.  For this reason, the wiki
 should only be used as a reference for humans and other use is discouraged.

 This now uses special code for rbspb-pp and rbspa-pp that looks at UIowa, LANL and at virbo.org.

 This should not be called from the event thread, because it may block briefly while the orbits are loaded.</p>

<h3>Parameters</h3>
sc - the string identifier for the spacecraft, such as "rbspa-pp", or URL to orbit file.

<h3>Returns:</h3>
the Orbits file which can be used to query orbits.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getOrbitsFor&unscoped_q=getOrbitsFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#getOrbitsFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="getSpacecraft"></a>
<h2>getSpacecraft</h2>
getSpacecraft(  ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p></p>

<h3>Returns:</h3>
java.lang.String

<br><br>
<a href="https://github.com/autoplot/dev/search?q=getSpacecraft&unscoped_q=getSpacecraft">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#getSpacecraft">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="getSpacecraftIdExamples"></a>
<h2>getSpacecraftIdExamples</h2>
getSpacecraftIdExamples(  ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/util/Map.html'>java.util.Map</a>

<p>return examples of spacecraft ids which can be used, and a human-readable label
 in a linked hash map.  This may fall out-of-sync with the list of IDs which
 would work (see https://das2.org/Orbits/), but this should be considered a bug.</p>

<h3>Returns:</h3>
map from id to description.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getSpacecraftIdExamples&unscoped_q=getSpacecraftIdExamples">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#getSpacecraftIdExamples">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="getURL"></a>
<h2>getURL</h2>
getURL(  ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/net/URL.html'>java.net.URL</a>

<p>return the URL used to populate the orbits.</p>

<h3>Returns:</h3>
a java.net.URL

<br><br>
<a href="https://github.com/autoplot/dev/search?q=getURL&unscoped_q=getURL">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#getURL">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="isOrbitsFile"></a>
<h2>isOrbitsFile</h2>
isOrbitsFile( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> sc ) &rarr; boolean

<p>provide method for clients to see if the URI represents an orbits file, without 
 constantly going into the synchronized block, which was causing things to hang for
 Masafumi.</p>

<h3>Parameters</h3>
sc - the string identifier for the spacecraft, such as "rbspa-pp", or URL to orbit file.

<h3>Returns:</h3>
true if the uri refers to orbits.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=isOrbitsFile&unscoped_q=isOrbitsFile">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#isOrbitsFile">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="last"></a>
<h2>last</h2>
last(  ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p></p>

<h3>Returns:</h3>
java.lang.String

<br><br>
<a href="https://github.com/autoplot/dev/search?q=last&unscoped_q=last">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#last">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="main"></a>
<h2>main</h2>
main( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a> args ) &rarr; void

<p></p>

<h3>Parameters</h3>
args - a java.lang.String[]

<h3>Returns:</h3>
void (returns nothing)

<br><br>
<a href="https://github.com/autoplot/dev/search?q=main&unscoped_q=main">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#main">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="next"></a>
<h2>next</h2>
next( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> orbit ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return the next orbit number, or null if there are no more orbit numbers.</p>

<h3>Parameters</h3>
orbit - a String

<h3>Returns:</h3>
the orbit number or null.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=next&unscoped_q=next">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#next">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="prev"></a>
<h2>prev</h2>
prev( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> orbit ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return the previous orbit number, or null if there are no more orbit numbers.</p>

<h3>Parameters</h3>
orbit - a String

<h3>Returns:</h3>
the orbit number or null.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=prev&unscoped_q=prev">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#prev">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="reset"></a>
<h2>reset</h2>
reset(  ) &rarr; void

<p>reset the loaded missions.</p>

<h3>Returns:</h3>
void (returns nothing)

<br><br>
<a href="https://github.com/autoplot/dev/search?q=reset&unscoped_q=reset">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#reset">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="resetOrbitsFor"></a>
<h2>resetOrbitsFor</h2>
resetOrbitsFor( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> sc ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/Orbits.html'>org.das2.datum.Orbits</a>

<p>force a reload of the orbits file.  TODO: ideally the freshness of the orbits file would
 be checked every ten seconds, but there's quite a bit of coding to do that properly.
 This will force the reload, for example when the green play button is pressed on the 
 Autoplot Events List.</p>

<h3>Parameters</h3>
sc - the string identifier for the spacecraft, such as "rbspa-pp", or URL to orbit file.

<h3>Returns:</h3>
reread Orbits.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=resetOrbitsFor&unscoped_q=resetOrbitsFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#resetOrbitsFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>
<hr>
<a name="trimOrbit"></a>
<h2>trimOrbit</h2>
trimOrbit( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> orbit ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>Orbit numbers are typically just a number, but some missions like Cassini had letter names for orbits
 as well.  This encapsulates the code to identify the canonical orbit from the string, by
 removing trailing _'s and 0's.</p>

<h3>Parameters</h3>
orbit - a String

<h3>Returns:</h3>
a String

<br><br>
<a href="https://github.com/autoplot/dev/search?q=trimOrbit&unscoped_q=trimOrbit">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/datum/Orbits.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/datum/Orbits.html#trimOrbit">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCoreDatum/src/org/das2/datum/Orbits.java">[view source]</a>
<br>
<br>