Suwanee County, Florida
30°07’21” N
83°07’57” W
October, 2017
Robot: Sunfish
Northern Florida is home to one of the most popular cave diving areas in the world.
The limestone in this region is rich with sinkholes, springs, and caves.
Warm, crystal clear water—and the lure of the unknown—inspire cave divers to explore these features.
Cave diving in the area began in the 1950s and by the 1960s and 1970s north Florida was at the forefront of the scene for this new sport.
Many standard cave diving techniques and safety practices were first developed in Florida,
and much of the equipment that allows divers to push the limits of human exploration was pioneered here as well.
Peacock Springs, in the heart of Florida’s “Cave Country,” is a complex labyrinth of flooded cave passages.
It’s one of the longest underwater caves systems in the United States and, to this day,
many open-water divers receive their first cave diving training here.
Given all of this history, what better place could we choose to test a robot with aspirations of becoming a cave diver?
3D Visualization
Our Missions
Peacock Springs
(Click gif for 3D interaction!)
SUNFISH is a person-portable, hovering vehicle with built-in precision navigation and control,
multibeam sonar mapping, imaging, and CTD capabilities.
We have developed capabilities for performing simultaneous localization and mapping (SLAM),
exploration, path planning, and precision docking.
In October 2017 we ran a series of tests and demonstrations in the unstructured labyrinthine cave environment of Peacock Springs.
SUNFISH was able to autonomously explore this environment, creating a real-time map which it used to navigate through the cave.
SUNFISH penetrated 120 m into the Peacock 1 cave site, reaching a second cave entrance called “Pothole Sink.”
The robot was then able to autonomously find its way back to the starting point using the map it had just created.
The capabilities developed for SUNFISH have direct application to general inspection,
monitoring, and survey tasks, as well as providing a basis for the types of autonomous vehicles that will explore where humans cannot go.
Contact Us
Austin, US
Email: test@stoneaerospace.com


My Needs
Categories
Copyright © My Needs 2019
Pharmacy Needs
Close And Save
Shopping Needs
Close And Save
Grocery Needs
Close And Save
Car Needs
Close And Save


{% extends 'navigationbar.html' %} {% load staticfiles %} {% block title %}
WELCOME TO miniCTF
A Platform made in django for hosting Capture The Flag(CTF) event.
Features:
Challenges are available in following categories
NOTE: Pwning and Web categories are under development.


PageAge is enabled
(
undo
)
Enabled
Disabled for this page instance (temporary)
Disabled for this tab
Disabled for this site
Add filter for this site


/* This script and many more are available free online at
The JavaScript Source!! http://javascript.internet.com
Created by: HaganeNoKokoro :: http://tinyurl.com/buvp9 */
/*
* Notes on hue
*
* This script uses hue rotation in the following manner:
* hue=0 is red (#FF0000)
* hue=60 is yellow (#FFFF00)
* hue=120 is green (#00FF00)x`
* hue=180 is cyan (#00FFFF)
* hue=240 is blue (#0000FF)
* hue=300 is magenta (#FF00FF)
* hue=360 is hue=0 (#FF0000)
*
* Notes on the script
*
* This script should function in any browser that supports document.getElementById
* It has been tested in Netscape7, Mozilla Firefox 1.0, and Internet Explorer 6
*
* Accessibility
*
*
*
*
*
* The script does not write the string out, but rather takes it from an existing
* HTML element. Therefore, users with javascript disabled will not be adverely affected.
* They just won't get the pretty colors.
*/
/*
* splits par.firstChild.data into 1 span for each letter
*
* ARGUMENTS
* span - HTML element containing a text node as the only element
*/
once around, 720 => twice, etc)
* brt - brightness (0-255, 0 => black, 255 => full color)
* spd - how many ms between moveRainbow calls (less => faster)
* hspd - how many hue degrees to move every time moveRainbow is called (0-359, closer to 180 => faster)
*/
function RainbowSpan(span, hue, deg, brt, spd, hspd) {
this.deg=(deg==null?360:Math.abs(deg));
this.hue=(hue==null?0:Math.abs(hue)%360);
this.hspd=(hspd==null?3:Math.abs(hspd)%360);
this.length=span.firstChild.data.length;
this.span=span;
this.speed=(spd==null?50:Math.abs(spd));
this.hInc=this.deg/this.length;
this.brt=(brt==null?255:Math.abs(brt)%256);
this.timer=null;
toSpans(span);
this.moveRainbow();
}
/*
* sets the colors of the children of [this] as a hue-rotating rainbow starting at this.hue;
* requires something to manage ch externally
* I had to make the RainbowSpan class because M$IE wouldn't let me attach this prototype to [Object]
*/
RainbowSpan.prototype.moveRainbow = function() {
if(this.hue>359) this.hue-=360;
var color;
var b=this.brt;
var a=this.length;
var h=this.hue;
for(var i=0; i359) h-=360;
if(h<60) { color=Math.floor(((h)/60)*b); red=b;grn=color;blu=0; }
else if(h<120) { color=Math.floor(((h-60)/60)*b); red=b-color;grn=b;blu=0; }
else if(h<180) { color=Math.floor(((h-120)/60)*b); red=0;grn=b;blu=color; }
else if(h<240) { color=Math.floor(((h-180)/60)*b); red=0;grn=b-color;blu=b; }
else if(h<300) { color=Math.floor(((h-240)/60)*b); red=color;grn=0;blu=b; }
else { color=Math.floor(((h-300)/60)*b); red=b;grn=0;blu=b-color; }
h+=this.hInc;
this.span.childNodes[i].style.color="rgb("+red+", "+grn+", "+blu+")";
}
this.hue+=this.hspd;
};
kjnsrtiuortiuoThis is a basic html file


