Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataColumnMapping.cs
- DataGridViewColumnStateChangedEventArgs.cs
- HeaderedItemsControl.cs
- DataBoundLiteralControl.cs
- SynchronizedInputPattern.cs
- HyperLinkField.cs
- PartManifestEntry.cs
- TextEditorCharacters.cs
- TextRunCacheImp.cs
- TypeHelper.cs
- DateTimeFormat.cs
- CodeDelegateCreateExpression.cs
- ObjectHandle.cs
- CancelEventArgs.cs
- NegotiateStream.cs
- LineGeometry.cs
- PublisherMembershipCondition.cs
- DataColumn.cs
- RecommendedAsConfigurableAttribute.cs
- BamlLocalizabilityResolver.cs
- SHA256CryptoServiceProvider.cs
- InputBinding.cs
- ScriptResourceAttribute.cs
- ControlsConfig.cs
- DashStyles.cs
- _FtpDataStream.cs
- FixedTextBuilder.cs
- DataGridViewRowStateChangedEventArgs.cs
- ITreeGenerator.cs
- EditorPart.cs
- ReferencedCollectionType.cs
- DataGridSortCommandEventArgs.cs
- DataGrid.cs
- ParserHooks.cs
- AutoResizedEvent.cs
- MappedMetaModel.cs
- AppDomainProtocolHandler.cs
- DiscardableAttribute.cs
- DocumentCollection.cs
- List.cs
- DesignerForm.cs
- HttpHostedTransportConfiguration.cs
- HtmlWindow.cs
- SharedUtils.cs
- HwndTarget.cs
- StyleCollection.cs
- ConfigurationPropertyAttribute.cs
- MSAAWinEventWrap.cs
- ThreadExceptionEvent.cs
- TranslateTransform.cs
- DependencyPropertyValueSerializer.cs
- SqlCacheDependencyDatabase.cs
- EntityParameterCollection.cs
- TableRow.cs
- DelimitedListTraceListener.cs
- DataGridViewCellStyleConverter.cs
- DbConnectionClosed.cs
- securitycriticaldataformultiplegetandset.cs
- SafeMILHandle.cs
- SqlClientFactory.cs
- SystemFonts.cs
- Size3D.cs
- XPathAncestorQuery.cs
- RawStylusInput.cs
- PerfCounters.cs
- InputProcessorProfilesLoader.cs
- HttpServerVarsCollection.cs
- GenericAuthenticationEventArgs.cs
- ProfessionalColorTable.cs
- CalendarDataBindingHandler.cs
- References.cs
- AdornerDecorator.cs
- InvalidCardException.cs
- SecurityElement.cs
- InvalidCommandTreeException.cs
- BufferedOutputStream.cs
- TraceLevelStore.cs
- SqlErrorCollection.cs
- CellRelation.cs
- XmlWrappingReader.cs
- EventLogger.cs
- Convert.cs
- CrossAppDomainChannel.cs
- TextBoxRenderer.cs
- LineGeometry.cs
- DebuggerAttributes.cs
- Publisher.cs
- WindowsHyperlink.cs
- Regex.cs
- ButtonRenderer.cs
- FileSystemInfo.cs
- TaskFormBase.cs
- ItemContainerGenerator.cs
- TreeChangeInfo.cs
- AnnotationMap.cs
- ProcessModelInfo.cs
- Parser.cs
- StylusPointPropertyId.cs
- ProcessProtocolHandler.cs
- SAPIEngineTypes.cs