Class Platform
- java.lang.Object
-
- jogamp.common.os.PlatformPropsImpl
-
- 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 informationgetMachineDataInfo()
,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
Nested Classes Modifier and Type Class Description static class
Platform.ABIType
static class
Platform.CPUFamily
static class
Platform.CPUType
static class
Platform.OSType
-
Field Summary
Fields Modifier and Type Field Description static boolean
AWT_AVAILABLE
true
if AWT is available and not in headless mode, otherwisefalse
.static boolean
USE_TEMP_JAR_CACHE
System property: 'jogamp.gluegen.UseTempJarCache', defaults to true ifPlatformPropsImpl.OS_TYPE
is notPlatform.OSType.ANDROID
.-
Fields inherited from class jogamp.common.os.PlatformPropsImpl
ABI_TYPE, ARCH, ARCH_lower, CPU_ARCH, JAVA_17, JAVA_21, JAVA_6, JAVA_9, JAVA_RUNTIME_NAME, JAVA_SE, JAVA_VENDOR, JAVA_VENDOR_URL, JAVA_VERSION, JAVA_VERSION_NUMBER, JAVA_VERSION_UPDATE, JAVA_VM_NAME, LITTLE_ENDIAN, NEWLINE, OS, os_and_arch, OS_lower, OS_TYPE, OS_VERSION, OS_VERSION_NUMBER, useDynamicLibraries
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static long
currentTimeMillis()
Returns the unix based current time in milliseconds, seeClock.currentTimeMillis()
.static Platform.ABIType
getABIType()
Returns the ABI type.static String
getArchName()
Returns the CPU architecture String.static Platform.CPUFamily
getCPUFamily()
Returns the CPU family.static Platform.CPUType
getCPUType()
Returns the CPU architecture type.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 MachineDataInfo
getMachineDataInfo()
Returns the MachineDataInfo 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 loadingstatic boolean
is32Bit()
Returns true if this JVM/ARCH is 32bit.static boolean
is64Bit()
Returns true if this JVM/ARCH is 64bit.static boolean
isAWTAvailable()
Returnstrue
if AWT is available and not in headless mode, otherwisefalse
.static boolean
isLittleEndian()
Returns true if this machine is little endian, otherwise false.static boolean
isRunningFromJarURL()
-
-
-
Field Detail
-
USE_TEMP_JAR_CACHE
public static final boolean USE_TEMP_JAR_CACHE
System property: 'jogamp.gluegen.UseTempJarCache', defaults to true ifPlatformPropsImpl.OS_TYPE
is notPlatform.OSType.ANDROID
.
-
AWT_AVAILABLE
public static final boolean AWT_AVAILABLE
true
if AWT is available and not in headless mode, otherwisefalse
.
-
-
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
-
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
, seegetOSType()
, 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
theOS name
, is Linux
-
getCPUFamily
public static Platform.CPUFamily getCPUFamily()
Returns the CPU family.
-
getCPUType
public static Platform.CPUType getCPUType()
Returns the CPU architecture type.
-
is32Bit
public static boolean is32Bit()
Returns true if this JVM/ARCH is 32bit.Shortcut to
getCPUType()
.is32Bit
-
is64Bit
public static boolean is64Bit()
Returns true if this JVM/ARCH is 64bit.Shortcut to !
getCPUType()
.is32Bit
-
getABIType
public static Platform.ABIType getABIType()
Returns the ABI type.In case of
Platform.CPUFamily.ARM
, the value is determined by parsing the Elf Headers of the running VM.Otherwise the value is
Platform.ABIType.GENERIC_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.
-
getMachineDataInfo
public static MachineDataInfo getMachineDataInfo()
Returns the MachineDataInfo of the running machine.
-
isAWTAvailable
public static boolean isAWTAvailable()
Returnstrue
if AWT is available and not in headless mode, otherwisefalse
.
-
currentTimeMillis
public static long currentTimeMillis()
Returns the unix based current time in milliseconds, seeClock.currentTimeMillis()
.- See Also:
Clock.currentTimeMillis()
-
getCurrentSleepJitter
public static long getCurrentSleepJitter()
Returns the estimated sleep jitter value in nanoseconds.Includes a warm-up path, allowing hotspot to optimize the code.
-
-