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
- ReachFixedPageSerializer.cs
- WhileDesigner.xaml.cs
- UrlParameterWriter.cs
- DataListItem.cs
- BeginEvent.cs
- TableRowGroup.cs
- ScriptingRoleServiceSection.cs
- HwndStylusInputProvider.cs
- Socket.cs
- ReadOnlyHierarchicalDataSource.cs
- SqlGenerator.cs
- OciHandle.cs
- DynamicILGenerator.cs
- DataGridViewLinkColumn.cs
- Calendar.cs
- cryptoapiTransform.cs
- HtmlInputText.cs
- AndCondition.cs
- EntityConnectionStringBuilder.cs
- DataGridLinkButton.cs
- NotificationContext.cs
- MaterializeFromAtom.cs
- TriggerActionCollection.cs
- RtfControlWordInfo.cs
- SymbolEqualComparer.cs
- SmiXetterAccessMap.cs
- TouchEventArgs.cs
- XamlInt32CollectionSerializer.cs
- XamlClipboardData.cs
- CharConverter.cs
- Invariant.cs
- DoubleAnimationUsingPath.cs
- MILUtilities.cs
- Calendar.cs
- InternalConfigSettingsFactory.cs
- TemplateComponentConnector.cs
- XsdDataContractImporter.cs
- UrlMappingsSection.cs
- ComponentChangedEvent.cs
- SamlSerializer.cs
- ExpandCollapseIsCheckedConverter.cs
- ObjectViewQueryResultData.cs
- TraceContextRecord.cs
- DataGridViewRowsRemovedEventArgs.cs
- XmlElementElementCollection.cs
- SchemaCollectionPreprocessor.cs
- TcpChannelHelper.cs
- ComPlusDiagnosticTraceRecords.cs
- OrderedHashRepartitionEnumerator.cs
- RandomNumberGenerator.cs
- BatchServiceHost.cs
- DataTableClearEvent.cs
- ReflectTypeDescriptionProvider.cs
- XmlSerializerNamespaces.cs
- ResourceReferenceExpressionConverter.cs
- ThreadAttributes.cs
- SettingsPropertyIsReadOnlyException.cs
- TitleStyle.cs
- EmbeddedMailObject.cs
- SafeHandles.cs
- InstanceNotFoundException.cs
- CallbackCorrelationInitializer.cs
- MatrixKeyFrameCollection.cs
- HijriCalendar.cs
- CharacterShapingProperties.cs
- TextFragmentEngine.cs
- SqlBulkCopy.cs
- SelectionItemPattern.cs
- RuleConditionDialog.Designer.cs
- Propagator.JoinPropagator.cs
- GridItemPattern.cs
- Rect.cs
- precedingsibling.cs
- FormViewPageEventArgs.cs
- FileLevelControlBuilderAttribute.cs
- BamlRecordReader.cs
- DataServiceQueryContinuation.cs
- Stack.cs
- TextServicesCompartment.cs
- SchemaEntity.cs
- HtmlInputText.cs
- DataControlImageButton.cs
- ViewDesigner.cs
- TrackBarDesigner.cs
- SettingsContext.cs
- ObjectListFieldsPage.cs
- SecurityResources.cs
- JsonQNameDataContract.cs
- TextBounds.cs
- BeginStoryboard.cs
- BitmapInitialize.cs
- LinqDataSourceDeleteEventArgs.cs
- Calendar.cs
- EventProviderWriter.cs
- CommonServiceBehaviorElement.cs
- WebPartConnectionsEventArgs.cs
- RuntimeIdentifierPropertyAttribute.cs
- DATA_BLOB.cs
- DefaultValueTypeConverter.cs
- SerializationInfo.cs