# Cinder

# cinder::System Class Reference

Queries system software and hardware capabilities of the computer. Values are cached so there is low overhead in calling these functions more than once. More...

`#include <System.h>`

List of all members.

## Static Public Member Functions
static bool | hasSse2 ()
| Returns whether the system supports the SSE2 instruction set.
static bool | hasSse3 ()
| Returns whether the system supports the SSE3 instruction set.
static bool | hasSse4_1 ()
| Returns whether the system supports the SSE4.1 instruction set.
static bool | hasSse4_2 ()
| Returns whether the system supports the SSE4.2 instruction set.
static bool | hasX86_64 ()
| Returns whether the system supports the x86-64 instruction set.
static int | getNumCpus ()
| Returns the number of physical processors in the system. A single processor dual core machine returns 1.
static int | getNumCores ()
| Returns the number of cores (or logical processors) in the system. A single processor dual core machine returns 2.
static int | getOsMajorVersion ()
static int | getOsMinorVersion ()
static int | getOsBugFixVersion ()

## Detailed Description

Queries system software and hardware capabilities of the computer. Values are cached so there is low overhead in calling these functions more than once.

## Member Function Documentation

bool cinder::System::hasSse2 | ( |  | ) | `[static]`

Returns whether the system supports the SSE2 instruction set.

bool cinder::System::hasSse3 | ( |  | ) | `[static]`

Returns whether the system supports the SSE3 instruction set.

bool cinder::System::hasSse4_1 | ( |  | ) | `[static]`

Returns whether the system supports the SSE4.1 instruction set.

bool cinder::System::hasSse4_2 | ( |  | ) | `[static]`

Returns whether the system supports the SSE4.2 instruction set.

bool cinder::System::hasX86_64 | ( |  | ) | `[static]`

Returns whether the system supports the x86-64 instruction set.

int cinder::System::getNumCpus | ( |  | ) | `[static]`

Returns the number of physical processors in the system. A single processor dual core machine returns 1.

int cinder::System::getNumCores | ( |  | ) | `[static]`

Returns the number of cores (or logical processors) in the system. A single processor dual core machine returns 2.

int cinder::System::getOsMajorVersion | ( |  | ) | `[static]`

Returns the major version of the operating system. For version `10.5.8`, this is `10`. For Windows Vista this is 6. Refer to the MSDN documentation for the `OSVERSIONINFOEX` struct for Windows meanings

int cinder::System::getOsMinorVersion | ( |  | ) | `[static]`

Returns the minor version of the operating system. For version `10.5.8`, this is `5`. For Windows Vista this is 0. Refer to the MSDN documentation for the `OSVERSIONINFOEX` struct for Windows meanings

int cinder::System::getOsBugFixVersion | ( |  | ) | `[static]`

Returns the bugfix version of the operating system. For version `10.5.8`, this is `8`. For Windows this corresponds to the major version of the service pack. So `Service` Pack 2 returns `2`

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

- include/cinder/System.h
- src/cinder/System.cpp