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
- Span.cs
- Dispatcher.cs
- Point3DCollection.cs
- parserscommon.cs
- WebConfigurationManager.cs
- ToolboxComponentsCreatedEventArgs.cs
- PixelFormatConverter.cs
- followingquery.cs
- oledbmetadatacollectionnames.cs
- VScrollBar.cs
- ServerIdentity.cs
- WebPartConnectionsEventArgs.cs
- RtfToXamlReader.cs
- ToolboxItemCollection.cs
- NavigatingCancelEventArgs.cs
- DescendentsWalkerBase.cs
- RegexGroup.cs
- UnknownWrapper.cs
- GridViewCancelEditEventArgs.cs
- COM2PropertyDescriptor.cs
- SerialStream.cs
- InputBinder.cs
- DispatcherProcessingDisabled.cs
- DispatchChannelSink.cs
- Connector.cs
- HwndHost.cs
- Translator.cs
- RootAction.cs
- CollaborationHelperFunctions.cs
- OracleEncoding.cs
- followingsibling.cs
- VarRefManager.cs
- DataListItemEventArgs.cs
- WebServiceClientProxyGenerator.cs
- SvcFileManager.cs
- TdsParserStateObject.cs
- NeutralResourcesLanguageAttribute.cs
- ASCIIEncoding.cs
- GridViewHeaderRowPresenter.cs
- Soap.cs
- MatrixTransform3D.cs
- CriticalFinalizerObject.cs
- BidirectionalDictionary.cs
- SrgsOneOf.cs
- BitmapEffectInput.cs
- PhysicalAddress.cs
- XmlSchema.cs
- ThicknessAnimationUsingKeyFrames.cs
- XmlSchemaComplexContent.cs
- SiteMapPath.cs
- ItemsChangedEventArgs.cs
- Simplifier.cs
- SelectionPattern.cs
- WebPartZone.cs
- LostFocusEventManager.cs
- ObjectPersistData.cs
- WorkItem.cs
- GenericIdentity.cs
- AccessText.cs
- DataGridBoundColumn.cs
- XPathChildIterator.cs
- PreviousTrackingServiceAttribute.cs
- TaskCanceledException.cs
- TraceProvider.cs
- FontFamilyValueSerializer.cs
- SmtpReplyReader.cs
- ProcessModuleDesigner.cs
- StoryFragments.cs
- TaskFileService.cs
- CaseKeyBox.ViewModel.cs
- Token.cs
- PolicyStatement.cs
- DynamicMethod.cs
- RootBrowserWindowProxy.cs
- String.cs
- ToolboxCategoryItems.cs
- CustomCategoryAttribute.cs
- ServiceEndpointCollection.cs
- SqlTransaction.cs
- WindowsAltTab.cs
- InputBinder.cs
- Message.cs
- PathStreamGeometryContext.cs
- AvTraceFormat.cs
- CategoryList.cs
- CapabilitiesRule.cs
- SectionInput.cs
- Button.cs
- PageWrapper.cs
- XmlQueryCardinality.cs
- ObjectDataSourceView.cs
- UIElement.cs
- SHA512Cng.cs
- CompositeClientFormatter.cs
- ComponentEditorPage.cs
- HttpConfigurationContext.cs
- JsonSerializer.cs
- RichTextBox.cs
- COM2AboutBoxPropertyDescriptor.cs
- WorkflowView.cs