Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / MS / Internal / Ink / InkSerializedFormat / HuffModule.cs / 1305600 / HuffModule.cs
using MS.Utility; using System; using System.Runtime.InteropServices; using System.Security; using System.Globalization; using System.Windows; using System.Windows.Input; using System.Windows.Ink; using MS.Internal.Ink.InkSerializedFormat; using System.Collections.Generic; using SR = MS.Internal.PresentationCore.SR; using SRID = MS.Internal.PresentationCore.SRID; namespace MS.Internal.Ink.InkSerializedFormat { ////// HuffModule /// internal class HuffModule { ////// Ctor /// internal HuffModule() { } ////// GetDefCodec /// internal HuffCodec GetDefCodec(uint index) { HuffCodec huffCodec = null; if (AlgoModule.DefaultBAACount > index) { huffCodec = _defaultHuffCodecs[index]; if (huffCodec == null) { huffCodec = new HuffCodec(index); _defaultHuffCodecs[index] = huffCodec; } } else { throw new ArgumentOutOfRangeException("index"); } return huffCodec; } ////// FindCodec /// /// internal HuffCodec FindCodec(byte algoData) { byte codec = (byte)(algoData & 0x1f); //unused //if ((0x20 & algoData) != 0) //{ // int iLookup = (algoData & 0x1f); // if ((iLookup > 0) && (iLookup <= _lookupList.Count)) // { // codec = _lookupList[iLookup - 1].Byte; // } //} if (codec < AlgoModule.DefaultBAACount) { return GetDefCodec((uint)codec); } if ((int)codec >= _huffCodecs.Count + AlgoModule.DefaultBAACount) { throw new ArgumentException(StrokeCollectionSerializer.ISFDebugMessage("invalid codec computed")); } return _huffCodecs[(int)(codec - AlgoModule.DefaultBAACount)]; } ////// FindDtXf /// /// internal DataXform FindDtXf(byte algoData) { //unused //if ((0x20 & algoData) != 0) //{ // int lookupIndex = (int)(algoData & 0x1f); // if ((lookupIndex > 0) && (lookupIndex < _lookupList.Count)) // { // return _lookupList[lookupIndex].DeltaDelta; // } //} return this.DefaultDeltaDelta; } ////// Private lazy init'd /// private DeltaDelta DefaultDeltaDelta { get { if (_defaultDtxf == null) { _defaultDtxf = new DeltaDelta(); } return _defaultDtxf; } } ////// Privates /// private DeltaDelta _defaultDtxf; //unused //private List_lookupList = new List (); private List _huffCodecs = new List (); private HuffCodec[] _defaultHuffCodecs = new HuffCodec[AlgoModule.DefaultBAACount]; //unused ///// ///// Simple helper class ///// //private class CodeLookup //{ // internal CodeLookup(DeltaDelta dd, byte b) // { // if (dd == null) { throw new ArgumentNullException(); } // DeltaDelta = dd; // Byte = b; // } // internal DeltaDelta DeltaDelta; // internal Byte Byte; //} } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using MS.Utility; using System; using System.Runtime.InteropServices; using System.Security; using System.Globalization; using System.Windows; using System.Windows.Input; using System.Windows.Ink; using MS.Internal.Ink.InkSerializedFormat; using System.Collections.Generic; using SR = MS.Internal.PresentationCore.SR; using SRID = MS.Internal.PresentationCore.SRID; namespace MS.Internal.Ink.InkSerializedFormat { ////// HuffModule /// internal class HuffModule { ////// Ctor /// internal HuffModule() { } ////// GetDefCodec /// internal HuffCodec GetDefCodec(uint index) { HuffCodec huffCodec = null; if (AlgoModule.DefaultBAACount > index) { huffCodec = _defaultHuffCodecs[index]; if (huffCodec == null) { huffCodec = new HuffCodec(index); _defaultHuffCodecs[index] = huffCodec; } } else { throw new ArgumentOutOfRangeException("index"); } return huffCodec; } ////// FindCodec /// /// internal HuffCodec FindCodec(byte algoData) { byte codec = (byte)(algoData & 0x1f); //unused //if ((0x20 & algoData) != 0) //{ // int iLookup = (algoData & 0x1f); // if ((iLookup > 0) && (iLookup <= _lookupList.Count)) // { // codec = _lookupList[iLookup - 1].Byte; // } //} if (codec < AlgoModule.DefaultBAACount) { return GetDefCodec((uint)codec); } if ((int)codec >= _huffCodecs.Count + AlgoModule.DefaultBAACount) { throw new ArgumentException(StrokeCollectionSerializer.ISFDebugMessage("invalid codec computed")); } return _huffCodecs[(int)(codec - AlgoModule.DefaultBAACount)]; } ////// FindDtXf /// /// internal DataXform FindDtXf(byte algoData) { //unused //if ((0x20 & algoData) != 0) //{ // int lookupIndex = (int)(algoData & 0x1f); // if ((lookupIndex > 0) && (lookupIndex < _lookupList.Count)) // { // return _lookupList[lookupIndex].DeltaDelta; // } //} return this.DefaultDeltaDelta; } ////// Private lazy init'd /// private DeltaDelta DefaultDeltaDelta { get { if (_defaultDtxf == null) { _defaultDtxf = new DeltaDelta(); } return _defaultDtxf; } } ////// Privates /// private DeltaDelta _defaultDtxf; //unused //private List_lookupList = new List (); private List _huffCodecs = new List (); private HuffCodec[] _defaultHuffCodecs = new HuffCodec[AlgoModule.DefaultBAACount]; //unused ///// ///// Simple helper class ///// //private class CodeLookup //{ // internal CodeLookup(DeltaDelta dd, byte b) // { // if (dd == null) { throw new ArgumentNullException(); } // DeltaDelta = dd; // Byte = b; // } // internal DeltaDelta DeltaDelta; // internal Byte Byte; //} } } // 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
- PrePrepareMethodAttribute.cs
- UserControlBuildProvider.cs
- Wildcard.cs
- DiagnosticTraceSource.cs
- CalendarTable.cs
- OrderingQueryOperator.cs
- HttpWebRequestElement.cs
- SimpleType.cs
- TypeNameConverter.cs
- XPathException.cs
- columnmapfactory.cs
- ListItemCollection.cs
- HtmlContainerControl.cs
- SharedPerformanceCounter.cs
- ChineseLunisolarCalendar.cs
- SessionStateContainer.cs
- XmlQueryType.cs
- ColorKeyFrameCollection.cs
- Dump.cs
- HttpCookie.cs
- UnsafeNativeMethodsTablet.cs
- ToolStripTextBox.cs
- NullableLongSumAggregationOperator.cs
- AstTree.cs
- PipelineModuleStepContainer.cs
- RuleSettingsCollection.cs
- WaitHandleCannotBeOpenedException.cs
- InheritanceUI.cs
- RecognitionResult.cs
- ThreadStateException.cs
- FragmentNavigationEventArgs.cs
- OdbcDataReader.cs
- EpmCustomContentWriterNodeData.cs
- SocketCache.cs
- JavaScriptSerializer.cs
- SoapClientProtocol.cs
- TypeDescriptionProvider.cs
- Win32KeyboardDevice.cs
- Action.cs
- TextBox.cs
- Tuple.cs
- EntityContainerEntitySet.cs
- TemporaryBitmapFile.cs
- WebHeaderCollection.cs
- LinearKeyFrames.cs
- DesignerDataSourceView.cs
- figurelength.cs
- __ComObject.cs
- PublisherIdentityPermission.cs
- RuntimeCompatibilityAttribute.cs
- DetailsViewPagerRow.cs
- Label.cs
- WebUtility.cs
- WebPartsSection.cs
- DataGridViewColumnTypeEditor.cs
- _AutoWebProxyScriptWrapper.cs
- SQLMoney.cs
- XmlDocumentFragment.cs
- InternalUserCancelledException.cs
- ControlTemplate.cs
- BinaryObjectInfo.cs
- _BaseOverlappedAsyncResult.cs
- MouseButton.cs
- TextViewBase.cs
- XmlSchemaProviderAttribute.cs
- SerializerProvider.cs
- XsltQilFactory.cs
- WindowsSpinner.cs
- LicFileLicenseProvider.cs
- MimeFormatter.cs
- DataListItem.cs
- ChannelManagerHelpers.cs
- DataGridHelper.cs
- XmlSchemaRedefine.cs
- DocumentReference.cs
- SqlConnectionStringBuilder.cs
- ManagementObjectSearcher.cs
- MimeXmlImporter.cs
- Match.cs
- Subtract.cs
- NamedObject.cs
- DoubleLinkListEnumerator.cs
- ImpersonationOption.cs
- Parser.cs
- ProtocolsInstallComponent.cs
- GridViewCancelEditEventArgs.cs
- ListViewGroupConverter.cs
- IdentifierService.cs
- GacUtil.cs
- TreeBuilder.cs
- WebDisplayNameAttribute.cs
- LinkLabelLinkClickedEvent.cs
- Slider.cs
- XamlGridLengthSerializer.cs
- OperatingSystem.cs
- DesignerAttribute.cs
- WinCategoryAttribute.cs
- WmlLiteralTextAdapter.cs
- Int32Rect.cs
- AmbientLight.cs