aboutsummaryrefslogtreecommitdiffstats
path: root/LibOVR/Src/Kernel/OVR_System.cpp
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2015-03-28 01:43:35 +0100
committerSven Gothel <[email protected]>2015-03-28 01:43:35 +0100
commit4207f9c279e832e3afcb3f5fc6cd8d84cb4cfe4c (patch)
treecf3671058d55b47ab6cb6f36f369928606137628 /LibOVR/Src/Kernel/OVR_System.cpp
parentc29cd1a2fbff6282bab956ad61661ac9d48c4e6e (diff)
Bump OculusVR RIFT SDK to 0.5.0.1vanilla_0.5.0.1
Diffstat (limited to 'LibOVR/Src/Kernel/OVR_System.cpp')
-rw-r--r--LibOVR/Src/Kernel/OVR_System.cpp149
1 files changed, 0 insertions, 149 deletions
diff --git a/LibOVR/Src/Kernel/OVR_System.cpp b/LibOVR/Src/Kernel/OVR_System.cpp
deleted file mode 100644
index 66c764a..0000000
--- a/LibOVR/Src/Kernel/OVR_System.cpp
+++ /dev/null
@@ -1,149 +0,0 @@
-/************************************************************************************
-
-Filename : OVR_System.cpp
-Content : General kernel initialization/cleanup, including that
- of the memory allocator.
-Created : September 19, 2012
-Notes :
-
-Copyright : Copyright 2014 Oculus VR, LLC All Rights reserved.
-
-Licensed under the Oculus VR Rift SDK License Version 3.2 (the "License");
-you may not use the Oculus VR Rift SDK except in compliance with the License,
-which is provided at the time of installation or download, or which
-otherwise accompanies this software in either electronic or hard copy form.
-
-You may obtain a copy of the License at
-
-http://www.oculusvr.com/licenses/LICENSE-3.2
-
-Unless required by applicable law or agreed to in writing, the Oculus VR SDK
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
-************************************************************************************/
-
-#include "OVR_System.h"
-#include "OVR_Threads.h"
-#include "OVR_Timer.h"
-#include "../Displays/OVR_Display.h"
-#ifdef OVR_OS_WIN32
-#include "../Displays/OVR_Win32_ShimFunctions.h"
-#endif
-
-namespace OVR {
-
-#ifdef OVR_OS_WIN32
-extern bool anyRiftsInExtendedMode();
-#endif
-
-// Stack of destroy listeners (push/pop semantics)
-static SystemSingletonInternal *SystemShutdownListenerStack = 0;
-static Lock stackLock;
-static bool DisplayShimInitialized = false;
-
-void SystemSingletonInternal::PushDestroyCallbacks()
-{
- Lock::Locker locker(&stackLock);
-
- // Push listener onto the stack
- NextSingleton = SystemShutdownListenerStack;
- SystemShutdownListenerStack = this;
-}
-
-void System::DirectDisplayInitialize()
-{
-#ifdef OVR_OS_WIN32
- // Set up display code for Windows
- Win32::DisplayShim::GetInstance();
-
- // This code will look for the first display. If it's a display
- // that's extending the destkop, the code will assume we're in
- // compatibility mode. Compatibility mode prevents shim loading
- // and renders only to extended Rifts.
- // If we find a display and it's application exclusive,
- // we load the shim so we can render to it.
- // If no display is available, we revert to whatever the
- // driver tells us we're in
-
- bool anyExtendedRifts = anyRiftsInExtendedMode() || Display::InCompatibilityMode( false );
-
- DisplayShimInitialized = Win32::DisplayShim::GetInstance().Initialize(anyExtendedRifts);
-#endif
-}
-
-bool System::DirectDisplayEnabled()
-{
- return DisplayShimInitialized;
-}
-
-// Initializes System core, installing allocator.
-void System::Init(Log* log, Allocator *palloc)
-{
- if (!Allocator::GetInstance())
- {
- Log::SetGlobalLog(log);
- Timer::initializeTimerSystem();
- Allocator::setInstance(palloc);
- Display::Initialize();
- DirectDisplayInitialize();
- }
- else
- {
- OVR_DEBUG_LOG(("System::Init failed - duplicate call."));
- }
-}
-
-void System::Destroy()
-{
- if (Allocator::GetInstance())
- {
-#ifdef OVR_OS_WIN32
- Win32::DisplayShim::GetInstance().Shutdown();
-#endif
-
- // Invoke all of the post-finish callbacks (normal case)
- for (SystemSingletonInternal *listener = SystemShutdownListenerStack; listener; listener = listener->NextSingleton)
- {
- listener->OnThreadDestroy();
- }
-
-#ifdef OVR_ENABLE_THREADS
- // Wait for all threads to finish; this must be done so that memory
- // allocator and all destructors finalize correctly.
- Thread::FinishAllThreads();
-#endif
-
- // Invoke all of the post-finish callbacks (normal case)
- for (SystemSingletonInternal *next, *listener = SystemShutdownListenerStack; listener; listener = next)
- {
- next = listener->NextSingleton;
-
- listener->OnSystemDestroy();
- }
-
- SystemShutdownListenerStack = 0;
-
- // Shutdown heap and destroy SysAlloc singleton, if any.
- Allocator::GetInstance()->onSystemShutdown();
- Allocator::setInstance(0);
-
- Timer::shutdownTimerSystem();
- Log::SetGlobalLog(Log::GetDefaultLog());
- }
- else
- {
- OVR_DEBUG_LOG(("System::Destroy failed - System not initialized."));
- }
-}
-
-// Returns 'true' if system was properly initialized.
-bool System::IsInitialized()
-{
- return Allocator::GetInstance() != 0;
-}
-
-
-} // namespace OVR