Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / 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-WAYNEZEN, // 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. 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-WAYNEZEN, // 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
- LayoutTable.cs
- EventLogPermissionEntryCollection.cs
- grammarelement.cs
- SourceFileBuildProvider.cs
- Int16KeyFrameCollection.cs
- ApplicationManager.cs
- BaseConfigurationRecord.cs
- ObjectDataSourceFilteringEventArgs.cs
- DataGridViewControlCollection.cs
- followingquery.cs
- XmlSchemaObjectTable.cs
- CommandEventArgs.cs
- ExclusiveHandle.cs
- DatagridviewDisplayedBandsData.cs
- MetadataProperty.cs
- SqlDataSource.cs
- WebPartTracker.cs
- TryExpression.cs
- SqlPersonalizationProvider.cs
- OutKeywords.cs
- ListViewCancelEventArgs.cs
- WindowCollection.cs
- SettingsContext.cs
- RSAPKCS1KeyExchangeFormatter.cs
- SourceElementsCollection.cs
- UpdateCompiler.cs
- CounterSampleCalculator.cs
- GraphicsState.cs
- securitycriticaldataformultiplegetandset.cs
- PasswordDeriveBytes.cs
- Timeline.cs
- TextBreakpoint.cs
- SpellerInterop.cs
- CrossSiteScriptingValidation.cs
- AttributeEmitter.cs
- NotFiniteNumberException.cs
- LineServicesCallbacks.cs
- DataListGeneralPage.cs
- EntityException.cs
- SafeThreadHandle.cs
- CodeSubDirectoriesCollection.cs
- InvalidPipelineStoreException.cs
- MasterPage.cs
- GlobalizationAssembly.cs
- ScriptModule.cs
- Propagator.ExtentPlaceholderCreator.cs
- TextFormattingConverter.cs
- CommentEmitter.cs
- CookieProtection.cs
- SqlCommandBuilder.cs
- DataGridViewColumnConverter.cs
- ProviderSettingsCollection.cs
- InputDevice.cs
- MapPathBasedVirtualPathProvider.cs
- StretchValidation.cs
- InstanceCreationEditor.cs
- MoveSizeWinEventHandler.cs
- ActivityMarkupSerializer.cs
- IOThreadTimer.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- HttpRuntime.cs
- TextFormatterHost.cs
- FixedSOMGroup.cs
- TextBoxBase.cs
- XmlSchemaComplexContentRestriction.cs
- Executor.cs
- SpAudioStreamWrapper.cs
- ViewUtilities.cs
- AssertValidation.cs
- ColumnWidthChangingEvent.cs
- HtmlListAdapter.cs
- CodePageUtils.cs
- SafeProcessHandle.cs
- LinkArea.cs
- ThemeDirectoryCompiler.cs
- ConfigurationCollectionAttribute.cs
- HashHelper.cs
- KeyPullup.cs
- DataObjectAttribute.cs
- UnsafeNativeMethodsTablet.cs
- VirtualPath.cs
- LineSegment.cs
- TextBoxRenderer.cs
- PropertyTab.cs
- HandlerFactoryWrapper.cs
- Helper.cs
- SplitterCancelEvent.cs
- AppModelKnownContentFactory.cs
- ToolStripContentPanelDesigner.cs
- PropertySourceInfo.cs
- ComAwareEventInfo.cs
- EventLogPermissionEntry.cs
- XAMLParseException.cs
- XmlHelper.cs
- PropertyItemInternal.cs
- ProfileServiceManager.cs
- PathHelper.cs
- Function.cs
- OleStrCAMarshaler.cs
- NativeMethods.cs