Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Shared / MS / Internal / Ink / Native.cs / 1305600 / 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
- MasterPageBuildProvider.cs
- MiniConstructorInfo.cs
- ExternalCalls.cs
- StringSource.cs
- CultureInfo.cs
- EntityDataSourceView.cs
- URLAttribute.cs
- DelegateSerializationHolder.cs
- Dispatcher.cs
- RequestCacheValidator.cs
- EventManager.cs
- ChangePasswordAutoFormat.cs
- ApplicationBuildProvider.cs
- Underline.cs
- BitmapData.cs
- DbDeleteCommandTree.cs
- SoapElementAttribute.cs
- Rotation3D.cs
- X509WindowsSecurityToken.cs
- input.cs
- DataServiceResponse.cs
- OleDbStruct.cs
- EllipticalNodeOperations.cs
- MouseGestureConverter.cs
- TemplatedAdorner.cs
- UshortList2.cs
- OLEDB_Enum.cs
- RequestResizeEvent.cs
- PathFigureCollection.cs
- ApplicationCommands.cs
- MustUnderstandSoapException.cs
- TraceRecords.cs
- Win32SafeHandles.cs
- ZipFileInfo.cs
- BinaryMessageEncoder.cs
- Model3DGroup.cs
- Wizard.cs
- ToolStripItemTextRenderEventArgs.cs
- OleDbRowUpdatedEvent.cs
- QueryContinueDragEvent.cs
- BidOverLoads.cs
- ApplicationHost.cs
- AlphabetConverter.cs
- CapabilitiesUse.cs
- IIS7UserPrincipal.cs
- LinkDescriptor.cs
- RightsManagementEncryptedStream.cs
- BoolExpression.cs
- ProcessMessagesAsyncResult.cs
- EmptyElement.cs
- TextElement.cs
- ShimAsPublicXamlType.cs
- OdbcCommand.cs
- MenuItemCollection.cs
- FormatVersion.cs
- WsatConfiguration.cs
- StylusPointPropertyUnit.cs
- Int32RectConverter.cs
- FontConverter.cs
- RepeatInfo.cs
- WorkflowPrinting.cs
- Boolean.cs
- SchemaElementLookUpTableEnumerator.cs
- DrawingContextWalker.cs
- Stream.cs
- HtmlElement.cs
- TransformCollection.cs
- TypeSource.cs
- SelectionProcessor.cs
- XmlDataImplementation.cs
- ToolStripItemBehavior.cs
- SeekStoryboard.cs
- Viewport2DVisual3D.cs
- PocoEntityKeyStrategy.cs
- SchemaConstraints.cs
- ComponentSerializationService.cs
- DataRelation.cs
- OdbcConnectionStringbuilder.cs
- Filter.cs
- SpoolingTaskBase.cs
- XmlDocumentFragment.cs
- StylusPointPropertyInfo.cs
- storagemappingitemcollection.viewdictionary.cs
- CheckBoxList.cs
- _DomainName.cs
- ErrorFormatter.cs
- Stopwatch.cs
- ProxyWebPartManagerDesigner.cs
- GridViewEditEventArgs.cs
- LocalizeDesigner.cs
- KnownTypeAttribute.cs
- FixedSOMTableCell.cs
- DocumentViewerHelper.cs
- IntranetCredentialPolicy.cs
- XamlPathDataSerializer.cs
- ApplicationSecurityManager.cs
- DropDownList.cs
- BuildResult.cs
- Encoder.cs
- DecimalStorage.cs