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
- ProfilePropertySettings.cs
- AuthenticationManager.cs
- BindingNavigatorDesigner.cs
- Control.cs
- FontInfo.cs
- UnaryNode.cs
- UrlAuthorizationModule.cs
- ObjectStateEntry.cs
- CustomErrorCollection.cs
- Cursors.cs
- EditorZoneBase.cs
- linebase.cs
- Compiler.cs
- BrowserDefinition.cs
- ContextQuery.cs
- TerminateSequence.cs
- OleDbRowUpdatingEvent.cs
- HttpListenerResponse.cs
- TextEditorCopyPaste.cs
- CodeActivityMetadata.cs
- StyleXamlTreeBuilder.cs
- TreeNodeSelectionProcessor.cs
- InputManager.cs
- WebHeaderCollection.cs
- DocumentEventArgs.cs
- AsyncResult.cs
- RouteUrlExpressionBuilder.cs
- HttpListenerRequest.cs
- XmlRawWriterWrapper.cs
- DaylightTime.cs
- ButtonColumn.cs
- TextSchema.cs
- FixUpCollection.cs
- ReferenceEqualityComparer.cs
- SendMailErrorEventArgs.cs
- ContentElement.cs
- ISO2022Encoding.cs
- ReachPrintTicketSerializer.cs
- SqlUserDefinedAggregateAttribute.cs
- ServiceNameElement.cs
- KeyBinding.cs
- XPathMessageFilterElementComparer.cs
- XPathItem.cs
- CompositeDataBoundControl.cs
- XmlHelper.cs
- CountAggregationOperator.cs
- XmlSchemaSubstitutionGroup.cs
- SQLByteStorage.cs
- XmlSiteMapProvider.cs
- counter.cs
- OnOperation.cs
- RecordConverter.cs
- AssociationSet.cs
- XmlWriter.cs
- ResXBuildProvider.cs
- _DisconnectOverlappedAsyncResult.cs
- DPAPIProtectedConfigurationProvider.cs
- TimerElapsedEvenArgs.cs
- CommandCollectionEditor.cs
- HtmlEmptyTagControlBuilder.cs
- TemplateControlBuildProvider.cs
- DesignerSerializationVisibilityAttribute.cs
- AnchoredBlock.cs
- CultureInfo.cs
- GeometryDrawing.cs
- COM2Properties.cs
- OdbcDataReader.cs
- SqlNodeAnnotation.cs
- EventProviderWriter.cs
- QilInvoke.cs
- TemplateAction.cs
- PhysicalOps.cs
- CultureTable.cs
- VisualBasic.cs
- AssemblyBuilder.cs
- Int32CollectionValueSerializer.cs
- TableCellCollection.cs
- Triangle.cs
- List.cs
- ThemeInfoAttribute.cs
- WeakRefEnumerator.cs
- BufferBuilder.cs
- RegexCaptureCollection.cs
- NamespaceCollection.cs
- SelectionHighlightInfo.cs
- InkCanvas.cs
- XmlSchemaSequence.cs
- CheckBoxStandardAdapter.cs
- ResourceDictionaryCollection.cs
- FixedSchema.cs
- CodeTypeDeclarationCollection.cs
- UrlPath.cs
- TerminateWorkflow.cs
- AspCompat.cs
- Int32CollectionConverter.cs
- PolicyException.cs
- ProvidersHelper.cs
- RawStylusInputCustomDataList.cs
- SafeNativeMethods.cs
- AuthenticationConfig.cs