|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |
| Uses of CuratorFramework in com.netflix.curator.framework |
|---|
| Methods in com.netflix.curator.framework that return CuratorFramework | |
|---|---|
CuratorFramework |
CuratorFrameworkFactory.Builder.build()
Apply the current values and build a new CuratorFramework |
static CuratorFramework |
CuratorFrameworkFactory.newClient(String connectString,
int sessionTimeoutMs,
int connectionTimeoutMs,
RetryPolicy retryPolicy)
Create a new client |
static CuratorFramework |
CuratorFrameworkFactory.newClient(String connectString,
RetryPolicy retryPolicy)
Create a new client with default session timeout and default connection timeout |
CuratorFramework |
CuratorFramework.nonNamespaceView()
Returns a facade of the current instance that does _not_ automatically pre-pend the namespace to all paths |
| Uses of CuratorFramework in com.netflix.curator.framework.api |
|---|
| Methods in com.netflix.curator.framework.api with parameters of type CuratorFramework | |
|---|---|
void |
CuratorListener.eventReceived(CuratorFramework client,
CuratorEvent event)
Called when a background task has completed or a watch has triggered |
void |
BackgroundCallback.processResult(CuratorFramework client,
CuratorEvent event)
Called when the async background operation completes |
| Uses of CuratorFramework in com.netflix.curator.framework.imps |
|---|
| Classes in com.netflix.curator.framework.imps that implement CuratorFramework | |
|---|---|
class |
CuratorFrameworkImpl
|
class |
NonNamespaceFacade
|
| Methods in com.netflix.curator.framework.imps that return CuratorFramework | |
|---|---|
CuratorFramework |
NonNamespaceFacade.nonNamespaceView()
|
CuratorFramework |
CuratorFrameworkImpl.nonNamespaceView()
|
| Uses of CuratorFramework in com.netflix.curator.framework.recipes.atomic |
|---|
| Constructors in com.netflix.curator.framework.recipes.atomic with parameters of type CuratorFramework | |
|---|---|
DistributedAtomicInteger(CuratorFramework client,
String counterPath,
RetryPolicy retryPolicy)
Creates in optimistic mode only - i.e. |
|
DistributedAtomicInteger(CuratorFramework client,
String counterPath,
RetryPolicy retryPolicy,
PromotedToLock promotedToLock)
Creates in mutex promotion mode. |
|
DistributedAtomicLong(CuratorFramework client,
String counterPath,
RetryPolicy retryPolicy)
Creates in optimistic mode only - i.e. |
|
DistributedAtomicLong(CuratorFramework client,
String counterPath,
RetryPolicy retryPolicy,
PromotedToLock promotedToLock)
Creates in mutex promotion mode. |
|
DistributedAtomicValue(CuratorFramework client,
String path,
RetryPolicy retryPolicy)
Creates in optimistic mode only - i.e. |
|
DistributedAtomicValue(CuratorFramework client,
String path,
RetryPolicy retryPolicy,
PromotedToLock promotedToLock)
Creates in mutex promotion mode. |
| Uses of CuratorFramework in com.netflix.curator.framework.recipes.barriers |
|---|
| Constructors in com.netflix.curator.framework.recipes.barriers with parameters of type CuratorFramework | |
|---|---|
DistributedBarrier(CuratorFramework client,
String barrierPath)
|
|
DistributedDoubleBarrier(CuratorFramework client,
String barrierPath,
int memberQty)
Creates the barrier abstraction. |
| Uses of CuratorFramework in com.netflix.curator.framework.recipes.cache |
|---|
| Methods in com.netflix.curator.framework.recipes.cache with parameters of type CuratorFramework | |
|---|---|
void |
PathChildrenCacheListener.childEvent(CuratorFramework client,
PathChildrenCacheEvent event)
Called when a change has occurred |
| Constructors in com.netflix.curator.framework.recipes.cache with parameters of type CuratorFramework | |
|---|---|
PathChildrenCache(CuratorFramework client,
String path,
PathChildrenCacheMode mode)
|
|
PathChildrenCache(CuratorFramework client,
String path,
PathChildrenCacheMode mode,
ThreadFactory threadFactory)
|
| Uses of CuratorFramework in com.netflix.curator.framework.recipes.leader |
|---|
| Methods in com.netflix.curator.framework.recipes.leader with parameters of type CuratorFramework | |
|---|---|
void |
LeaderSelectorListener.takeLeadership(CuratorFramework client)
Called when your instance has been granted leadership. |
| Constructors in com.netflix.curator.framework.recipes.leader with parameters of type CuratorFramework | |
|---|---|
LeaderSelector(CuratorFramework client,
String mutexPath,
LeaderSelectorListener listener)
|
|
LeaderSelector(CuratorFramework client,
String mutexPath,
ThreadFactory threadFactory,
Executor executor,
LeaderSelectorListener listener)
|
| Uses of CuratorFramework in com.netflix.curator.framework.recipes.locks |
|---|
| Methods in com.netflix.curator.framework.recipes.locks with parameters of type CuratorFramework | |
|---|---|
static void |
Revoker.attemptRevoke(CuratorFramework client,
String path)
Utility to mark a lock for revocation. |
| Constructors in com.netflix.curator.framework.recipes.locks with parameters of type CuratorFramework | |
|---|---|
InterProcessMultiLock(CuratorFramework client,
List<String> paths)
Creates a multi lock of InterProcessMutex s |
|
InterProcessMutex(CuratorFramework client,
String path)
|
|
InterProcessReadWriteLock(CuratorFramework client,
String basePath)
|
|
InterProcessSemaphore(CuratorFramework client,
String path,
int maxLeases)
|
|
InterProcessSemaphore(CuratorFramework client,
String path,
SharedCountReader count)
|
| Uses of CuratorFramework in com.netflix.curator.framework.recipes.queue |
|---|
| Methods in com.netflix.curator.framework.recipes.queue with parameters of type CuratorFramework | ||
|---|---|---|
static
|
QueueBuilder.builder(CuratorFramework client,
QueueConsumer<T> consumer,
QueueSerializer<T> serializer,
String queuePath)
Allocate a new builder |
|
void |
BlockingQueueConsumer.stateChanged(CuratorFramework client,
ConnectionState newState)
|
| Uses of CuratorFramework in com.netflix.curator.framework.recipes.shared |
|---|
| Constructors in com.netflix.curator.framework.recipes.shared with parameters of type CuratorFramework | |
|---|---|
SharedCount(CuratorFramework client,
String path,
int seedValue)
|
|
SharedValue(CuratorFramework client,
String path,
byte[] seedValue)
|
| Uses of CuratorFramework in com.netflix.curator.framework.state |
|---|
| Methods in com.netflix.curator.framework.state with parameters of type CuratorFramework | |
|---|---|
void |
ConnectionStateListener.stateChanged(CuratorFramework client,
ConnectionState newState)
Called when there is a state change in the connection |
| Constructors in com.netflix.curator.framework.state with parameters of type CuratorFramework | |
|---|---|
ConnectionStateManager(CuratorFramework client)
|
| Uses of CuratorFramework in com.netflix.curator.x.discovery |
|---|
| Methods in com.netflix.curator.x.discovery with parameters of type CuratorFramework | |
|---|---|
ServiceDiscoveryBuilder<T> |
ServiceDiscoveryBuilder.client(CuratorFramework client)
Required - set the client to use |
| Uses of CuratorFramework in com.netflix.curator.x.discovery.details |
|---|
| Constructors in com.netflix.curator.x.discovery.details with parameters of type CuratorFramework | |
|---|---|
ServiceDiscoveryImpl(CuratorFramework client,
String basePath,
InstanceSerializer<T> serializer,
ServiceInstance<T> thisInstance)
|
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |


