Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- ConnectionPoint.cs
- SynchronizedPool.cs
- SymmetricAlgorithm.cs
- GlobalProxySelection.cs
- ScriptHandlerFactory.cs
- FamilyTypefaceCollection.cs
- ResourceExpressionBuilder.cs
- Processor.cs
- WebServiceEnumData.cs
- SignatureDescription.cs
- XmlIlVisitor.cs
- JpegBitmapEncoder.cs
- SystemException.cs
- PackagePartCollection.cs
- TcpSocketManager.cs
- DbMetaDataFactory.cs
- StaticContext.cs
- _Events.cs
- BindingBase.cs
- FrameworkContentElement.cs
- ConfigsHelper.cs
- ApplicationSecurityManager.cs
- LiteralControl.cs
- WizardPanelChangingEventArgs.cs
- EncryptedData.cs
- CanonicalXml.cs
- SendAgentStatusRequest.cs
- ZipIOExtraFieldElement.cs
- ConstraintManager.cs
- DefaultProxySection.cs
- _IPv6Address.cs
- IntegerCollectionEditor.cs
- HoistedLocals.cs
- BaseDataBoundControl.cs
- StreamWithDictionary.cs
- PositiveTimeSpanValidator.cs
- OleDbParameterCollection.cs
- TraceContextEventArgs.cs
- WebBrowserSiteBase.cs
- EntityDataSourceContextDisposingEventArgs.cs
- PassportAuthentication.cs
- FixedSOMTableRow.cs
- FilteredAttributeCollection.cs
- Cursors.cs
- CompositionTarget.cs
- ErrorRuntimeConfig.cs
- CommandConverter.cs
- PropertyStore.cs
- CriticalFinalizerObject.cs
- RSAPKCS1SignatureFormatter.cs
- ContextMenuAutomationPeer.cs
- SymbolDocumentInfo.cs
- ASCIIEncoding.cs
- XmlQueryTypeFactory.cs
- SoapAttributeOverrides.cs
- LocatorManager.cs
- SizeAnimationBase.cs
- SafeArrayTypeMismatchException.cs
- DelegatingTypeDescriptionProvider.cs
- SafeThreadHandle.cs
- TypefaceMap.cs
- PropertyMetadata.cs
- DataServiceSaveChangesEventArgs.cs
- UiaCoreApi.cs
- SchemaMapping.cs
- GlobalizationAssembly.cs
- SqlConnectionHelper.cs
- SpellerStatusTable.cs
- EditorZoneBase.cs
- XmlAttributeOverrides.cs
- State.cs
- Predicate.cs
- LongAverageAggregationOperator.cs
- MemberAccessException.cs
- CookieHandler.cs
- MetaData.cs
- SwitchLevelAttribute.cs
- ColorTranslator.cs
- State.cs
- EventLogPermissionAttribute.cs
- WorkflowInstanceContextProvider.cs
- Region.cs
- CompilerLocalReference.cs
- MessageSmuggler.cs
- FlowDocumentScrollViewerAutomationPeer.cs
- NetworkInformationPermission.cs
- FamilyMap.cs
- PermissionSetEnumerator.cs
- CheckBoxPopupAdapter.cs
- ConnectionConsumerAttribute.cs
- OdbcConnectionHandle.cs
- RegistrationServices.cs
- X509SecurityToken.cs
- TableMethodGenerator.cs
- UpdatePanelControlTrigger.cs
- ConnectionPoint.cs
- EnumBuilder.cs
- CompareInfo.cs
- MouseActionValueSerializer.cs
- complextypematerializer.cs