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
- SqlMethodCallConverter.cs
- ExpressionBuilderCollection.cs
- HttpApplicationStateWrapper.cs
- SqlFacetAttribute.cs
- ErrorWebPart.cs
- ObjectMemberMapping.cs
- ComAwareEventInfo.cs
- LogStore.cs
- XPathParser.cs
- AnonymousIdentificationSection.cs
- XmlAttributeAttribute.cs
- ThreadStateException.cs
- PrintControllerWithStatusDialog.cs
- SmtpNegotiateAuthenticationModule.cs
- GorillaCodec.cs
- ClientTargetCollection.cs
- PublisherMembershipCondition.cs
- ObjectDataSourceMethodEventArgs.cs
- SqlGatherConsumedAliases.cs
- GetFileNameResult.cs
- SqlProfileProvider.cs
- Condition.cs
- shaperfactory.cs
- WaitHandle.cs
- NativeMethods.cs
- TextBox.cs
- TraceXPathNavigator.cs
- ClientSideQueueItem.cs
- AlternationConverter.cs
- List.cs
- HttpHandlerAction.cs
- AnnotationAdorner.cs
- StructuralType.cs
- ScriptingRoleServiceSection.cs
- MembershipPasswordException.cs
- ScaleTransform.cs
- Timer.cs
- SystemInfo.cs
- ObjectResult.cs
- SupportingTokenListenerFactory.cs
- Classification.cs
- PointValueSerializer.cs
- AttributeInfo.cs
- RunWorkerCompletedEventArgs.cs
- GacUtil.cs
- ObjectListFieldsPage.cs
- CallContext.cs
- GeometryGroup.cs
- XsdValidatingReader.cs
- documentsequencetextview.cs
- NetStream.cs
- DiscoveryClientProtocol.cs
- ToolStripKeyboardHandlingService.cs
- ElapsedEventArgs.cs
- CharStorage.cs
- OneToOneMappingSerializer.cs
- ObjectListFieldsPage.cs
- PrinterUnitConvert.cs
- TableSectionStyle.cs
- ProfileProvider.cs
- ServiceOperationInfoTypeConverter.cs
- PartialCachingControl.cs
- FormViewPagerRow.cs
- SqlCommand.cs
- TaskFactory.cs
- Range.cs
- StringSource.cs
- DelegateCompletionCallbackWrapper.cs
- ErasingStroke.cs
- BoundPropertyEntry.cs
- FunctionNode.cs
- ListView.cs
- ISAPIRuntime.cs
- XmlName.cs
- AttachedAnnotation.cs
- TrustManagerPromptUI.cs
- OleDbPropertySetGuid.cs
- DiscreteKeyFrames.cs
- OleDbRowUpdatedEvent.cs
- MenuItemBindingCollection.cs
- PersonalizationProviderHelper.cs
- SqlTypeConverter.cs
- DataGridView.cs
- MonthChangedEventArgs.cs
- TypeSystem.cs
- LoginName.cs
- ConfigXmlComment.cs
- IHttpResponseInternal.cs
- PropertyStore.cs
- MetadataFile.cs
- CalendarButtonAutomationPeer.cs
- HttpHandlerActionCollection.cs
- _ConnectStream.cs
- XmlSerializationReader.cs
- HttpModuleAction.cs
- ViewBase.cs
- LicenseContext.cs
- NetSectionGroup.cs
- RouteCollection.cs
- RegexMatchCollection.cs