Waking early
02 Apr 2014The silence and solitude of those first few hours before anyone else wakes up is one of the favourite things I can think of. Yet, I rarely put my alarm on super early, and when I do, I snooze and snooze again. I wonder whether part of the magic is that I experience it rarely.
One day, and it might be soon, I’ll do a week of getting up an hour and a half earlier than normal, around the time I imagine you have to get up if you have cows to milk. After a few days I might re-evaluate my list of favourite things, or I might have forced myself to a few extra hours of contentment. Coming to think of it, these early hours might not even have to be about work, they could be about writing, drinking coffee, going for bike rides as the sun goes up. I might even start tomorrow.


It is well known that the non-linear algebraic equations of most mechanical loops in technical devices can be solved analytically. It is, however, difficult to perform this fully automatically and therefore none of the commercial, general purpose multi-body programs, such as MSC ADAMS, LMS DADS, SIMPACK, have this feature. These programs solve loop structures with pure numerical methods. Multi-body programs that are designed for real-time simulation of the dynamics of specific vehicles, such as ve-DYNA, usually contain manual implementations of a particular multi-body system (the vehicle) where the occurring loops are either analytically solved, if this is possible, or are treated by table look-up where the tables are constructed in a pre-processing phase. Without these features the required real-time capability would be difficult to achieve.
In a series of papers and dissertations Prof. Hiller and his group in Duisburg, Germany, have developed systematic methods to handle mechanical loops analytically, see also MultiBody.UsersGuide.Literature. The "characteristic pair of joints" method basically cuts a loop at two joints and uses geometric invariants to reduce the number of algebraic equations, often down to one equation that can be solved analytically. Also several multi-body codes have been developed that are based on this method, e.g., MOBILE. Besides the very desired feature to solve non-linear algebraic equations analytically, i.e., efficiently and in a robust way, there are several drawbacks: It is difficult to apply this method automatically. Even if this would be possible in a good way, there is always the problem that it cannot be guaranteed that the statically selected states lead to no singularity during simulation. Therefore, the "characteristic pair of joints" method is usually manually applied which requires know-how and experience.
In the MultiBody library, the "characteristic pair of joints" method is supported in a restricted form such that it can be applied also by non-specialists. The idea is to provide aggregations of joints in package MultiBody.Joints.Assemblies as one object that either have 6 degrees of freedom or 3 degrees of freedom (for usage in planar loops).
As an example, a variant of the four bar mechanism is given in the figure below.
Here, the mechanism is modeled with six revolute joints and one prismatic joint. In the figure below, the five revolute joints and the prismatic joint are collected together in an assembly object called "jointSSP" from MultiBody.Joints.Assemblies.JointSSP.
The JointSSP joint aggregation has a frame at the outer spherical joint (frame_a) and a frame at the prismatic joint (frame_b). JointSSP, as all other objects from the Joints.Assemblies package, has the property, that the generalized coordinates, and all other frames defined in the assembly, can be calculated given the movement of frame_a and of frame_b. This is performed by analytically solving non-linear systems of equations. From a structural point of view, the equations in an assembly object are written in the form
q = f1(ra, Ra, rb, Rb)
where ra, Ra, rb, Rb are the variables defining the position and orientation of the frame_a and frame_b, respectively, and q are the generalized positional coordinates inside the assembly, e.g., the angle of a revolute joint. Given angle j of revolute joint j1 from the four bar mechanism, frame_a and frame_b of the assembly object can be computed by a forward recursion
(ra, Ra, rb, Rb) = f(j)
Since this is a structural property, the symbolic algorithms can automatically select j and its derivative as states and then all positional variables can be computed in a forwards sequence. It is now understandable that a Modelica translator can transform the equations of the four bar mechanism to a recursive sequence of statements that has no non-linear algebraic loops anymore (remember, the previous "straightforward" solution with 6 revolute joints and 1 prismatic joint has a nonlinear system of equations of order 5).
The aggregated joint objects consist of a combination of either a revolute or prismatic joint and of a rod that has either two spherical joints at its two ends or a spherical and a universal joint, respectively. For all combinations, analytic solutions can be determined. For planar loops, combinations of 1, 2 or 3 revolute joints with parallel axes and of 2 or 1 prismatic joint with axes that are orthogonal to the revolute joints can be treated analytically. The currently supported combinations are listed in the table below.
| 3-dimensional Loops: | |
| JointSSR | Spherical - Spherical - Revolute |
| JointSSP | Spherical - Spherical - Prismatic |
| JointUSR | Universal - Spherical - Revolute |
| JointUSP | Universal - Spherical - Prismatic |
| JointUPS | Universal - Prismatic - Spherical |
| Planar Loops: | |
| JointRRR | Revolute - Revolute - Revolute |
| JointRRP | Revolute - Revolute - Prismatic |
On first view this seems to be quite restrictive. However, mechanical devices are usually built up with rods connected by spherical joints on each end, and additionally with revolute and prismatic joints. Therefore, the combinations of the above table occur frequently. The universal joint is usually not present in actual devices but is used (a) if two JointXXX components can be connected such that a revolute and a universal joint together form a spherical joint and (b) if the orientation of the connecting rod between two spherical joints is needed, e.g., since a body shall be attached. In this case one of the spherical joints might be replaced by a universal joint. This approximation is fine as long as the mass and inertia of the rod is not significant.
Let us discuss item (a) in more detail: The MacPherson suspension in the next figure has three frame connectors.
The lower left one (frameChassis) is fixed to the vehicle chassis. The upper left one (frameSteering) is driven by the steering mechanism, i.e. the movement of both frames are given. The frame connector on the right (frameWheel) drives the wheel. The three frames are connected by a mechanism consisting essentially of two rods with spherical joints on both ends. These are built up by a jointUPS and a jointSSR assemblies. As can be seen, the universal joint from the jointUPS assembly is connected to the revolute joint of the jointSSR assembly. Therefore, we have 3 revolute joints connected together at one point and if the axes of rotations are chosen appropriately, this describes a spherical joint. In other words, the two connected assemblies define the desired two rods with spherical joints on each ends.
The movement of the chassis, frameChassis, is computed outside of the suspension model. When the generalized coordinates of revolute joint "jointArm" (lower left part in figure) are used as states, then frame_a and frame_b of the jointUPS joint can be calculated. After the non-linear loop with jointUPS is (analytically) solved, all frames on this assembly are known, especially, the one connected to frame_b of the jointSSR assembly. Since frame_a of jointSSR is connected to frameSteering which is computed from the steering mechanism, again the two required frame movements of the jointSSR assembly are calculated. This in turn means that also all other frames on the jointSSR assembly can be computed, especially, the one connected to frameWheel that drives the wheel. From this analysis it is clear that a tool is able to solve these coupled loops analytically.
Another example is the model of the V6 engine, see next figure for an animation view and the original definition of one cylinder with elementary joints.
Here, it is sufficient to rewrite the basic cylinder model by replacing the joints with a JointRRP object that has two revolute and one prismatic joint, as can be seen in next figure.
Since 6 cylinders are connected together, 6 coupled loops with 6 JointRRP objects are present. This model is available as MultiBody.Examples.Loops.EngineV6_analytic.
The composition diagram of the connected 6 cylinders is shown in the next figure
It can be seen that the revolute joint of the crank shaft (joint "bearing" in left part of figure) might be selected as degree of freedom. Then, the 4 connector frames of all cylinders can be computed. As a result, the computations of the cylinders are decoupled from each other. Within one cylinder the position of frame_a and frame_b of the jointRRP assembly can be computed and therefore the generalized coordinates of the two revolute and the prismatic joint in the jointRRP object can be determined. Considering this analysis, it is not surprising that a Modelica translator is able to transform the DAE equations into a sequential evaluation without any non-linear loop. Compare this nice result with the model using only elementary joints that leads to a DAE with 6 algebraic loops and 5 non-linear equations per loop. Additionally, a linear system of equations of order 43 is present. The simulation time is about 5 times faster with the analytic loop handling.


