View Javadoc

1   package net.sf.josceleton.core.api.entity.joint;
2   
3   import net.sf.josceleton.core.api.entity.Coordinate;
4   
5   /**
6    * @since 0.4
7    */
8   public interface Skeleton {
9   
10  	/**
11  	 * <font style="font-weight:bold;color:red;">ATTENTION:</font> This method might return <code>null</code>!
12  	 * 
13  	 * @param joint of which to get the most recent coordinate
14  	 * @return recent position of given <code>joint</code>, or </code>null</code> if none yet available
15  	 * @since 0.4
16  	 */
17  	Coordinate get(Joint joint);
18  	
19  	/**
20  	 * Safely get a coordinate, ensuring the return value is not null but throwing an exception instead.
21  	 * 
22  	 * @param joint of which to get the most recent coordinate
23  	 * @return recent position of given <code>joint</code>
24  	 * @throws SkeletonCoordinateUnavailableException if no joint data was yet received for this joint
25  	 * @since 0.4
26  	 * @see #get(Joint)
27  	 */
28  	Coordinate getNullSafe(Joint joint);
29  	
30  	/**
31  	 * 
32  	 * @param joint
33  	 * @return
34  	 * @since 0.4
35  	 */
36  	boolean isCoordinateAvailable(Joint joint);
37  	
38  }