ObjFW
Class Methods | List of all members
OFSystemInfo Class Reference

A class for querying information about the system. More...

#import <ObjFW/OFSystemInfo.h>

Inheritance diagram for OFSystemInfo:
Inheritance graph
[legend]
Collaboration diagram for OFSystemInfo:
Collaboration graph
[legend]

Class Methods

(size_t) + pageSize
 Returns the size of a page. More...
 
(size_t) + numberOfCPUs
 Returns the number of CPUs installed in the system. More...
 
(OFString *) + ObjFWVersion
 The version of ObjFW. More...
 
(unsigned int) + ObjFWVersionMajor
 The major version of ObjFW. More...
 
(unsigned int) + ObjFWVersionMinor
 The minor version of ObjFW. More...
 
(nullable OFString *) + operatingSystemName
 Returns the name of the operating system the application is running on. More...
 
(nullable OFString *) + operatingSystemVersion
 Returns the version of the operating system the application is running on. More...
 
(nullable OFString *) + userDataPath
 Returns the path where user data for the application can be stored. More...
 
(nullable OFString *) + userConfigPath
 Returns the path where user configuration for the application can be stored. More...
 
(nullable OFString *) + CPUVendor
 Returns the vendor of the CPU. More...
 
(nullable OFString *) + CPUModel
 Returns the model of the CPU. More...
 
(bool) + supportsMMX
 Returns whether the CPU supports MMX. More...
 
(bool) + supportsSSE
 Returns whether the CPU supports SSE. More...
 
(bool) + supportsSSE2
 Returns whether the CPU supports SSE2. More...
 
(bool) + supportsSSE3
 Returns whether the CPU supports SSE3. More...
 
(bool) + supportsSSSE3
 Returns whether the CPU supports SSSE3. More...
 
(bool) + supportsSSE41
 Returns whether the CPU supports SSE4.1. More...
 
(bool) + supportsSSE42
 Returns whether the CPU supports SSE4.2. More...
 
(bool) + supportsAVX
 Returns whether the CPU supports AVX. More...
 
(bool) + supportsAVX2
 Returns whether the CPU supports AVX2. More...
 
(bool) + supportsAESNI
 Returns whether the CPU supports AES-NI. More...
 
(bool) + supportsSHAExtensions
 Returns whether the CPU supports Intel SHA Extensions. More...
 
- Class Methods inherited from OFObject
(void) + load
 A method which is called once when the class is loaded into the runtime. More...
 
(void) + unload
 A method which is called when the class is unloaded from the runtime. More...
 
(void) + initialize
 A method which is called the moment before the first call to the class is being made. More...
 
(instancetype) + alloc
 Allocates memory for an instance of the class and sets up the memory pool for the object. More...
 
(instancetype) + new
 Calls alloc on self and then init on the returned object. More...
 