Hacked By C09Y_C47
Hacked By C09Y C47
Hey Admin....!! Nothing Personal
Your Website Has Been H4CK3D
Oops...!! Security Failure


Terms of use
- You must not use Blot to break the laws of the State of Washington in the USA.
- You must read and agree to Blot’s privacy policy.
- Blot reserves the right to terminate your account without cause.
- Blot charges a fee in USD. Blot will close your account if your payment is late by more than 30 days. You can cancel your subscription at any time.
- You agree to indemnify and hold harmless Blot from and against any and all claims and expenses, including attorneys’ fees, arising out of your use of Blot.


|
ensembl-hive-python3
2.4
|
This is the counterpart of GuestProcess. More...
Public Member Functions | |
| def | __init__ (self, read_fileno, write_fileno) |
| def | warning (self, message, is_error=False) |
| Store a message in the log_message table with is_error indicating whether the warning is actually an error or not. More... | |
| def | dataflow (self, output_ids, branch_name_or_code=1) |
| Dataflows the output_id(s) on a given branch (default 1). More... | |
| def | worker_temp_directory (self) |
| Returns the full path of the temporary directory created by the worker. More... | |
| def | param_defaults (self) |
| Returns the defaults parameters for this runnable. More... | |
| def | param_required (self, param_name) |
| Returns the value of the parameter "param_name" or raises an exception if anything wrong happens or the value is None. More... | |
| def | param (self, param_name, args) |
| When called as a setter: sets the value of the parameter "param_name". More... | |
| def | param_exists (self, param_name) |
| Returns True if the parameter exists and can be successfully substituted, None if the substitution fails, False if it is missing. More... | |
| def | param_is_defined (self, param_name) |
| Returns True if the parameter exists and can be successfully substituted to a defined value, None if the substitution fails, False if it is missing or evaluates as None. More... | |
Public Attributes | |
| debug | |
| input_job | |
| autoflow | |
Private Member Functions | |
| def | __print_debug (self, args) |
| def | __send_message (self, event, content) |
| seralizes the message in JSON and send it to the parent process More... | |
| def | __send_response (self, response) |
| Sends a response message to the parent process. More... | |
| def | __read_message (self) |
| Read a message from the parent and parse it. More... | |
| def | __send_message_and_wait_for_OK (self, event, content) |
| Send a message and expects a response to be 'OK'. More... | |
| def | __process_life_cycle (self) |
| Simple loop: wait for job parameters, do the job's life-cycle. More... | |
| def | __job_life_cycle (self, config) |
| Job's life-cycle. More... | |
| def | __run_method_if_exists (self, method) |
| method is one of "pre_cleanup", "fetch_input", "run", "write_output", "post_cleanup". More... | |
| def | __traceback (self, skipped_traces) |
| Remove "skipped_traces" lines from the stack trace (the eHive part) More... | |
Private Attributes | |
| __read_pipe | |
| __write_pipe | |
| __pid | |
| __created_worker_temp_directory | |
| __params | |
This is the counterpart of GuestProcess.
Note that most of the methods are private to be hidden in the derived classes.
This class can be used as a base-class for people to redefine fetch_input(), run() and/or write_output() (and/or pre_cleanup(), post_cleanup()). Jobs are supposed to raise CompleteEarlyException in case they complete before reaching. They can also raise JobFailedException to indicate a general failure
Definition at line 51 of file Process.py.
| def eHive.Process.BaseRunnable.__init__ | ( | self, | |
| read_fileno, | |||
| write_fileno | |||
| ) |
Definition at line 56 of file Process.py.
|
private |
Job's life-cycle.
See GuestProcess for a description of the protocol to communicate with the parent
Definition at line 132 of file Process.py.
|
private |
|
private |
Simple loop: wait for job parameters, do the job's life-cycle.
Definition at line 118 of file Process.py.
|
private |
Read a message from the parent and parse it.
Definition at line 96 of file Process.py.
|
private |
method is one of "pre_cleanup", "fetch_input", "run", "write_output", "post_cleanup".
We only the call the method if it exists to save a trip to the database.
Definition at line 190 of file Process.py.
|
private |
seralizes the message in JSON and send it to the parent process
Definition at line 72 of file Process.py.
|
private |
Send a message and expects a response to be 'OK'.
Definition at line 110 of file Process.py.
|
private |
Sends a response message to the parent process.
Definition at line 86 of file Process.py.
|
private |
Remove "skipped_traces" lines from the stack trace (the eHive part)
Definition at line 197 of file Process.py.
| def eHive.Process.BaseRunnable.dataflow | ( | self, | |
| output_ids, | |||
branch_name_or_code = 1 |
|||
| ) |
Dataflows the output_id(s) on a given branch (default 1).
Returns whatever the Perl side returns
Definition at line 215 of file Process.py.
| def eHive.Process.BaseRunnable.param | ( | self, | |
| param_name, | |||
| args | |||
| ) |
When called as a setter: sets the value of the parameter "param_name".
When called as a getter: returns the value of the parameter "param_name". It does not raise an exception if the parameter (or another one in the substitution stack) is undefined
Definition at line 259 of file Process.py.
| def eHive.Process.BaseRunnable.param_defaults | ( | self | ) |
Returns the defaults parameters for this runnable.
Definition at line 238 of file Process.py.
| def eHive.Process.BaseRunnable.param_exists | ( | self, | |
| param_name | |||
| ) |
Returns True if the parameter exists and can be successfully substituted, None if the substitution fails, False if it is missing.
Definition at line 274 of file Process.py.
| def eHive.Process.BaseRunnable.param_is_defined | ( | self, | |
| param_name | |||
| ) |
Returns True if the parameter exists and can be successfully substituted to a defined value, None if the substitution fails, False if it is missing or evaluates as None.
Definition at line 287 of file Process.py.
| def eHive.Process.BaseRunnable.param_required | ( | self, | |
| param_name | |||
| ) |
Returns the value of the parameter "param_name" or raises an exception if anything wrong happens or the value is None.
The exception is marked as non-transient.
Definition at line 245 of file Process.py.
| def eHive.Process.BaseRunnable.warning | ( | self, | |
| message, | |||
is_error = False |
|||
| ) |
Store a message in the log_message table with is_error indicating whether the warning is actually an error or not.
Definition at line 210 of file Process.py.
| def eHive.Process.BaseRunnable.worker_temp_directory | ( | self | ) |
Returns the full path of the temporary directory created by the worker.
Runnables can implement "worker_temp_directory_name()" to return the name they would like to use
Definition at line 226 of file Process.py.
|
private |
Definition at line 121 of file Process.py.
|
private |
Definition at line 136 of file Process.py.
|
private |
Definition at line 60 of file Process.py.
|
private |
Definition at line 58 of file Process.py.
|
private |
Definition at line 59 of file Process.py.
| eHive.Process.BaseRunnable.autoflow |
Definition at line 217 of file Process.py.
| eHive.Process.BaseRunnable.debug |
Definition at line 61 of file Process.py.
| eHive.Process.BaseRunnable.input_job |
Definition at line 139 of file Process.py.


