Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Core / CSharp / System / Windows / Media / Animation / Generated / SizeAnimationClockResource.cs / 1 / SizeAnimationClockResource.cs
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
// This file was generated, please do not edit it directly.
//
// Please see http://wiki/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
{
///
/// SizeAnimationClockResource 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 SizeAnimationClockResource: AnimationClockResource, DUCE.IResource
{
///
/// Constructor for public SizeAnimationClockResource.
/// 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
/// SizeAnimationClockResource.
/// 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.
///
/// Size - The base value.
/// AnimationClock - cannot be null.
public SizeAnimationClockResource(
Size baseValue,
AnimationClock animationClock
): base( animationClock )
{
_baseValue = baseValue;
}
#region Public Properties
///
/// BaseValue Property - typed accessor for BaseValue.
///
public Size BaseValue
{
get
{
return _baseValue;
}
}
///
/// CurrentValue Property - typed accessor for CurrentValue
///
public Size 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 ((SizeAnimationBase)(_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_SIZERESOURCE;
}
}
///
/// 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_SIZERESOURCE cmd = new DUCE.MILCMD_SIZERESOURCE();
cmd.Type = MILCMD.MilCmdSizeResource;
cmd.Handle = handle;
cmd.Value = CurrentValue;
unsafe
{
channel.SendCommand(
(byte*)&cmd,
sizeof(DUCE.MILCMD_SIZERESOURCE));
}
// Validate this resource
IsResourceInvalid = false;
}
#endregion DUCE
private Size _baseValue;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
// This file was generated, please do not edit it directly.
//
// Please see http://wiki/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
{
///
/// SizeAnimationClockResource 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 SizeAnimationClockResource: AnimationClockResource, DUCE.IResource
{
///
/// Constructor for public SizeAnimationClockResource.
/// 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
/// SizeAnimationClockResource.
/// 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.
///
/// Size - The base value.
/// AnimationClock - cannot be null.
public SizeAnimationClockResource(
Size baseValue,
AnimationClock animationClock
): base( animationClock )
{
_baseValue = baseValue;
}
#region Public Properties
///
/// BaseValue Property - typed accessor for BaseValue.
///
public Size BaseValue
{
get
{
return _baseValue;
}
}
///
/// CurrentValue Property - typed accessor for CurrentValue
///
public Size 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 ((SizeAnimationBase)(_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_SIZERESOURCE;
}
}
///
/// 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_SIZERESOURCE cmd = new DUCE.MILCMD_SIZERESOURCE();
cmd.Type = MILCMD.MilCmdSizeResource;
cmd.Handle = handle;
cmd.Value = CurrentValue;
unsafe
{
channel.SendCommand(
(byte*)&cmd,
sizeof(DUCE.MILCMD_SIZERESOURCE));
}
// Validate this resource
IsResourceInvalid = false;
}
#endregion DUCE
private Size _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
- EventDescriptorCollection.cs
- RelationshipEndMember.cs
- CrossSiteScriptingValidation.cs
- ChangesetResponse.cs
- RelatedView.cs
- StatusBarItemAutomationPeer.cs
- InputReportEventArgs.cs
- NeutralResourcesLanguageAttribute.cs
- EmbeddedObject.cs
- NaturalLanguageHyphenator.cs
- ImageKeyConverter.cs
- CodeLabeledStatement.cs
- LocatorGroup.cs
- DesignOnlyAttribute.cs
- Collection.cs
- httpstaticobjectscollection.cs
- GcHandle.cs
- Pair.cs
- Codec.cs
- MetaChildrenColumn.cs
- ProfileInfo.cs
- TextBoxView.cs
- CompiledELinqQueryState.cs
- SrgsElement.cs
- ListBoxAutomationPeer.cs
- ConfigurationProperty.cs
- FieldNameLookup.cs
- DiscoveryReference.cs
- SqlClientWrapperSmiStreamChars.cs
- GridViewColumnHeader.cs
- ListViewContainer.cs
- StylusDevice.cs
- ConsumerConnectionPoint.cs
- isolationinterop.cs
- HtmlInputHidden.cs
- XsdBuilder.cs
- FormatConvertedBitmap.cs
- WS2007FederationHttpBindingCollectionElement.cs
- PatternMatcher.cs
- lengthconverter.cs
- IBuiltInEvidence.cs
- QueryContinueDragEvent.cs
- ControlAdapter.cs
- ExceptionHandler.cs
- DecimalConstantAttribute.cs
- ColorTransformHelper.cs
- XamlFilter.cs
- InkCanvasAutomationPeer.cs
- AssociationSet.cs
- XslCompiledTransform.cs
- SingleBodyParameterMessageFormatter.cs
- CuspData.cs
- TreeChangeInfo.cs
- DataGridDetailsPresenter.cs
- ScriptReferenceBase.cs
- FatalException.cs
- SqlParameterCollection.cs
- Attribute.cs
- exports.cs
- CopyOnWriteList.cs
- ProfileParameter.cs
- CompensateDesigner.cs
- DomNameTable.cs
- Int32Storage.cs
- ValueTable.cs
- invalidudtexception.cs
- WebPartChrome.cs
- RangeValidator.cs
- PropertyTabChangedEvent.cs
- exports.cs
- GuidelineSet.cs
- GridSplitterAutomationPeer.cs
- OutOfProcStateClientManager.cs
- OSFeature.cs
- GrammarBuilderBase.cs
- Dynamic.cs
- ErrorHandler.cs
- OptionalColumn.cs
- DataComponentMethodGenerator.cs
- SinglePageViewer.cs
- TextSimpleMarkerProperties.cs
- StorageInfo.cs
- RoutedEventArgs.cs
- HtmlImageAdapter.cs
- AuthenticatedStream.cs
- NameSpaceExtractor.cs
- WebPartZoneCollection.cs
- GridViewRow.cs
- CalculatedColumn.cs
- ComponentDesigner.cs
- EnumerableValidator.cs
- SoundPlayerAction.cs
- InvokeProviderWrapper.cs
- TypeUtils.cs
- WebPartConnectionsCancelVerb.cs
- CompilationUnit.cs
- TableStyle.cs
- TextBoxView.cs
- HorizontalAlignConverter.cs
- PrintPageEvent.cs