Changeset 50523 in vbox for trunk/src/VBox/Additions/common/VBoxGuest/VBoxGuestInternal.h
- Timestamp:
- Feb 20, 2014 12:00:58 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/common/VBoxGuest/VBoxGuestInternal.h
r50391 r50523 158 158 /** Spinlock various items in the VBOXGUESTSESSION. */ 159 159 RTSPINLOCK SessionSpinlock; 160 /** List of guest sessions (VBOXGUESTSESSION). We currently traverse this 161 * but do not search it, so a list data type should be fine. Use under the 162 * #SessionSpinlock lock. */ 163 RTLISTANCHOR SessionList; 160 164 #ifdef VBOX_WITH_VRDP_SESSION_HANDLING 161 165 bool fVRDPEnabled; … … 166 170 /** Memory balloon information for RTR0MemObjAllocPhysNC(). */ 167 171 VBOXGUESTMEMBALLOON MemBalloon; 168 /** For each mouse status feature the number of sessions which have169 * enabled it. A feature is enabled globally if at least one session has170 * requested it. */171 /** @todo can we programmatically determine the size of the array and172 * still get the following alignment right? */173 uint32_t volatile acMouseFeatureUsage[32];174 /** The mouse feature status matching the counts above. These are updated175 * together inside the session spinlock. */176 uint32_t volatile fMouseStatus;177 172 /** Counter of number of active ISRs. Currently used for safely removing 178 173 * the mouse handler callback. */ … … 204 199 typedef struct VBOXGUESTSESSION 205 200 { 201 /** The list node. */ 202 RTLISTNODE ListNode; 206 203 #if defined(RT_OS_DARWIN) || defined(RT_OS_FREEBSD) || defined(RT_OS_OS2) || defined(RT_OS_SOLARIS) 207 204 /** Pointer to the next session with the same hash. */ … … 230 227 * Used to implement polling. */ 231 228 uint32_t volatile u32MousePosChangedSeq; 229 /** VMMDev events requested. An event type requested in any guest session 230 * will be added to the host filter. 231 * Use under the VBOXGUESTDEVEXT#SessionSpinlock lock. */ 232 uint32_t fFilterMask; 233 /** Capabilities supported. A capability enabled in any guest session will 234 * be enabled for the host. 235 * Use under the VBOXGUESTDEVEXT#SessionSpinlock lock. */ 236 uint32_t fCapabilities; 232 237 /** Mouse features supported. A feature enabled in any guest session will 233 * be enabled for the host. */ 234 uint32_t volatile fMouseStatus; 238 * be enabled for the host. 239 * @note We invert the VMMDEV_MOUSE_GUEST_NEEDS_HOST_CURSOR feature in this 240 * bitmap. The logic of this is that the real feature is when the host 241 * cursor is not needed, and we tell the host it is not needed if any 242 * session explicitly fails to assert it. Storing it inverted simplifies 243 * the checks. 244 * Use under the VBOXGUESTDEVEXT#SessionSpinlock lock. */ 245 uint32_t fMouseStatus; 235 246 #ifdef RT_OS_DARWIN 236 247 /** Pointer to the associated org_virtualbox_VBoxGuestClient object. */
Note:
See TracChangeset
for help on using the changeset viewer.