Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Core / CSharp / System / Windows / Media / Animation / Generated / RectAnimationClockResource.cs / 1 / RectAnimationClockResource.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
{
///
/// 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.
//----------------------------------------------------------------------------
//
//
// 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
{
///
/// 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
- ResourceDescriptionAttribute.cs
- PixelShader.cs
- TypeBuilderInstantiation.cs
- TypeBuilderInstantiation.cs
- EndEvent.cs
- PeerTransportElement.cs
- TextTreeUndo.cs
- InputLanguageManager.cs
- TableRow.cs
- ipaddressinformationcollection.cs
- GenerateTemporaryTargetAssembly.cs
- CorePropertiesFilter.cs
- StateItem.cs
- PerformanceCounterCategory.cs
- FlowNode.cs
- HttpCookiesSection.cs
- MetafileHeaderWmf.cs
- FontStyle.cs
- ChildrenQuery.cs
- IOException.cs
- BufferModesCollection.cs
- HMACRIPEMD160.cs
- RelationshipType.cs
- MetadataArtifactLoaderCompositeResource.cs
- CookieParameter.cs
- ResourceReferenceExpressionConverter.cs
- FreeFormDesigner.cs
- ResourceCollectionInfo.cs
- ParsedAttributeCollection.cs
- XmlTextReader.cs
- BuildResult.cs
- CollectionBuilder.cs
- DocumentSequenceHighlightLayer.cs
- PrintDocument.cs
- RuleAction.cs
- CircleHotSpot.cs
- CmsInterop.cs
- CodeIdentifier.cs
- Encoding.cs
- ObjectStateEntryBaseUpdatableDataRecord.cs
- PropertyGeneratedEventArgs.cs
- StructuredType.cs
- APCustomTypeDescriptor.cs
- CommandConverter.cs
- RtfToXamlReader.cs
- ProviderException.cs
- ProjectionCamera.cs
- MasterPageCodeDomTreeGenerator.cs
- PageFunction.cs
- MemberBinding.cs
- TableCellCollection.cs
- TypeExtensions.cs
- NameSpaceExtractor.cs
- Int32AnimationUsingKeyFrames.cs
- storepermission.cs
- HierarchicalDataBoundControl.cs
- StateWorkerRequest.cs
- ProviderIncompatibleException.cs
- LoginView.cs
- PathTooLongException.cs
- FlowPanelDesigner.cs
- RangeContentEnumerator.cs
- PathFigure.cs
- EventSetter.cs
- XmlSchemaExternal.cs
- ControlPropertyNameConverter.cs
- PageParserFilter.cs
- InvalidDataException.cs
- LayoutTableCell.cs
- FixedFindEngine.cs
- embossbitmapeffect.cs
- ListViewItemEventArgs.cs
- RelatedView.cs
- XmlEntityReference.cs
- TableLayoutSettingsTypeConverter.cs
- ApplicationException.cs
- DocumentPageHost.cs
- XdrBuilder.cs
- SqlConnectionPoolProviderInfo.cs
- StateMachine.cs
- ReliabilityContractAttribute.cs
- RoutedEventConverter.cs
- PipelineModuleStepContainer.cs
- DifferencingCollection.cs
- QuadraticEase.cs
- MessageBox.cs
- AssemblyCache.cs
- ArgIterator.cs
- SortQuery.cs
- ColumnReorderedEventArgs.cs
- WindowsProgressbar.cs
- VisualStyleRenderer.cs
- UserControlFileEditor.cs
- TypeReference.cs
- DataGridViewAdvancedBorderStyle.cs
- ReverseComparer.cs
- TextDecorationLocationValidation.cs
- AppSettingsExpressionBuilder.cs
- Rect.cs
- XPathArrayIterator.cs