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
- PropertyMapper.cs
- ContextQuery.cs
- LineUtil.cs
- GridToolTip.cs
- GAC.cs
- SQLString.cs
- HwndStylusInputProvider.cs
- RegexMatchCollection.cs
- _UriSyntax.cs
- LinkedResourceCollection.cs
- AmbientProperties.cs
- DataGridViewTopLeftHeaderCell.cs
- Rijndael.cs
- DefaultEventAttribute.cs
- Membership.cs
- FixedSOMGroup.cs
- CreateUserErrorEventArgs.cs
- FormViewRow.cs
- SrgsNameValueTag.cs
- Rotation3DAnimationBase.cs
- ArglessEventHandlerProxy.cs
- MultiView.cs
- EdmFunction.cs
- TypeDescriptorFilterService.cs
- InfoCardServiceInstallComponent.cs
- CompilerParameters.cs
- xsdvalidator.cs
- ToolStripItemEventArgs.cs
- SystemColorTracker.cs
- CatalogZoneBase.cs
- ReferenceSchema.cs
- SynchronizedDispatch.cs
- _KerberosClient.cs
- EntityViewContainer.cs
- DLinqDataModelProvider.cs
- FileVersionInfo.cs
- EntityDataSourceContextCreatingEventArgs.cs
- SessionStateSection.cs
- RegexMatch.cs
- DataObjectCopyingEventArgs.cs
- TextDecoration.cs
- VersionedStream.cs
- DataGridViewColumnHeaderCell.cs
- BuiltInExpr.cs
- XmlSequenceWriter.cs
- WorkflowDesignerMessageFilter.cs
- Variable.cs
- SiteMapDataSource.cs
- ByteKeyFrameCollection.cs
- DataRecordInternal.cs
- HttpHandlersSection.cs
- IndexerNameAttribute.cs
- AsyncOperation.cs
- Currency.cs
- WmfPlaceableFileHeader.cs
- FontInfo.cs
- State.cs
- HMACRIPEMD160.cs
- CodeAccessSecurityEngine.cs
- PrtCap_Public.cs
- DrawListViewSubItemEventArgs.cs
- PeerPresenceInfo.cs
- WhitespaceSignificantCollectionAttribute.cs
- GrammarBuilderRuleRef.cs
- SiteMap.cs
- PathFigureCollection.cs
- ReadOnlyMetadataCollection.cs
- GlobalizationAssembly.cs
- CancellationState.cs
- CodeCastExpression.cs
- DBSchemaTable.cs
- ObfuscationAttribute.cs
- Tablet.cs
- VisualStyleInformation.cs
- Closure.cs
- SchemaObjectWriter.cs
- PublisherMembershipCondition.cs
- TransformCryptoHandle.cs
- ObjectAnimationUsingKeyFrames.cs
- StringConcat.cs
- Sentence.cs
- UnionCodeGroup.cs
- X509UI.cs
- TranslateTransform.cs
- UnsignedPublishLicense.cs
- CreateDataSourceDialog.cs
- SmtpException.cs
- HandlerMappingMemo.cs
- Pointer.cs
- ButtonStandardAdapter.cs
- InputBindingCollection.cs
- _KerberosClient.cs
- TimeSpanMinutesConverter.cs
- EventManager.cs
- SizeLimitedCache.cs
- NonBatchDirectoryCompiler.cs
- CurrencyManager.cs
- TemplateXamlTreeBuilder.cs
- DoubleIndependentAnimationStorage.cs
- StringDictionary.cs