Property | Type | Description | |
---|---|---|---|
IsFrontBufferAvailableProperty | DependencyProperty |
Method | Description | |
---|---|---|
Clone ( ) : |
Shadows inherited Clone() with a strongly typed version for convenience.
|
|
CloneCurrentValue ( ) : |
Shadows inherited CloneCurrentValue() with a strongly typed version for convenience.
|
|
Lock ( ) : void |
Locks the D3DImage While locked you can call AddDirtyRect, SetBackBuffer, and Unlock. You can also write to your back buffer. You should not write to the back buffer without being locked.
|
|
SetBackBuffer ( D3DResourceType backBufferType, IntPtr backBuffer ) : void |
Sets a back buffer source for this D3DImage. See the 2nd overload for details.
|
|
TryLock ( Duration timeout ) : bool |
Trys to lock the D3DImage but gives up once duration expires. Returns true if the lock was obtained. See Lock for more details.
|
|
Unlock ( ) : void |
Unlocks the D3DImage Can only be called while locked. If you have dirtied the image with AddDirtyRect, Unlocking will trigger us to copy the dirty regions from the back buffer to the front buffer. While this is taking place, Lock will block. To avoid locking indefinitely, use TryLock.
|
Method | Description | |
---|---|---|
CloneCore ( Freezable sourceFreezable ) : void |
Clone overrides Not sealed to allow subclasses to clone their private data
|
|
CloneCurrentValueCore ( Freezable sourceFreezable ) : void | ||
CreateInstanceCore ( ) : Freezable |
Implementation of
|
|
FreezeCore ( bool isChecking ) : bool |
Freezing is not allowed because the user will always have to make changes to the object based upon IsFrontBufferAvailable. We could consider SetBackBuffer to not count as a "change" but any thread could call it and that would violate our synchronization assumptions. Sealed to prevent subclasses from modifying the correct behavior.
|
|
GetAsFrozenCore ( Freezable sourceFreezable ) : void | ||
GetCurrentValueAsFrozenCore ( Freezable sourceFreezable ) : void |
Method | Description | |
---|---|---|
AddDirtyRect ( Int32Rect dirtyRect ) : void | ||
AddRefOnChannelCore ( DUCE.Channel channel ) : DUCE.ResourceHandle | ||
Callback ( bool isFrontBufferAvailable, uint version ) : void |
*** WARNING ***: This runs on the composition thread! What the composition thread calls when it wants to update D3DImage about front buffer state. It may be called multiple times with the same value. Since we're on a different thread we can't touch this, so queue a dispatcher operation.
|
|
CloneCommon ( Freezable sourceFreezable ) : void | ||
CopyBackBuffer ( ) : BitmapSource | ||
D3DImage ( ) : MS.Internal | ||
D3DImage ( double dpiX, double dpiY ) : MS.Internal | ||
GetChannelCore ( int index ) : DUCE.Channel | ||
GetChannelCountCore ( ) : int | ||
GetHandleCore ( DUCE.Channel channel ) : DUCE.ResourceHandle | ||
IAppDomainShutdownListener ( ) : void | ||
IsFrontBufferAvailablePropertyChanged ( DependencyObject d, DependencyPropertyChangedEventArgs e ) : void | ||
LockImpl ( Duration timeout ) : bool |
Lock implementation shared by Lock and TryLock
|
|
ReleaseOnChannelCore ( DUCE.Channel channel ) : void | ||
SendPresent ( object sender, EventArgs args ) : void | ||
SetBackBuffer ( D3DResourceType backBufferType, IntPtr backBuffer, bool enableSoftwareFallback ) : void | ||
SetIsFrontBufferAvailable ( object isAvailableVersionPair ) : object |
The DispatcherOperation corresponding to the composition thread callback. If the back buffer version matches the current version, update the front buffer status.
|
|
SubscribeToCommittingBatch ( ) : void | ||
UnsubscribeFromCommittingBatch ( ) : void | ||
UpdateResource ( DUCE.Channel channel, bool skipOnChannelCheck ) : void |
protected CloneCore ( Freezable sourceFreezable ) : void | ||
sourceFreezable | Freezable | |
return | void |
protected CloneCurrentValueCore ( Freezable sourceFreezable ) : void | ||
sourceFreezable | Freezable | |
return | void |
protected final FreezeCore ( bool isChecking ) : bool | ||
isChecking | bool | |
return | bool |
protected GetAsFrozenCore ( Freezable sourceFreezable ) : void | ||
sourceFreezable | Freezable | |
return | void |
protected GetCurrentValueAsFrozenCore ( Freezable sourceFreezable ) : void | ||
sourceFreezable | Freezable | |
return | void |
public SetBackBuffer ( D3DResourceType backBufferType, IntPtr backBuffer ) : void | ||
backBufferType | D3DResourceType | |
backBuffer | IntPtr | |
return | void |