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
- SHA384.cs
- TargetParameterCountException.cs
- RootProfilePropertySettingsCollection.cs
- ButtonFlatAdapter.cs
- EntityType.cs
- InvokeGenerator.cs
- SynchronizedDispatch.cs
- EntityTypeEmitter.cs
- sqlcontext.cs
- ColorTransform.cs
- Transform.cs
- SoapProtocolImporter.cs
- RectAnimation.cs
- SiteMapNodeItemEventArgs.cs
- WebPartHelpVerb.cs
- TextTreeExtractElementUndoUnit.cs
- ImageConverter.cs
- ChangePassword.cs
- DeviceFilterEditorDialog.cs
- Splitter.cs
- TextBoxLine.cs
- HealthMonitoringSection.cs
- MetabaseSettings.cs
- UpDownEvent.cs
- ExceptionHandler.cs
- Substitution.cs
- Drawing.cs
- CheckedListBox.cs
- ClientBuildManager.cs
- BrowserDefinition.cs
- XmlFormatReaderGenerator.cs
- EdmPropertyAttribute.cs
- ElementNotAvailableException.cs
- mongolianshape.cs
- EmulateRecognizeCompletedEventArgs.cs
- IndentedWriter.cs
- StylusDownEventArgs.cs
- HostProtectionException.cs
- DocumentCollection.cs
- PropertyEmitter.cs
- ListViewHitTestInfo.cs
- DataServiceRequest.cs
- VisualTarget.cs
- Profiler.cs
- SchemaTableOptionalColumn.cs
- ClientConfigurationSystem.cs
- ContractUtils.cs
- RegistryPermission.cs
- Column.cs
- Span.cs
- XmlQuerySequence.cs
- DetailsViewDeleteEventArgs.cs
- FlagsAttribute.cs
- RuleProcessor.cs
- RepeatBehaviorConverter.cs
- SystemMulticastIPAddressInformation.cs
- MsmqBindingElementBase.cs
- Vector.cs
- ICspAsymmetricAlgorithm.cs
- WindowsFormsHost.cs
- XmlSerializationReader.cs
- HandlerFactoryCache.cs
- UIElement3D.cs
- ConfigXmlDocument.cs
- SignedInfo.cs
- DataSourceView.cs
- IntSecurity.cs
- DataKey.cs
- DocumentViewer.cs
- TableLayoutStyle.cs
- SafeCryptoHandles.cs
- CodeDefaultValueExpression.cs
- TableRowGroup.cs
- PolicyUtility.cs
- SpeechRecognitionEngine.cs
- ListViewTableRow.cs
- InputBinding.cs
- ConsoleEntryPoint.cs
- Point4D.cs
- InkSerializer.cs
- HtmlImage.cs
- ShaderEffect.cs
- ValidationHelpers.cs
- Int64.cs
- PageThemeBuildProvider.cs
- CodeCatchClauseCollection.cs
- PagedDataSource.cs
- ListViewGroupItemCollection.cs
- SerialPort.cs
- CompareInfo.cs
- Console.cs
- GetUserPreferenceRequest.cs
- NumericUpDown.cs
- IdentityNotMappedException.cs
- IIS7UserPrincipal.cs
- AccessKeyManager.cs
- FocusTracker.cs
- StreamGeometryContext.cs
- WebPartMenuStyle.cs
- _SSPIWrapper.cs