Inca Trail to Machu Pichu Marathon
Cuzco PER
Website: www.andesadventures.com/run2asum.htm
Race Winners
(21 runnings)
31
May
2007
25 May
2006
16 Jun
2005
10
Jun
2004
12 Jun
2003
08 Aug
2002
31 May
2001
10 Aug
2000
28 Jul
1999
25 Aug
1998
1997
1996
Notes: 1996 was the inaugural year. This race has been held more than once
in some years; only one race for each year is listed. In 2005, an
alternate route was substituted at the last minute and no times or places were
recorded. The 2014 and subsequent courses follow a more difficult route.
The race distance has been reported as 46 km. These races have been
organized by Andes Adventures.
09 Jun
2016
8:37:05
Alastair Donachie (USA) +
Sandeep Naidu (IND)
9:59:45
Kathryn Menary (NZL)
06 Aug
2015
7:42:32
Frank Johansen (DEN)
8:28:38
Kristi Anderson (USA)
11
Jun 2014
6:24:32
Michael Hewitt (ENG)
10:09:18
Laurel Parkinson (CAN)
05
Jun 2013
7:13:40
Matt Pepler (NZL)
9:18:44
Winter Vinecki (USA)
06 Jun
2012
4:56:37
Fernando Gonzales Diaz (ESP)
7:19:18
Laurie Rogers (USA)
08 Jun
2011
7:16:24
Kai Yuen (CHN)
6:19:48
Rossie Warfield (USA)
10 Jun
2010
6:15:05
Jeff Roth (USA)
7:05:30
Christine Harrison (USA)
04 Jun
2009
6:02:15
Pete Ruygrok (NZL)
6:47:01
Seanan Alyasiri (USA)
29 May
2008
6:27:
John O'Regan (IRL) + Roy Galvin (IRL)
7:29:
Lorie Alexander (CAN)
6:55:
Tim Watson (CAN)
6:55:
Doone Watson (CAN)
5:35:
Scott MacIvor-2
5:35:
Suzette Vermaak (RSA)
---
not recorded
---
not recorded
5:34:42
Scott MacIvor (SCO)
6:53:00
Laura Exner
5:19:
Bradley Curry
7:04:
Lori Cooper
5:50:
Richard Donovan (IRL)
6:40:
Nancy Drach (NC/USA)
---
n/a
---
n/a
---
n/a
---
n/a
7:00:
Craig Schroeter (NY/USA)
8:30:
Carrie Parsi (MA/USA)
5:51:
Steve Atkinson (UT/USA)
7:56:
Debra Lovci (UT/USA)
---
n/a
---
n/a
---
n/a
---
n/a
Additional races organized by Andes Adventures on this course:
06 Aug 2008-
8:45: Anthony Hancock (GBR) 6:12: Roxanne Zobava (USA)
17 Jul 2007- winners not reported
21 Jul 2005- winners not reported
15 Jul 2004- winners not reported
17 Jul 2003- winners not reported
18 Jul 2002- winners not reported
23 Aug 2001- winners not reported
31 Aug 1999- winners not reported
Most Wins
(1996/date)
Men
2
Scott MacIvor (SCO)
2004,2006
Women
No woman has won more than once, according to
available information.
Prize Money
(ADR qualified runners)
No information on prize money has been received for this race.
Race Time Bias
(sec/km)
Insufficient data to calculate the race time bias.
Competitive Level (1990-date) Insufficient data to calculate the competitive level.
Quality Performances
Men No men under 2:20 Women No women under 2:50
Last Updated on 06 Aug 2016
Contributor: Klaas Loonstra (15), Devy Reinstein


