JUCE v8.0.9
JUCE API
 
Loading...
Searching...
No Matches
juce::PerScreenDisplayLinks Class Reference

#include <juce_PerScreenDisplayLinks_mac.h>

Collaboration diagram for juce::PerScreenDisplayLinks:

Classes

class  Connection
 

Public Types

using Factory = std::function< RefreshCallback(CGDirectDisplayID)>
 
using RefreshCallback = std::function< void(double)>
 

Public Member Functions

 PerScreenDisplayLinks ()
 
double getNominalVideoRefreshPeriodSForScreen (CGDirectDisplayID display) const
 
Connection registerFactory (Factory factory)
 

Private Member Functions

void refreshScreens ()
 
void unregisterFactory (std::list< Factory >::const_iterator iter)
 

Private Attributes

std::list< Factoryfactories
 
std::list< ScopedDisplayLinklinks
 
CriticalSection mutex
 
FunctionNotificationCenterObserver screenParamsObserver
 

Member Typedef Documentation

◆ Factory

using juce::PerScreenDisplayLinks::Factory = std::function<RefreshCallback (CGDirectDisplayID)>

◆ RefreshCallback

using juce::PerScreenDisplayLinks::RefreshCallback = std::function<void (double)>

Constructor & Destructor Documentation

◆ PerScreenDisplayLinks()

juce::PerScreenDisplayLinks::PerScreenDisplayLinks ( )
inline

References refreshScreens().

Member Function Documentation

◆ getNominalVideoRefreshPeriodSForScreen()

double juce::PerScreenDisplayLinks::getNominalVideoRefreshPeriodSForScreen ( CGDirectDisplayID  display) const
inline

References links, and mutex.

◆ refreshScreens()

void juce::PerScreenDisplayLinks::refreshScreens ( )
inlineprivate

◆ registerFactory()

Connection juce::PerScreenDisplayLinks::registerFactory ( Factory  factory)
inline

References factories, mutex, and refreshScreens().

◆ unregisterFactory()

void juce::PerScreenDisplayLinks::unregisterFactory ( std::list< Factory >::const_iterator  iter)
inlineprivate

Member Data Documentation

◆ factories

std::list<Factory> juce::PerScreenDisplayLinks::factories
private

◆ links

std::list<ScopedDisplayLink> juce::PerScreenDisplayLinks::links
private

◆ mutex

◆ screenParamsObserver

FunctionNotificationCenterObserver juce::PerScreenDisplayLinks::screenParamsObserver
private
Initial value:
{ NSApplicationDidChangeScreenParametersNotification,
nullptr,
[this] { refreshScreens(); } }

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