com.jogamp.common.os
Class Platform

java.lang.Object
  extended by jogamp.common.os.PlatformPropsImpl
      extended by com.jogamp.common.os.Platform

public class Platform
extends jogamp.common.os.PlatformPropsImpl

Utility class for querying platform specific properties.

Some field declarations and it's static initialization has been delegated to it's super class PlatformPropsImpl to solve static initialization interdependencies w/ the GlueGen native library loading and it's derived information getMachineDescription(), is32Bit(), ..
This mechanism is preferred in this case to avoid synchronization and locking and allow better performance accessing the mentioned fields/methods.


Nested Class Summary
static class Platform.ABIType
           
static class Platform.CPUFamily
           
static class Platform.CPUType
           
static class Platform.OSType
           
 
Field Summary
static boolean AWT_AVAILABLE
          true if AWT is available and not in headless mode, otherwise false.
static boolean USE_TEMP_JAR_CACHE
          System property: 'jogamp.gluegen.UseTempJarCache', defaults to true if PlatformPropsImpl.OS_TYPE is not Platform.OSType.ANDROID.
 
Fields inherited from class jogamp.common.os.PlatformPropsImpl
ABI_TYPE, ARCH, ARCH_lower, CPU_ARCH, JAVA_RUNTIME_NAME, JAVA_SE, JAVA_VENDOR, JAVA_VENDOR_URL, JAVA_VERSION, JAVA_VERSION_NUMBER, JAVA_VM_NAME, LITTLE_ENDIAN, NEWLINE, OS, os_and_arch, OS_lower, OS_TYPE, OS_VERSION, OS_VERSION_NUMBER
 
Method Summary
static Platform.ABIType getABIType()
          Returns the (guessed) ABI.
static String getArchName()
          Returns the CPU architecture String.
static Platform.CPUFamily getCPUFamily()
          Returns the CPU type.
static Platform.CPUType getCPUType()
          Returns the CPU architecture.
static long getCurrentSleepJitter()
          Returns the estimated sleep jitter value in nanoseconds.
static String getJavaRuntimeName()
          Returns the JAVA runtime name.
static String getJavaVendor()
          Returns the JAVA vendor.
static String getJavaVendorURL()
          Returns the JAVA vendor url.
static String getJavaVersion()
          Returns the JAVA version.
static VersionNumber getJavaVersionNumber()
          Returns the JAVA version number.
static String getJavaVMName()
          Returns the JAVA VM name.
static MachineDescription getMachineDescription()
          Returns the MachineDescription of the running machine.
static String getNewline()
          Returns the platform's line separator.
static String getOSAndArch()
          Returns the GlueGen common name for the currently running OSType and CPUType as implemented in the build system in 'gluegen-cpptasks-base.xml'.
static String getOSName()
          Returns the OS name.
static Platform.OSType getOSType()
          Returns the OS type.
static String getOSVersion()
          Returns the OS version.
static VersionNumber getOSVersionNumber()
          Returns the OS version number.
static void initSingleton()
          kick off static initialization of platform property information and native gluegen-rt lib loading
static boolean is32Bit()
          Returns true if this JVM/ARCH is 32bit.
static boolean is64Bit()
          Returns true if this JVM/ARCH is 64bit.
static boolean isAWTAvailable()
          Returns true if AWT is available and not in headless mode, otherwise false.
static boolean isJavaSE()
          Returns true only if this program is running on the Java Standard Edition.
static boolean isLittleEndian()
          Returns true if this machine is little endian, otherwise false.
static boolean isRunningFromJarURL()
           
 
Methods inherited from class jogamp.common.os.PlatformPropsImpl
getOSAndArch
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

USE_TEMP_JAR_CACHE

public static final boolean USE_TEMP_JAR_CACHE
System property: 'jogamp.gluegen.UseTempJarCache', defaults to true if PlatformPropsImpl.OS_TYPE is not Platform.OSType.ANDROID.


AWT_AVAILABLE

public static final boolean AWT_AVAILABLE
true if AWT is available and not in headless mode, otherwise false.

Method Detail

isRunningFromJarURL

public static final boolean isRunningFromJarURL()
Returns:
true if we're running from a Jar URL, otherwise false

initSingleton

public static void initSingleton()
kick off static initialization of platform property information and native gluegen-rt lib loading


isJavaSE

public static boolean isJavaSE()
Returns true only if this program is running on the Java Standard Edition.


isLittleEndian

public static boolean isLittleEndian()
Returns true if this machine is little endian, otherwise false.


getOSName

public static String getOSName()
Returns the OS name.

In case of Platform.OSType.ANDROID, see getOSType(), the OS name is Linux


getOSVersion

public static String getOSVersion()
Returns the OS version.


getOSVersionNumber

public static VersionNumber getOSVersionNumber()
Returns the OS version number.


getArchName

public static String getArchName()
Returns the CPU architecture String.


getOSType

public static Platform.OSType getOSType()
Returns the OS type.

In case of Platform.OSType.ANDROID the OS name, see getOSName(), is Linux


getCPUFamily

public static Platform.CPUFamily getCPUFamily()
Returns the CPU type.


getCPUType

public static Platform.CPUType getCPUType()
Returns the CPU architecture.


getABIType

public static Platform.ABIType getABIType()
Returns the (guessed) ABI.


getOSAndArch

public static String getOSAndArch()
Returns the GlueGen common name for the currently running OSType and CPUType as implemented in the build system in 'gluegen-cpptasks-base.xml'.

See Also:
#getOSAndArch(OSType, CPUType)

getJavaVendor

public static String getJavaVendor()
Returns the JAVA vendor.


getJavaVMName

public static String getJavaVMName()
Returns the JAVA VM name.


getJavaRuntimeName

public static String getJavaRuntimeName()
Returns the JAVA runtime name.


getJavaVendorURL

public static String getJavaVendorURL()
Returns the JAVA vendor url.


getJavaVersion

public static String getJavaVersion()
Returns the JAVA version.


getJavaVersionNumber

public static VersionNumber getJavaVersionNumber()
Returns the JAVA version number.


getNewline

public static String getNewline()
Returns the platform's line separator.


is32Bit

public static boolean is32Bit()
Returns true if this JVM/ARCH is 32bit.

Shortcut to getMachineDescription().is32Bit()


is64Bit

public static boolean is64Bit()
Returns true if this JVM/ARCH is 64bit.

Shortcut to getMachineDescription().is64Bit()


getMachineDescription

public static MachineDescription getMachineDescription()
Returns the MachineDescription of the running machine.


isAWTAvailable

public static boolean isAWTAvailable()
Returns true if AWT is available and not in headless mode, otherwise false.


getCurrentSleepJitter

public static long getCurrentSleepJitter()
Returns the estimated sleep jitter value in nanoseconds.

Includes a warm-up path, allowing hotspot to optimize the code.