4class CLASS_DECL_AURA osdisplay_data
13 Atom m_atomLongStyleEx;
15 Atom m_atomNetWmState;
16 Atom m_atomaNetWmState[net_wm_state_count];
17 iptr m_countReference;
22 static ::pointer< ::mutex > s_pmutex;
29 return ::is_null(
this) ? nullptr : m_pdisplay;
32 Display * display()
const
34 return ::is_null(
this) ? nullptr : m_pdisplay;
39 return ::is_null(
this) ? 0 : m_atomLongType;
42 Atom atom_long_style()
44 return ::is_null(
this) ? 0 : m_atomLongStyle;
47 Atom atom_long_style_ex()
49 return ::is_null(
this) ? 0 : m_atomLongStyleEx;
54 return ::is_null(
this);
57 Atom get_window_long_atom(::i32 nIndex);
60 Atom intern_atom(const ::scoped_string & scopedstrAtomName,
bool bCreate);
62 Atom intern_atom(e_net_wm_state estate,
bool bCreate);
64 Atom net_wm_state_atom(
bool bCreate);
69 inline ::i64 get_ref_count()
72 return m_countReference;
77 inline ::i64 increment_reference_count()
82 return InterlockedIncrement64(&m_countReference);
84#elif defined(RASPBERRYPIOS) && defined(OS32BIT)
86 return __sync_add_and_fetch_4(&m_countReference,1);
90 return __sync_add_and_fetch(&m_countReference,1);
97 inline ::i64 decrement_reference_count()
102 return InterlockedDecrement64(&m_countReference);
104#elif defined(RASPBERRYPIOS) && defined(OS32BIT)
106 return __sync_sub_and_fetch_4(&m_countReference,1);
110 return __sync_sub_and_fetch(&m_countReference,1);
117 inline ::i64 release()
120 ::i64 i = decrement_reference_count();
125 osdisplay_erase(m_pdisplay);
134 Window default_root_window();