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
- SapiRecognizer.cs
- DocumentSchemaValidator.cs
- PathSegment.cs
- ToolboxComponentsCreatedEventArgs.cs
- DispatcherExceptionFilterEventArgs.cs
- UnionExpr.cs
- VideoDrawing.cs
- SID.cs
- SoapAttributeOverrides.cs
- HitTestFilterBehavior.cs
- XmlChoiceIdentifierAttribute.cs
- MetadataArtifactLoaderFile.cs
- FixedTextContainer.cs
- URI.cs
- XmlDocumentFragment.cs
- CompilerGeneratedAttribute.cs
- ConvertTextFrag.cs
- InputBinding.cs
- XmlParser.cs
- QueryStringParameter.cs
- ServiceRouteHandler.cs
- IntegrationExceptionEventArgs.cs
- SmtpNegotiateAuthenticationModule.cs
- SoapBinding.cs
- PathFigureCollection.cs
- Codec.cs
- IPEndPoint.cs
- AdornerLayer.cs
- ChannelDispatcher.cs
- TypeInfo.cs
- SQLMoneyStorage.cs
- ToolStripRenderer.cs
- PropertyGridEditorPart.cs
- TypeUtils.cs
- TemplateControlCodeDomTreeGenerator.cs
- MessageQueuePermission.cs
- WmiInstallComponent.cs
- WindowsFormsSectionHandler.cs
- ObjectAnimationBase.cs
- HttpCapabilitiesEvaluator.cs
- BufferedWebEventProvider.cs
- ToolStripSplitButton.cs
- BrushConverter.cs
- SystemPens.cs
- GeometryModel3D.cs
- TileBrush.cs
- ExpressionPrefixAttribute.cs
- EventListenerClientSide.cs
- XmlObjectSerializerReadContextComplexJson.cs
- BitFlagsGenerator.cs
- VerificationException.cs
- SafeCryptoHandles.cs
- StylusPointPropertyId.cs
- PublishLicense.cs
- DataObjectMethodAttribute.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- HtmlButton.cs
- ILGenerator.cs
- SQLInt64.cs
- WebPartConnectionsCloseVerb.cs
- CustomBindingElement.cs
- XamlSerializerUtil.cs
- GridViewColumn.cs
- COM2PropertyBuilderUITypeEditor.cs
- KeyValueInternalCollection.cs
- AuthenticationManager.cs
- DataGridViewComboBoxColumn.cs
- DataBindingExpressionBuilder.cs
- FixUp.cs
- TrustLevelCollection.cs
- WebControlsSection.cs
- HtmlImage.cs
- ClientSponsor.cs
- CompoundFileStorageReference.cs
- RequestSecurityTokenForRemoteTokenFactory.cs
- Action.cs
- DesignerOptionService.cs
- HandlerBase.cs
- ExecutionEngineException.cs
- HtmlInputControl.cs
- DataGridViewTopLeftHeaderCell.cs
- XmlReader.cs
- DBSchemaTable.cs
- DataGridViewColumnCollection.cs
- ConnectionsZone.cs
- CriticalExceptions.cs
- ConfigurationValue.cs
- ECDiffieHellman.cs
- MdImport.cs
- AssemblyBuilderData.cs
- PenLineJoinValidation.cs
- ToolStripScrollButton.cs
- DescendentsWalkerBase.cs
- GeometryValueSerializer.cs
- Convert.cs
- ItemCollection.cs
- MetadataFile.cs
- Queue.cs
- HttpPostProtocolImporter.cs
- RoleServiceManager.cs