Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / 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-[....], // 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
- ManagedFilter.cs
- PackageRelationship.cs
- XPathBinder.cs
- CfgRule.cs
- DesignerObjectListAdapter.cs
- PolyQuadraticBezierSegment.cs
- FreezableCollection.cs
- XmlSchemaNotation.cs
- NamespaceCollection.cs
- _SslSessionsCache.cs
- DataMemberFieldEditor.cs
- DateTimeStorage.cs
- UInt64Converter.cs
- ClickablePoint.cs
- Context.cs
- FeatureSupport.cs
- CheckPair.cs
- SafeNativeMethodsCLR.cs
- DispatcherEventArgs.cs
- UniformGrid.cs
- LightweightCodeGenerator.cs
- ParagraphVisual.cs
- TiffBitmapEncoder.cs
- XmlMembersMapping.cs
- AxisAngleRotation3D.cs
- ProfileService.cs
- FloaterParagraph.cs
- OleDbParameterCollection.cs
- JumpTask.cs
- BamlLocalizer.cs
- MinimizableAttributeTypeConverter.cs
- DSASignatureFormatter.cs
- DataGridViewButtonCell.cs
- DrawingContextDrawingContextWalker.cs
- NamedPipeProcessProtocolHandler.cs
- List.cs
- LoginDesignerUtil.cs
- TableRowGroup.cs
- NestedContainer.cs
- GridViewColumn.cs
- RecognizedWordUnit.cs
- ClientEventManager.cs
- SqlBulkCopyColumnMapping.cs
- NavigatorInvalidBodyAccessException.cs
- DataMisalignedException.cs
- URLMembershipCondition.cs
- DataFormats.cs
- DocumentViewerConstants.cs
- ListBoxChrome.cs
- TemplateControlBuildProvider.cs
- SourceInterpreter.cs
- Int16Converter.cs
- WindowsGraphicsCacheManager.cs
- EventEntry.cs
- HuffmanTree.cs
- SpeechEvent.cs
- TreeView.cs
- TimersDescriptionAttribute.cs
- TableNameAttribute.cs
- SharedPerformanceCounter.cs
- DataSourceCache.cs
- FactorySettingsElement.cs
- StateMachine.cs
- MappingItemCollection.cs
- PictureBox.cs
- MatrixCamera.cs
- SplashScreenNativeMethods.cs
- Lookup.cs
- ReferenceService.cs
- BitmapPalette.cs
- FrameAutomationPeer.cs
- EdmItemCollection.cs
- ConfigXmlCDataSection.cs
- PropertyCollection.cs
- Logging.cs
- Debug.cs
- VisualBasicImportReference.cs
- Column.cs
- Underline.cs
- ViewRendering.cs
- CompilerWrapper.cs
- TextSyndicationContent.cs
- SessionKeyExpiredException.cs
- RoleGroup.cs
- AssemblySettingAttributes.cs
- UnsettableComboBox.cs
- PageWrapper.cs
- Nodes.cs
- LambdaReference.cs
- DesignBindingPropertyDescriptor.cs
- ExpanderAutomationPeer.cs
- ScaleTransform.cs
- TransformerConfigurationWizardBase.cs
- XmlTextEncoder.cs
- XpsDigitalSignature.cs
- SubMenuStyleCollectionEditor.cs
- AuthenticatedStream.cs
- MemberAssignment.cs
- SspiSafeHandles.cs
- OrderedDictionary.cs