Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / System / Windows / Media / Animation / Generated / PointAnimationClockResource.cs / 2 / PointAnimationClockResource.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
{
///
/// PointAnimationClockResource 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 PointAnimationClockResource: AnimationClockResource, DUCE.IResource
{
///
/// Constructor for public PointAnimationClockResource.
/// 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
/// PointAnimationClockResource.
/// 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.
///
/// Point - The base value.
/// AnimationClock - cannot be null.
public PointAnimationClockResource(
Point baseValue,
AnimationClock animationClock
): base( animationClock )
{
_baseValue = baseValue;
}
#region Public Properties
///
/// BaseValue Property - typed accessor for BaseValue.
///
public Point BaseValue
{
get
{
return _baseValue;
}
}
///
/// CurrentValue Property - typed accessor for CurrentValue
///
public Point 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 ((PointAnimationBase)(_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_POINTRESOURCE;
}
}
///
/// 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_POINTRESOURCE cmd = new DUCE.MILCMD_POINTRESOURCE();
cmd.Type = MILCMD.MilCmdPointResource;
cmd.Handle = handle;
cmd.Value = CurrentValue;
unsafe
{
channel.SendCommand(
(byte*)&cmd,
sizeof(DUCE.MILCMD_POINTRESOURCE));
}
// Validate this resource
IsResourceInvalid = false;
}
#endregion DUCE
private Point _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
- UserControl.cs
- DataSourceXmlSerializer.cs
- JsonXmlDataContract.cs
- ContentDisposition.cs
- DelegateArgumentReference.cs
- ScalarConstant.cs
- Header.cs
- ElapsedEventArgs.cs
- RepeaterItemCollection.cs
- CustomBindingElement.cs
- WeakReferenceList.cs
- WebPartCatalogCloseVerb.cs
- ValidatorCollection.cs
- InternalDispatchObject.cs
- SelectionItemProviderWrapper.cs
- XmlNotation.cs
- SecureConversationDriver.cs
- InputManager.cs
- DataDesignUtil.cs
- URLString.cs
- AutomationEvent.cs
- DataMisalignedException.cs
- PackWebRequestFactory.cs
- TreeNode.cs
- PageRequestManager.cs
- AsyncContentLoadedEventArgs.cs
- ComplexObject.cs
- SessionEndingCancelEventArgs.cs
- GatewayIPAddressInformationCollection.cs
- Label.cs
- LogExtent.cs
- ModelPropertyDescriptor.cs
- SqlDataSourceView.cs
- SpecialFolderEnumConverter.cs
- XPathScanner.cs
- FtpRequestCacheValidator.cs
- PackageDigitalSignature.cs
- SchemaDeclBase.cs
- DocumentViewerHelper.cs
- SafeFileMappingHandle.cs
- SqlTopReducer.cs
- IISUnsafeMethods.cs
- DiscriminatorMap.cs
- GridViewDeletedEventArgs.cs
- WorkflowClientDeliverMessageWrapper.cs
- MetadataImporterQuotas.cs
- GetPageNumberCompletedEventArgs.cs
- ManagementQuery.cs
- ProxyGenerator.cs
- Border.cs
- FontUnitConverter.cs
- _HelperAsyncResults.cs
- OdbcErrorCollection.cs
- ImageDrawing.cs
- Canvas.cs
- ItemsControlAutomationPeer.cs
- ProcessRequestArgs.cs
- MaskPropertyEditor.cs
- HttpModuleCollection.cs
- TypeConverterHelper.cs
- DataGridRow.cs
- XmlILCommand.cs
- SqlUtil.cs
- DeleteIndexBinder.cs
- XmlSerializableReader.cs
- SizeConverter.cs
- GridView.cs
- ListViewCommandEventArgs.cs
- Variable.cs
- AssemblyAttributes.cs
- SmiRequestExecutor.cs
- QuaternionIndependentAnimationStorage.cs
- MULTI_QI.cs
- OraclePermission.cs
- DataGridState.cs
- ToolStripSeparatorRenderEventArgs.cs
- TextSpan.cs
- ContainerCodeDomSerializer.cs
- SerializableTypeCodeDomSerializer.cs
- DataBindEngine.cs
- BoundsDrawingContextWalker.cs
- SystemFonts.cs
- OrthographicCamera.cs
- UniqueID.cs
- sqlstateclientmanager.cs
- IriParsingElement.cs
- PromptBuilder.cs
- ConstraintManager.cs
- XmlDocumentFieldSchema.cs
- RSAOAEPKeyExchangeFormatter.cs
- DesignerTransaction.cs
- ErrorHandlerModule.cs
- PhysicalFontFamily.cs
- WriteTimeStream.cs
- HtmlString.cs
- Helpers.cs
- SoapException.cs
- ObjectTag.cs
- SimpleHandlerBuildProvider.cs
- BinaryKeyIdentifierClause.cs