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
- OpenFileDialog.cs
- ToolstripProfessionalRenderer.cs
- ApplicationInterop.cs
- OverloadGroupAttribute.cs
- Deflater.cs
- PaperSize.cs
- SimpleApplicationHost.cs
- DataGridViewCellEventArgs.cs
- SelectionRangeConverter.cs
- StylusDevice.cs
- OleDbEnumerator.cs
- HttpCookie.cs
- SqlPersonalizationProvider.cs
- GlyphInfoList.cs
- RegexCompilationInfo.cs
- SubqueryRules.cs
- Binding.cs
- NamespaceImport.cs
- EventRouteFactory.cs
- MarkupCompiler.cs
- QilFunction.cs
- LinqDataSourceUpdateEventArgs.cs
- ParamArrayAttribute.cs
- StructuralType.cs
- ConstructorNeedsTagAttribute.cs
- RowsCopiedEventArgs.cs
- FontWeight.cs
- ExplicitDiscriminatorMap.cs
- DependencyPropertyChangedEventArgs.cs
- DBBindings.cs
- ProxyWebPartManager.cs
- GC.cs
- NativeMethods.cs
- SafeNativeMethodsCLR.cs
- WebServiceClientProxyGenerator.cs
- Underline.cs
- PriorityItem.cs
- FacetDescriptionElement.cs
- hresults.cs
- Predicate.cs
- WebControlAdapter.cs
- GreenMethods.cs
- COAUTHIDENTITY.cs
- ResolvedKeyFrameEntry.cs
- TriggerActionCollection.cs
- _IPv4Address.cs
- CriticalExceptions.cs
- BaseHashHelper.cs
- EdmRelationshipRoleAttribute.cs
- ResourceContainer.cs
- MailMessage.cs
- ModifierKeysValueSerializer.cs
- DiagnosticSection.cs
- linebase.cs
- DataBoundControlAdapter.cs
- Message.cs
- List.cs
- RuleSettings.cs
- PartBasedPackageProperties.cs
- CellQuery.cs
- _StreamFramer.cs
- PlatformNotSupportedException.cs
- WebPartZoneCollection.cs
- ObjectCache.cs
- SharingService.cs
- XmlKeywords.cs
- ToolStripDropTargetManager.cs
- ThreadPool.cs
- OdbcRowUpdatingEvent.cs
- ServiceManager.cs
- X509Certificate2Collection.cs
- DocumentOrderQuery.cs
- LinqDataSourceStatusEventArgs.cs
- SafeEventLogReadHandle.cs
- DefaultHttpHandler.cs
- GenericRootAutomationPeer.cs
- BitmapEffectrendercontext.cs
- TypeConverter.cs
- Triangle.cs
- WebPartConnectionsEventArgs.cs
- SapiGrammar.cs
- SchemaImporter.cs
- coordinator.cs
- DocobjHost.cs
- LayoutTable.cs
- Wildcard.cs
- TextRange.cs
- AudioFormatConverter.cs
- _SingleItemRequestCache.cs
- EventLogEntryCollection.cs
- DataStreams.cs
- DrawingBrush.cs
- GuidelineSet.cs
- URLString.cs
- OutKeywords.cs
- RegionData.cs
- HttpDictionary.cs
- PathGradientBrush.cs
- TextFragmentEngine.cs
- PenLineCapValidation.cs