| Modifier and Type | Class and Description |
|---|---|
class |
BigImage
An image implementation that handles loaded images that are larger than the
maximum texture size supported by the card.
|
class |
SpriteSheet
A sheet of sprites that can be drawn individually
|
| Modifier and Type | Method and Description |
|---|---|
Image |
Image.copy()
Get a copy of this image.
|
Image |
BigImage.copy()
Not supported in BigImage
|
Image |
Animation.getCurrentImage()
Get the image associated with the current animation frame
|
Image |
Image.getFlippedCopy(boolean flipHorizontal,
boolean flipVertical)
Get a copy image flipped on potentially two axis
|
Image |
BigImage.getFlippedCopy(boolean flipHorizontal,
boolean flipVertical) |
Image |
PackedSpriteSheet.getFullImage()
Get the full image contaning all the sprites/sections
|
Image |
ImageBuffer.getImage()
Get an image generated based on this buffer
|
Image |
ImageBuffer.getImage(int filter)
Get an image generated based on this buffer
|
Image |
Animation.getImage(int index)
Get the image assocaited with a given frame index
|
Image |
Image.getScaledCopy(float scale)
Get a scaled copy of this image with a uniform scale
|
Image |
BigImage.getScaledCopy(float scale) |
Image |
Image.getScaledCopy(int width,
int height)
Get a scaled copy of this image
|
Image |
BigImage.getScaledCopy(int width,
int height) |
Image |
SpriteSheet.getSprite(int x,
int y)
Get a sprite at a particular cell on the sprite sheet
|
Image |
XMLPackedSheet.getSprite(java.lang.String name)
Get a sprite by it's given name
|
Image |
PackedSpriteSheet.getSprite(java.lang.String name)
Get a single named sprite from the sheet
|
Image |
SpriteSheet.getSubImage(int x,
int y)
Get the sub image cached in this sprite sheet
|
Image |
BigImage.getSubImage(int offsetX,
int offsetY)
Get a sub-image that builds up this image.
|
Image |
Image.getSubImage(int x,
int y,
int width,
int height)
Get a sub-part of this image.
|
Image |
BigImage.getSubImage(int x,
int y,
int width,
int height) |
Image |
BigImage.getTile(int x,
int y)
Get a sub tile of this big image.
|
| Modifier and Type | Method and Description |
|---|---|
void |
Animation.addFrame(Image frame,
int duration)
Add animation frame to the animation
|
void |
Graphics.copyArea(Image target,
int x,
int y)
Copy an area of the rendered screen into an image.
|
void |
Graphics.drawImage(Image image,
float x,
float y)
Draw an image to the screen
|
void |
Graphics.drawImage(Image image,
float x,
float y,
Color col)
Draw an image to the screen
|
void |
Graphics.drawImage(Image image,
float x,
float y,
float srcx,
float srcy,
float srcx2,
float srcy2)
Draw a section of an image at a particular location and scale on the
screen
|
void |
Graphics.drawImage(Image image,
float x,
float y,
float srcx,
float srcy,
float srcx2,
float srcy2,
Color col)
Draw a section of an image at a particular location and scale on the
screen
|
void |
Graphics.drawImage(Image image,
float x,
float y,
float x2,
float y2,
float srcx,
float srcy,
float srcx2,
float srcy2)
Draw a section of an image at a particular location and scale on the
screen
|
void |
Graphics.drawImage(Image image,
float x,
float y,
float x2,
float y2,
float srcx,
float srcy,
float srcx2,
float srcy2,
Color col)
Draw a section of an image at a particular location and scale on the
screen
|
void |
Graphics.fillRect(float x,
float y,
float width,
float height,
Image pattern,
float offX,
float offY)
Tile a rectangle with a pattern specifing the offset from the top corner
that one tile should match
|
abstract void |
GameContainer.setMouseCursor(Image image,
int hotSpotX,
int hotSpotY)
Set the mouse cursor based on the contents of the image.
|
void |
AppletGameContainer.Container.setMouseCursor(Image image,
int hotSpotX,
int hotSpotY)
Set the mouse cursor based on the contents of the image.
|
void |
AppGameContainer.setMouseCursor(Image image,
int hotSpotX,
int hotSpotY) |
void |
Graphics.texture(Shape shape,
Image image)
Draw the the given shape filled in with a texture
|
void |
Graphics.texture(Shape shape,
Image image,
boolean fit)
Draw the the given shape filled in with a texture
|
void |
Graphics.texture(Shape shape,
Image image,
float scaleX,
float scaleY)
Draw the the given shape filled in with a texture
|
void |
Graphics.texture(Shape shape,
Image image,
float scaleX,
float scaleY,
boolean fit)
Draw the the given shape filled in with a texture
|
void |
Graphics.texture(Shape shape,
Image image,
float scaleX,
float scaleY,
ShapeFill fill)
Draw the the given shape filled in with a texture
|
void |
Graphics.texture(Shape shape,
Image image,
ShapeFill fill)
Draw the the given shape filled in with a texture
|
| Constructor and Description |
|---|
AngelCodeFont(java.lang.String fntFile,
Image image)
Create a new font based on a font definition from AngelCode's tool and
the font image generated from the tool.
|
AngelCodeFont(java.lang.String fntFile,
Image image,
boolean caching)
Create a new font based on a font definition from AngelCode's tool and
the font image generated from the tool.
|
SpriteSheet(Image image,
int tw,
int th)
Create a new sprite sheet based on a image location
|
SpriteSheet(Image image,
int tw,
int th,
int spacing)
Create a new sprite sheet based on a image location
|
SpriteSheet(Image image,
int tw,
int th,
int spacing,
int margin)
Create a new sprite sheet based on a image location
|
| Modifier and Type | Method and Description |
|---|---|
Image |
GlyphPage.getImage()
Returns the backing texture for this page.
|
Image |
Glyph.getImage()
The image to use for this glyph.
|
| Modifier and Type | Method and Description |
|---|---|
void |
Glyph.setImage(Image image)
Set the image that has been generated for this glyph
|
| Modifier and Type | Method and Description |
|---|---|
static void |
ShapeRenderer.texture(Shape shape,
Image image)
Draw the the given shape filled in with a texture.
|
static void |
ShapeRenderer.texture(Shape shape,
Image image,
float scaleX,
float scaleY)
Draw the the given shape filled in with a texture.
|
static void |
ShapeRenderer.texture(Shape shape,
Image image,
float scaleX,
float scaleY,
ShapeFill fill)
Draw the the given shape filled in with a texture.
|
static void |
ShapeRenderer.texture(Shape shape,
Image image,
TexCoordGenerator gen)
Draw the the given shape filled in with a texture.
|
static void |
ShapeRenderer.textureFit(Shape shape,
Image image)
Draw the the given shape filled in with a texture.
|
static void |
ShapeRenderer.textureFit(Shape shape,
Image image,
float scaleX,
float scaleY)
Draw the the given shape filled in with a texture.
|
| Modifier and Type | Method and Description |
|---|---|
void |
MouseOverArea.setMouseDownImage(Image image)
Set the image to be used when the mouse is down the area
|
void |
MouseOverArea.setMouseOverImage(Image image)
Set the image to be used when the mouse is over the area
|
void |
MouseOverArea.setNormalImage(Image image)
Set the normal image used on the image in the default state
|
| Constructor and Description |
|---|
MouseOverArea(GUIContext container,
Image image,
int x,
int y)
Create a new mouse over area
|
MouseOverArea(GUIContext container,
Image image,
int x,
int y,
ComponentListener listener)
Create a new mouse over area
|
MouseOverArea(GUIContext container,
Image image,
int x,
int y,
int width,
int height)
Create a new mouse over area
|
MouseOverArea(GUIContext container,
Image image,
int x,
int y,
int width,
int height,
ComponentListener listener)
Create a new mouse over area
|
MouseOverArea(GUIContext container,
Image image,
Shape shape)
Create a new mouse over area
|
| Modifier and Type | Method and Description |
|---|---|
void |
TGAWriter.saveImage(Image image,
java.lang.String format,
java.io.OutputStream output,
boolean writeAlpha) |
void |
ImageWriter.saveImage(Image image,
java.lang.String format,
java.io.OutputStream out,
boolean writeAlpha)
Save an Image to an given location
|
void |
ImageIOWriter.saveImage(Image image,
java.lang.String format,
java.io.OutputStream output,
boolean hasAlpha) |
static void |
ImageOut.write(Image image,
java.lang.String dest)
Write an image out to a file on the local file system.
|
static void |
ImageOut.write(Image image,
java.lang.String dest,
boolean writeAlpha)
Write an image out to a file on the local file system.
|
static void |
ImageOut.write(Image image,
java.lang.String format,
java.io.OutputStream out)
Write an image out to a specified output stream
|
static void |
ImageOut.write(Image image,
java.lang.String format,
java.io.OutputStream out,
boolean writeAlpha)
Write an image out to a specified output stream
|
static void |
ImageOut.write(Image image,
java.lang.String format,
java.lang.String dest)
Write an image out to a file on the local file system.
|
static void |
ImageOut.write(Image image,
java.lang.String format,
java.lang.String dest,
boolean writeAlpha)
Write an image out to a file on the local file system.
|
| Modifier and Type | Method and Description |
|---|---|
static Graphics |
GraphicsFactory.getGraphicsForImage(Image image)
Get a graphics context for a particular image
|
static void |
GraphicsFactory.releaseGraphicsForImage(Image image)
Release any graphics context that is assocaited with the given image
|
| Constructor and Description |
|---|
FBOGraphics(Image image)
Create a new graphics context around an FBO
|
PBufferGraphics(Image image)
Create a new graphics context around a pbuffer
|
PBufferUniqueGraphics(Image image)
Create a new graphics context around a pbuffer
|
| Modifier and Type | Method and Description |
|---|---|
Image |
ParticleEmitter.getImage()
Get the image to draw for each particle
|
Image |
ConfigurableEmitter.getImage() |
| Modifier and Type | Method and Description |
|---|---|
void |
Particle.setImage(Image image)
Set the image used to render this particle
|
| Constructor and Description |
|---|
ParticleSystem(Image defaultSprite)
Create a new particle system
|
ParticleSystem(Image defaultSprite,
int maxParticles)
Create a new particle system
|
| Modifier and Type | Method and Description |
|---|---|
Image |
FireEmitter.getImage() |
| Modifier and Type | Method and Description |
|---|---|
Image |
Gradient.getImage()
Get the image generated for this gradient
|
| Modifier and Type | Method and Description |
|---|---|
Image |
TiledMap.getTileImage(int x,
int y,
int layerIndex)
Gets the Image used to draw the tile at the given x and y coordinates.
|
| Modifier and Type | Method and Description |
|---|---|
void |
TileSet.setTileSetImage(Image image)
Set the image to use for this sprite sheet image to use for this tileset
|
| Constructor and Description |
|---|
LocatedImage(Image image,
int x,
int y)
Create a new located image
|


