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
- XmlSerializationReader.cs
- DynamicValidatorEventArgs.cs
- HtmlTableRowCollection.cs
- FigureHelper.cs
- CancellationTokenRegistration.cs
- MimeXmlReflector.cs
- RuleConditionDialog.cs
- DataGridViewAccessibleObject.cs
- ProfileSettings.cs
- MonthCalendar.cs
- WebSysDefaultValueAttribute.cs
- SuppressMergeCheckAttribute.cs
- RewritingPass.cs
- HtmlWindow.cs
- FixedDSBuilder.cs
- SimpleWorkerRequest.cs
- DispatcherSynchronizationContext.cs
- Span.cs
- BasicHttpSecurity.cs
- JoinGraph.cs
- InvalidWMPVersionException.cs
- TableDetailsCollection.cs
- HostElement.cs
- ResourceDictionaryCollection.cs
- BrushConverter.cs
- AssociationType.cs
- SqlLiftWhereClauses.cs
- ToolStripTextBox.cs
- SelectionProviderWrapper.cs
- SqlAliasesReferenced.cs
- GenericAuthenticationEventArgs.cs
- GetPolicyDetailsRequest.cs
- PersonalizationAdministration.cs
- WindowAutomationPeer.cs
- SHA512.cs
- _SingleItemRequestCache.cs
- CounterCreationData.cs
- DoubleSumAggregationOperator.cs
- PropertyGridCommands.cs
- OperationFormatUse.cs
- XmlSignatureProperties.cs
- GridItemCollection.cs
- _HelperAsyncResults.cs
- WebBrowserNavigatingEventHandler.cs
- DirectoryObjectSecurity.cs
- ElasticEase.cs
- DataBinder.cs
- ObjectParameter.cs
- AttributeCollection.cs
- LocatorBase.cs
- XpsPackagingException.cs
- ValidationSummary.cs
- RegistryPermission.cs
- ResourceDictionary.cs
- GenerateTemporaryAssemblyTask.cs
- COM2PropertyPageUITypeConverter.cs
- CatalogZoneBase.cs
- TypeUtils.cs
- WebPartDescription.cs
- DataGridViewSelectedCellsAccessibleObject.cs
- Rule.cs
- MapPathBasedVirtualPathProvider.cs
- ComponentConverter.cs
- SchemaCollectionCompiler.cs
- QilXmlWriter.cs
- DetailsViewCommandEventArgs.cs
- DataGridViewBand.cs
- HttpModuleAction.cs
- GridViewColumnHeader.cs
- CheckBoxField.cs
- ColorAnimationUsingKeyFrames.cs
- SynchronousChannelMergeEnumerator.cs
- FixedSOMPage.cs
- BuildProvider.cs
- Membership.cs
- RemotingException.cs
- ScrollProviderWrapper.cs
- DataTableMapping.cs
- HttpCacheVary.cs
- TabPanel.cs
- DisplayMemberTemplateSelector.cs
- JournalEntryListConverter.cs
- LoginDesigner.cs
- Tablet.cs
- PolicyVersionConverter.cs
- Substitution.cs
- ComponentGuaranteesAttribute.cs
- Operators.cs
- RouteCollection.cs
- Validator.cs
- ArithmeticException.cs
- SqlCacheDependencyDatabaseCollection.cs
- XmlTextWriter.cs
- TextBoxView.cs
- InternalResources.cs
- ProgressBarBrushConverter.cs
- FontFamilyIdentifier.cs
- DataGridViewLinkColumn.cs
- BitmapEffectInput.cs
- ColorConverter.cs