Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Shared / MS / Internal / Ink / Native.cs / 1 / Native.cs
using System;
using System.Security;
using System.Runtime.InteropServices;
namespace MS.Internal.Ink
{
internal static class Native
{
///
/// Initialize the constants
///
///
/// Critical: Critical as this code invokes Marshal.SizeOf which uses LinkDemand for UnmanagedCode permission.
/// TreatAsSafe: The method doesn't take any user inputs. It only pre-computes the size of our internal types.
///
[SecurityCritical, SecurityTreatAsSafe]
static Native()
{
// NOTICE-2005/10/14-[....],
// Make sure those lengths are indepentent from the 32bit or 64bit platform. Otherwise it could
// break the ISF format.
SizeOfInt = (uint)Marshal.SizeOf(typeof(int));
SizeOfUInt = (uint)Marshal.SizeOf(typeof(uint));
SizeOfUShort = (uint)Marshal.SizeOf(typeof(ushort));
SizeOfByte = (uint)Marshal.SizeOf(typeof(byte));
SizeOfFloat = (uint)Marshal.SizeOf(typeof(float));
SizeOfDouble = (uint)Marshal.SizeOf(typeof(double));
SizeOfGuid = (uint)Marshal.SizeOf(typeof(Guid));
SizeOfDecimal = (uint)Marshal.SizeOf(typeof(decimal));
}
internal static readonly uint SizeOfInt; // Size of an int
internal static readonly uint SizeOfUInt; // Size of an unsigned int
internal static readonly uint SizeOfUShort; // Size of an unsigned short
internal static readonly uint SizeOfByte; // Size of a byte
internal static readonly uint SizeOfFloat; // Size of a float
internal static readonly uint SizeOfDouble; // Size of a double
internal static readonly uint SizeOfGuid; // Size of a GUID
internal static readonly uint SizeOfDecimal; // Size of a VB-style Decimal
internal const int BitsPerByte = 8; // number of bits in a byte
internal const int BitsPerShort = 16; // number of bits in one short - 2 bytes
internal const int BitsPerInt = 32; // number of bits in one integer - 4 bytes
internal const int BitsPerLong = 64; // number of bits in one long - 8 bytes
// since casting from floats have mantisaa components,
// casts from float to int are not constrained by
// Int32.MaxValue, but by the maximum float value
// whose mantissa component is still within range
// of an integer. Anything larger will cause an overflow.
internal const int MaxFloatToIntValue = 2147483584 - 1; // 2.14748e+009
}
}
// 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
- InputScopeAttribute.cs
- ScriptServiceAttribute.cs
- XamlInt32CollectionSerializer.cs
- ControlHelper.cs
- PackWebRequest.cs
- FilteredAttributeCollection.cs
- RenderContext.cs
- ImpersonationContext.cs
- MethodMessage.cs
- OleDbDataAdapter.cs
- ZipIOFileItemStream.cs
- ColorMap.cs
- TransactionContextValidator.cs
- _ContextAwareResult.cs
- TextTreeDeleteContentUndoUnit.cs
- Context.cs
- FixedPageProcessor.cs
- TextBoxAutomationPeer.cs
- EventWaitHandle.cs
- XmlSchemaSubstitutionGroup.cs
- DataMemberConverter.cs
- PenLineJoinValidation.cs
- SystemEvents.cs
- Token.cs
- NativeObjectSecurity.cs
- XmlSchema.cs
- DataGridBoundColumn.cs
- TickBar.cs
- Rotation3DAnimationUsingKeyFrames.cs
- XmlSerializerAssemblyAttribute.cs
- MasterPageCodeDomTreeGenerator.cs
- IndexExpression.cs
- iisPickupDirectory.cs
- HttpHandler.cs
- SubclassTypeValidatorAttribute.cs
- ModelProperty.cs
- BamlLocalizabilityResolver.cs
- SiblingIterators.cs
- ObjectAnimationUsingKeyFrames.cs
- RulePatternOps.cs
- DbXmlEnabledProviderManifest.cs
- RuntimeUtils.cs
- MemoryStream.cs
- LogEntryHeaderSerializer.cs
- InstanceDataCollectionCollection.cs
- SocketStream.cs
- ComponentChangingEvent.cs
- TreeBuilder.cs
- Guid.cs
- DataRecordInfo.cs
- FieldToken.cs
- Stack.cs
- ReflectionUtil.cs
- FontEditor.cs
- MsmqQueue.cs
- recordstate.cs
- CodeRegionDirective.cs
- TemplateBuilder.cs
- WindowsServiceElement.cs
- ModelFactory.cs
- Section.cs
- SqlServices.cs
- PathFigureCollection.cs
- SoapAttributes.cs
- ButtonBase.cs
- ClientSettingsProvider.cs
- OpenTypeLayout.cs
- InfoCardSymmetricAlgorithm.cs
- DataSourceControl.cs
- ComplexType.cs
- TcpChannelFactory.cs
- PointUtil.cs
- SqlStream.cs
- BindUriHelper.cs
- XmlSerializableReader.cs
- SchemaImporterExtensionsSection.cs
- ListDataHelper.cs
- ToolboxItemImageConverter.cs
- HtmlSelect.cs
- ResourceDisplayNameAttribute.cs
- CriticalFinalizerObject.cs
- DecimalConstantAttribute.cs
- SystemPens.cs
- GeneralTransform2DTo3D.cs
- HwndProxyElementProvider.cs
- SchemaEntity.cs
- XmlAnyElementAttributes.cs
- DataServiceRequestException.cs
- ListenerAdapterBase.cs
- WindowsListViewGroupSubsetLink.cs
- CapabilitiesSection.cs
- Simplifier.cs
- AlternateView.cs
- ReadOnlyDataSource.cs
- Pair.cs
- DataServiceClientException.cs
- RepeaterItemEventArgs.cs
- CapacityStreamGeometryContext.cs
- EncodingDataItem.cs
- AbsoluteQuery.cs