public interface EDTUtil
EDTUtil comprises the functionality of:
| Modifier and Type | Field and Description |
|---|---|
static long |
defaultEDTPollPeriod |
| Modifier and Type | Method and Description |
|---|---|
long |
getPollPeriod() |
boolean |
invoke(boolean wait,
Runnable task)
Appends task to the EDT task queue if current thread is not EDT,
otherwise execute task immediately.
|
boolean |
invokeStop(boolean wait,
Runnable finalTask)
Append the final task to the EDT task queue,
signals EDT to stop.
|
boolean |
isCurrentThreadEDT()
Returns true if the current thread is the event dispatch thread (EDT).
|
boolean |
isCurrentThreadEDTorNEDT()
|
boolean |
isCurrentThreadNEDT()
Returns true if the current thread is the internal NEWT event dequeue thread (NEDT).
|
boolean |
isRunning() |
void |
setPollPeriod(long ms) |
void |
start()
Starts the EDT after it's creation or after
stopping . |
boolean |
waitUntilIdle()
Wait until the EDT task queue is empty.
The last task may still be in execution when this method returns. |
boolean |
waitUntilStopped()
Wait until EDT task is stopped.
No stop action is performed, invokeStop(boolean, java.lang.Runnable) should be used before. |
static final long defaultEDTPollPeriod
long getPollPeriod()
void setPollPeriod(long ms)
ms
- poll period in millisecondsvoid start() throws IllegalStateException
stopping
.
If the EDT is running, it must be stopped
first
and the caller should wait until it's stopped
.
IllegalStateException
- if EDT is running and not subject to be stopped, i.e. isRunning()
returns trueRuntimeException
- if EDT could not be startedinvokeStop(boolean, java.lang.Runnable)
,
waitUntilStopped()
boolean isCurrentThreadEDT()
The EDT is the platform specific thread dispatching toolkit-events
and executing toolkit-tasks enqueued via invoke(boolean, Runnable)
.
Usually it is the same thread as used to dequeue informal NEWTEvent
s (NEDT), see isCurrentThreadNEDT()
,
however, this may differ, e.g. SWT and AWT implementation.
boolean isCurrentThreadNEDT()
The NEDT is the NEWT thread used to dequeue informal NEWTEvent
s enqueued internally
via DisplayImpl.enqueueEvent(boolean, NEWTEvent)
.
Usually it is the same thread as the EDT, see isCurrentThreadEDT()
,
however, this may differ, e.g. SWT and AWT implementation.
boolean isCurrentThreadEDTorNEDT()
boolean isRunning()
boolean invokeStop(boolean wait, Runnable finalTask)
If wait
is true
methods
blocks until EDT is stopped.
task
maybe null
Due to the nature of this method:
start()
may follow immediately, ie creating a new EDTtask
has been executed or queued for later execution, otherwise falseboolean invoke(boolean wait, Runnable task)
Wait until execution is finished if wait == true
.
task
has been executed or queued for later execution, otherwise falseboolean waitUntilIdle()
boolean waitUntilStopped()
stop
action is performed, invokeStop(boolean, java.lang.Runnable)
should be used before.
If caller thread is EDT or NEDT, this call will not block.
Copyright 2010 JogAmp Community.