(Class+ class
 Returns the class. More...
 
(OFString *) + className
 Returns the name of the class as a string. More...
 
(bool) + isSubclassOfClass:
 Returns a boolean whether the class is a subclass of the specified class. More...
 
(nullable Class+ superclass
 Returns the superclass of the class. More...
 
(bool) + instancesRespondToSelector:
 Checks whether instances of the class respond to a given selector. More...
 
(bool) + conformsToProtocol:
 Checks whether the class conforms to a given protocol. More...
 
(nullable IMP+ instanceMethodForSelector:
 Returns the implementation of the instance method for the specified selector. More...
 
(nullable OFMethodSignature *) + instanceMethodSignatureForSelector:
 Returns the method signature of the instance method for the specified selector. More...
 
(OFString *) + description
 Returns a description for the class, which is usually the class name. More...
 
(nullable IMP+ replaceClassMethod:withMethodFromClass:
 Replaces a class method with a class method from another class. More...
 
(nullable IMP+ replaceInstanceMethod:withMethodFromClass:
 Replaces an instance method with an instance method from another class. More...
 
(void) + inheritMethodsFromClass:
 Adds all methods from the specified class to the class that is the receiver. More...
 
(bool) + resolveClassMethod:
 Try to resolve the specified class method. More...
 
(bool) + resolveInstanceMethod:
 Try to resolve the specified instance method. More...
 
(id+ copy
 Returns the class. More...
 

Additional Inherited Members

- Instance Methods inherited from OFObject
(instancetype) - init
 Initializes an already allocated object. More...
 
(nullable OFMethodSignature *) - methodSignatureForSelector:
 Returns the method signature for the specified selector. More...
 
(void) - dealloc
 Deallocates the object. More...
 
(void) - performSelector:afterDelay:
 Performs the specified selector after the specified delay. More...
 
(void) - performSelector:withObject:afterDelay:
 Performs the specified selector with the specified object after the specified delay. More...
 
(void) - performSelector:withObject:withObject:afterDelay:
 Performs the specified selector with the specified objects after the specified delay. More...
 
(void) - performSelector:withObject:withObject:withObject:afterDelay:
 Performs the specified selector with the specified objects after the specified delay. More...
 
(void) - performSelector:withObject:withObject:withObject:withObject:afterDelay:
 Performs the specified selector with the specified objects after the specified delay. More...
 
(void) - performSelector:onThread:waitUntilDone:
 Performs the specified selector on the specified thread. More...
 
(void) - performSelector:onThread:withObject:waitUntilDone:
 Performs the specified selector on the specified thread with the specified object. More...
 
(void) - performSelector:onThread:withObject:withObject:waitUntilDone:
 Performs the specified selector on the specified thread with the specified objects. More...
 
(void) - performSelector:onThread:withObject:withObject:withObject:waitUntilDone:
 Performs the specified selector on the specified thread with the specified objects. More...
 
(void) - performSelector:onThread:withObject:withObject:withObject:withObject:waitUntilDone:
 Performs the specified selector on the specified thread with the specified objects. More...
 
(void) - performSelectorOnMainThread:waitUntilDone:
 Performs the specified selector on the main thread. More...
 
(void) - performSelectorOnMainThread:withObject:waitUntilDone:
 Performs the specified selector on the main thread with the specified object. More...
 
(void) - performSelectorOnMainThread:withObject:withObject:waitUntilDone:
 Performs the specified selector on the main thread with the specified objects. More...
 
(void) - performSelectorOnMainThread:withObject:withObject:withObject:waitUntilDone:
 Performs the specified selector on the main thread with the specified objects. More...
 
(void) - performSelectorOnMainThread:withObject:withObject:withObject:withObject:waitUntilDone:
 Performs the specified selector on the main thread with the specified objects. More...
 
(void) - performSelector:onThread:afterDelay:
 Performs the specified selector on the specified thread after the specified delay. More...
 
(void) - performSelector:onThread:withObject:afterDelay:
 Performs the specified selector on the specified thread with the specified object after the specified delay. More...
 
(void) - performSelector:onThread:withObject:withObject:afterDelay:
 Performs the specified selector on the specified thread with the specified objects after the specified delay. More...
 
(void) - performSelector:onThread:withObject:withObject:withObject:afterDelay:
 Performs the specified selector on the specified thread with the specified objects after the specified delay. More...
 
(void) - performSelector:onThread:withObject:withObject:withObject:withObject:afterDelay:
 Performs the specified selector on the specified thread with the specified objects after the specified delay. More...
 
(nullable id- forwardingTargetForSelector:
 This method is called when resolveClassMethod: or resolveInstanceMethod: returned false. It should return a target to which the message should be forwarded. More...
 
(void) - doesNotRecognizeSelector:
 Handles messages which are not understood by the receiver. More...
 
- Instance Methods inherited from <OFObject>
(unsigned long) - hash
 Returns a 32 bit hash for the object. More...
 
(unsigned int) - retainCount
 Returns the retain count. More...
 
(bool) - isProxy
 Returns whether the object is a proxy object. More...
 
(bool) - allowsWeakReference
 Returns whether the object allows weak references. More...
 
(bool) - isKindOfClass:
 Returns a boolean whether the object of the specified kind. More...
 
(bool) - isMemberOfClass:
 Returns a boolean whether the object is a member of the specified class. More...
 
(bool) - respondsToSelector:
 Returns a boolean whether the object responds to the specified selector. More...
 
(nullable IMP- methodForSelector:
 Returns the implementation for the specified selector. More...
 
(nullable id- performSelector:
 Performs the specified selector. More...
 
(nullable id- performSelector:withObject:
 Performs the specified selector with the specified object. More...
 
(nullable id- performSelector:withObject:withObject:
 Performs the specified selector with the specified objects. More...
 
(nullable id- performSelector:withObject:withObject:withObject:
 Performs the specified selector with the specified objects. More...
 
(nullable id- performSelector:withObject:withObject:withObject:withObject:
 Performs the specified selector with the specified objects. More...
 
(bool) - isEqual:
 Checks two objects for equality. More...
 
(instancetype) - retain
 Increases the retain count. More...
 
(void) - release
 Decreases the retain count. More...
 
(instancetype) - autorelease
 Adds the object to the topmost autorelease pool of the thread's autorelease pool stack. More...
 
(instancetype) - self
 Returns the receiver. More...
 
(bool) - retainWeakReference
 Retain a weak reference to this object. More...
 
- Properties inherited from OFObject
OFStringclassName
 The name of the object's class.
 
OFStringdescription
 A description for the object. More...
 
OFStringstringBySerializing
 The object serialized as a string.
 

Detailed Description

A class for querying information about the system.

Method Documentation

◆ CPUModel

+ (OFString *) CPUModel

Returns the model of the CPU.

If the model could not be determined, nil is returned instead.

Returns
The model of the CPU

◆ CPUVendor

+ (OFString *) CPUVendor

Returns the vendor of the CPU.

If the vendor could not be determined, nil is returned instead.

Returns
The vendor of the CPU

◆ numberOfCPUs

+ (size_t) numberOfCPUs

Returns the number of CPUs installed in the system.

A CPU with multiple cores counts as multiple CPUs.

Returns
The number of CPUs installed in the system

◆ ObjFWVersion

+ (OFString *) ObjFWVersion

The version of ObjFW.

Returns
The version of ObjFW

◆ ObjFWVersionMajor

+ (unsigned int) ObjFWVersionMajor

The major version of ObjFW.

Returns
The major version of ObjFW

◆ ObjFWVersionMinor

+ (unsigned int) ObjFWVersionMinor

The minor version of ObjFW.

Returns
The minor version of ObjFW

◆ operatingSystemName

+ (OFString *) operatingSystemName

Returns the name of the operating system the application is running on.

Returns
The name of the operating system the application is running on

◆ operatingSystemVersion

+ (OFString *) operatingSystemVersion

Returns the version of the operating system the application is running on.

Returns
The version of the operating system the application is running on

◆ pageSize

+ (size_t) pageSize

Returns the size of a page.

Returns
The size of a page

◆ supportsAESNI

+ (bool) supportsAESNI

Returns whether the CPU supports AES-NI.

Note
This method is only available on x86 and x86_64.
Returns
Whether the CPU supports AES-NI

◆ supportsAVX

+ (bool) supportsAVX

Returns whether the CPU supports AVX.

Warning
This method only checks CPU support and assumes OS support!
Note
This method is only available on x86 and x86_64.
Returns
Whether the CPU supports AVX

◆ supportsAVX2

+ (bool) supportsAVX2

Returns whether the CPU supports AVX2.

Warning
This method only checks CPU support and assumes OS support!
Note
This method is only available on x86 and x86_64.
Returns
Whether the CPU supports AVX2

◆ supportsMMX

+ (bool) supportsMMX

Returns whether the CPU supports MMX.

Note
This method is only available on x86 and x86_64.
Returns
Whether the CPU supports MMX

◆ supportsSHAExtensions

+ (bool) supportsSHAExtensions

Returns whether the CPU supports Intel SHA Extensions.

Note
This method is only available on x86 and x86_64.
Returns
Whether the CPU supports Intel SHA Extensions

◆ supportsSSE

+ (bool) supportsSSE

Returns whether the CPU supports SSE.

Warning
This method only checks CPU support and assumes OS support!
Note
This method is only available on x86 and x86_64.
Returns
Whether the CPU supports SSE

◆ supportsSSE2

+ (bool) supportsSSE2

Returns whether the CPU supports SSE2.

Warning
This method only checks CPU support and assumes OS support!
Note
This method is only available on x86 and x86_64.
Returns
Whether the CPU supports SSE2

◆ supportsSSE3

+ (bool) supportsSSE3

Returns whether the CPU supports SSE3.

Warning
This method only checks CPU support and assumes OS support!
Note
This method is only available on x86 and x86_64.
Returns
Whether the CPU supports SSE3

◆ supportsSSE41

+ (bool) supportsSSE41

Returns whether the CPU supports SSE4.1.

Warning
This method only checks CPU support and assumes OS support!
Note
This method is only available on x86 and x86_64.
Returns
Whether the CPU supports SSE4.1

◆ supportsSSE42

+ (bool) supportsSSE42

Returns whether the CPU supports SSE4.2.

Warning
This method only checks CPU support and assumes OS support!
Note
This method is only available on x86 and x86_64.
Returns
Whether the CPU supports SSE4.2

◆ supportsSSSE3

+ (bool) supportsSSSE3

Returns whether the CPU supports SSSE3.

Warning
This method only checks CPU support and assumes OS support!
Note
This method is only available on x86 and x86_64.
Returns
Whether the CPU supports SSSE3

◆ userConfigPath

+ (OFString *) userConfigPath

Returns the path where user configuration for the application can be stored.

On Unix systems, this adheres to the XDG Base Directory specification.
On Mac OS X and iOS, it uses the Preferences directory inside of NSLibraryDirectory directory.
On Windows, it uses the APPDATA environment variable.
On Haiku, it uses the B_USER_SETTINGS_DIRECTORY directory.

Returns
The path where user configuration for the application can be stored

◆ userDataPath

+ (OFString *) userDataPath

Returns the path where user data for the application can be stored.

On Unix systems, this adheres to the XDG Base Directory specification.
On Mac OS X and iOS, it uses the NSApplicationSupportDirectory directory.
On Windows, it uses the APPDATA environment variable.
On Haiku, it uses the B_USER_SETTINGS_DIRECTORY directory.

Returns
The path where user data for the application can be stored

The documentation for this class was generated from the following files: