Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / System / Windows / Media / Animation / Generated / RectAnimationClockResource.cs / 2 / RectAnimationClockResource.cs
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
// This file was generated, please do not edit it directly.
//
// Please see [....]/default.aspx/Microsoft.Projects.Avalon/MilCodeGen.html for more information.
//
//---------------------------------------------------------------------------
using System;
using System.Windows;
using System.Windows.Media;
using System.Windows.Media.Composition;
using System.Diagnostics;
using System.Runtime.InteropServices;
using System.Security;
namespace System.Windows.Media.Animation
{
///
/// RectAnimationClockResource class.
/// AnimationClockResource classes refer to an AnimationClock and a base
/// value. They implement DUCE.IResource, and thus can be used to produce
/// a render-side resource which represents the current value of this
/// AnimationClock.
/// They subscribe to the Changed event on the AnimationClock and ensure
/// that the resource's current value is up to date.
///
internal class RectAnimationClockResource: AnimationClockResource, DUCE.IResource
{
///
/// Constructor for public RectAnimationClockResource.
/// This constructor accepts the base value and AnimationClock.
/// Note that since there is no current requirement that we be able to set or replace either the
/// base value or the AnimationClock, this is the only way to initialize an instance of
/// RectAnimationClockResource.
/// Also, we currently Assert that the resource is non-null, since without mutability
/// such a resource isn't needed.
/// We can easily extend this class if/when new requirements arise.
///
/// Rect - The base value.
/// AnimationClock - cannot be null.
public RectAnimationClockResource(
Rect baseValue,
AnimationClock animationClock
): base( animationClock )
{
_baseValue = baseValue;
}
#region Public Properties
///
/// BaseValue Property - typed accessor for BaseValue.
///
public Rect BaseValue
{
get
{
return _baseValue;
}
}
///
/// CurrentValue Property - typed accessor for CurrentValue
///
public Rect CurrentValue
{
get
{
if (_animationClock != null)
{
// No handoff for DrawingContext animations so we use the
// BaseValue as the defaultOriginValue and the
// defaultDestinationValue. We call the Timeline's GetCurrentValue
// directly to avoid boxing
return ((RectAnimationBase)(_animationClock.Timeline)).GetCurrentValue(
_baseValue, // defaultOriginValue
_baseValue, // defaultDesinationValue
_animationClock); // clock
}
else
{
return _baseValue;
}
}
}
#endregion Public Properties
#region DUCE
//
// Method which returns the DUCE type of this class.
// The base class needs this type when calling CreateOrAddRefOnChannel.
// By providing this via a virtual, we avoid a per-instance storage cost.
//
protected override DUCE.ResourceType ResourceType
{
get
{
return DUCE.ResourceType.TYPE_RECTRESOURCE;
}
}
///
/// UpdateResource - This method is called to update the render-thread
/// resource on a given channel.
///
/// The DUCE.ResourceHandle for this resource on this channel.
/// The channel on which to update the render-thread resource.
///
/// Critical: This code calls into an unsafe code block
/// TreatAsSafe: This code does not return any critical data.It is ok to expose
/// Channels can handle bad pointers and will not affect other appdomains or processes
///
[SecurityCritical,SecurityTreatAsSafe]
protected override void UpdateResource(
DUCE.ResourceHandle handle,
DUCE.Channel channel)
{
DUCE.MILCMD_RECTRESOURCE cmd = new DUCE.MILCMD_RECTRESOURCE();
cmd.Type = MILCMD.MilCmdRectResource;
cmd.Handle = handle;
cmd.Value = CurrentValue;
unsafe
{
channel.SendCommand(
(byte*)&cmd,
sizeof(DUCE.MILCMD_RECTRESOURCE));
}
// Validate this resource
IsResourceInvalid = false;
}
#endregion DUCE
private Rect _baseValue;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ServerValidateEventArgs.cs
- SerialPort.cs
- SqlColumnizer.cs
- JoinTreeSlot.cs
- DBCommandBuilder.cs
- HostedTcpTransportManager.cs
- ObjectFullSpanRewriter.cs
- DocumentPageHost.cs
- HttpWebRequestElement.cs
- TextBoxAutomationPeer.cs
- RpcResponse.cs
- TypeDefinition.cs
- WebPartVerbsEventArgs.cs
- SHA256Cng.cs
- TableCellCollection.cs
- SQLMoneyStorage.cs
- ChangePassword.cs
- DataListCommandEventArgs.cs
- SqlDataSourceFilteringEventArgs.cs
- MsmqProcessProtocolHandler.cs
- TextEditor.cs
- StringAnimationUsingKeyFrames.cs
- StructuredTypeInfo.cs
- CurrentChangingEventArgs.cs
- DataStorage.cs
- HandlerBase.cs
- GeneratedContractType.cs
- SyntaxCheck.cs
- Tracer.cs
- UriTemplateMatch.cs
- EntityKeyElement.cs
- ResourceManagerWrapper.cs
- StreamWithDictionary.cs
- EngineSite.cs
- XsltInput.cs
- EncodingDataItem.cs
- DisplayNameAttribute.cs
- ApplicationActivator.cs
- ComPlusSynchronizationContext.cs
- ExpressionParser.cs
- DataGridDetailsPresenter.cs
- OdbcDataReader.cs
- ListBindingConverter.cs
- TreeViewImageKeyConverter.cs
- UnionCqlBlock.cs
- UmAlQuraCalendar.cs
- TemplateColumn.cs
- PageThemeParser.cs
- Select.cs
- TogglePatternIdentifiers.cs
- AutomationPatternInfo.cs
- TextBoxRenderer.cs
- WebPartConnectionsDisconnectVerb.cs
- LocatorGroup.cs
- StreamInfo.cs
- DataServiceEntityAttribute.cs
- WebPartDisplayModeEventArgs.cs
- DeflateStreamAsyncResult.cs
- ExpanderAutomationPeer.cs
- DockProviderWrapper.cs
- AsyncOperationManager.cs
- ConnectionManager.cs
- DataBoundControl.cs
- SQLUtility.cs
- ReturnType.cs
- WebPartExportVerb.cs
- StringComparer.cs
- NameNode.cs
- ImageCodecInfo.cs
- ValueChangedEventManager.cs
- XmlNullResolver.cs
- DataObjectEventArgs.cs
- DecoderNLS.cs
- grammarelement.cs
- AffineTransform3D.cs
- _DigestClient.cs
- WebServiceFaultDesigner.cs
- RenderData.cs
- ButtonBase.cs
- StorageComplexPropertyMapping.cs
- DataGridViewRow.cs
- GeneralEndpointIdentity.cs
- XPathNodeIterator.cs
- ValueChangedEventManager.cs
- FormViewUpdatedEventArgs.cs
- MonthChangedEventArgs.cs
- BaseTemplateCodeDomTreeGenerator.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- WeakReference.cs
- SchemaImporterExtension.cs
- UnsafeNativeMethods.cs
- ApplicationManager.cs
- WhitespaceRuleLookup.cs
- XmlStreamStore.cs
- SelectionPattern.cs
- SimpleTableProvider.cs
- ExtendedPropertyCollection.cs
- ReverseInheritProperty.cs
- RuleInfoComparer.cs
- CodeNamespaceCollection.cs