Ros.java
Go to the documentation of this file.
00001 /*
00002  * Software License Agreement (BSD License)
00003  *
00004  *  Copyright (c) 2008, Willow Garage, Inc.
00005  *  All rights reserved.
00006  *
00007  *  Redistribution and use in source and binary forms, with or without
00008  *  modification, are permitted provided that the following conditions
00009  *  are met:
00010  *
00011  *   * Redistributions of source code must retain the above copyright
00012  *     notice, this list of conditions and the following disclaimer.
00013  *   * Redistributions in binary form must reproduce the above
00014  *     copyright notice, this list of conditions and the following
00015  *     disclaimer in the documentation and/or other materials provided
00016  *     with the distribution.
00017  *   * Neither the name of Willow Garage, Inc. nor the names of its
00018  *     contributors may be used to endorse or promote products derived
00019  *     from this software without specific prior written permission.
00020  *
00021  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
00022  *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
00023  *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
00024  *  FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
00025  *  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
00026  *  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
00027  *  BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
00028  *  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
00029  *  CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
00030  *  LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
00031  *  ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
00032  *  POSSIBILITY OF SUCH DAMAGE.
00033  */
00034 
00035 // author: Jason Wolfe
00036 
00037 
00038 package ros;
00039 
00040 import java.util.HashMap;
00041 import java.util.Map;
00042 
00043 import ros.communication.Time;
00044 import ros.roscpp.RosCpp;
00045 
00046 // Interface type to make handling multiple implementations easier
00047 public abstract class Ros {
00048     private static class SingletonHolder { 
00049       private static final Ros instance = RosCpp.getInstance();
00050     }
00051     
00052     public static Ros getInstance() {return SingletonHolder.instance; }
00053 
00054     public abstract void init(String name, boolean noSigintHandler, boolean anonymousName, boolean noRosout, String [] args);
00055     public void init(String name) { init(name, false, false, false, new String[0]); }
00056 
00057   public abstract boolean isInitialized();
00058 
00059   public abstract boolean ok();
00060 
00061         public abstract NodeHandle createNodeHandle(String ns, Map<String, String> remappings);
00062 
00063         public abstract Time now();
00064 
00065         public abstract void spin();
00066         
00067         public abstract void spinOnce();
00068 
00069         public abstract void logDebug(String message);
00070         public abstract void logInfo(String message);
00071         public abstract void logWarn(String message);
00072         public abstract void logError(String message);
00073         public abstract void logFatal(String message);
00074         
00075         public abstract String getPackageLocation(String pkgName); 
00076         
00077         // Convenience methods, defined as described in node_handle.h.
00078         
00079         public NodeHandle createNodeHandle() { 
00080                 return createNodeHandle(""); 
00081         }
00082         
00083         public NodeHandle createNodeHandle(String ns) { 
00084                 return createNodeHandle(ns, new HashMap<String, String>()); 
00085         }
00086 
00087         public NodeHandle createNodeHandle(NodeHandle parent, String ns) { 
00088                 return createNodeHandle(parent.getNamespace() + "/" + ns); 
00089         }
00090         
00091         public NodeHandle createNodeHandle(NodeHandle parent, String ns, Map<String, String> remappings) {
00092                 return createNodeHandle(parent.getNamespace() + "/" + ns, remappings);
00093         }       
00094 }


rosjava_jni
Author(s): Jason Wolfe (jawolfe@willowgarage.com), Nicholas Butko (nbutko@cogsci.ucsd.edu), Lorenz Moesenlechner (moesenle@in.tum.de)
autogenerated on Thu Jan 2 2014 11:07:00