Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / 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
- Enum.cs
- FileReader.cs
- ListViewPagedDataSource.cs
- DataGridAddNewRow.cs
- MachineKeySection.cs
- BinaryMessageEncodingElement.cs
- ScriptComponentDescriptor.cs
- AttributeAction.cs
- DrawListViewSubItemEventArgs.cs
- BlurBitmapEffect.cs
- Viewport3DAutomationPeer.cs
- DllNotFoundException.cs
- XsltOutput.cs
- PatternMatcher.cs
- XmlDeclaration.cs
- BoundsDrawingContextWalker.cs
- Registry.cs
- RequestCache.cs
- MetafileHeader.cs
- InheritanceUI.cs
- RelationshipConverter.cs
- SerializationFieldInfo.cs
- PeerNameResolver.cs
- Privilege.cs
- RemoteEndpointMessageProperty.cs
- Stack.cs
- HttpClientChannel.cs
- ExtendedProperty.cs
- HttpRequest.cs
- NullableLongMinMaxAggregationOperator.cs
- FileCodeGroup.cs
- AnimationLayer.cs
- LineVisual.cs
- CryptographicAttribute.cs
- ActivityCodeGenerator.cs
- IPEndPoint.cs
- StylusPointPropertyId.cs
- LocalBuilder.cs
- IPAddressCollection.cs
- X500Name.cs
- SemanticKeyElement.cs
- ListDataBindEventArgs.cs
- TreeNode.cs
- PnrpPermission.cs
- Int32.cs
- ClipboardData.cs
- XamlRtfConverter.cs
- DataViewManager.cs
- DesignerActionVerbList.cs
- BaseParaClient.cs
- ObfuscateAssemblyAttribute.cs
- MultipleViewPattern.cs
- KeyGesture.cs
- IPCCacheManager.cs
- DataPagerFieldItem.cs
- Size3D.cs
- CodeStatement.cs
- safesecurityhelperavalon.cs
- MobileResource.cs
- ProgressBarRenderer.cs
- SourceSwitch.cs
- InternalBufferOverflowException.cs
- StylusPointProperty.cs
- InputScopeNameConverter.cs
- DataMemberConverter.cs
- SymmetricSecurityBindingElement.cs
- Point3DAnimationUsingKeyFrames.cs
- SimpleLine.cs
- SqlTopReducer.cs
- TrustManager.cs
- Visual3DCollection.cs
- Classification.cs
- AddingNewEventArgs.cs
- CompiledQueryCacheKey.cs
- ValueChangedEventManager.cs
- FixedDocumentPaginator.cs
- HostedTransportConfigurationManager.cs
- mansign.cs
- InfoCardTrace.cs
- WebEvents.cs
- ChannelManagerBase.cs
- HttpCachePolicyElement.cs
- MethodAccessException.cs
- CorrelationToken.cs
- ToolboxItem.cs
- WebConfigurationHostFileChange.cs
- RayMeshGeometry3DHitTestResult.cs
- RtType.cs
- LinearGradientBrush.cs
- SpecialNameAttribute.cs
- LinqDataSourceContextEventArgs.cs
- FontDialog.cs
- StructuredTypeEmitter.cs
- BindableTemplateBuilder.cs
- PathSegment.cs
- DbMetaDataCollectionNames.cs
- DefaultParameterValueAttribute.cs
- MenuItemStyleCollection.cs
- SplitterCancelEvent.cs
- InkCanvas.cs