Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  ICoder.cs   Sprache: CS

 
// ICoder.h

using System;

namespace SevenZip
{
 /// <summary>
 /// The exception that is thrown when an error in input stream occurs during decoding.
 /// </summary>
 class DataErrorException : ApplicationException
 {
  public DataErrorException(): base("Data Error") { }
 }

 /// <summary>
 /// The exception that is thrown when the value of an argument is outside the allowable range.
 /// </summary>
 class InvalidParamException : ApplicationException
 {
  public InvalidParamException(): base("Invalid Parameter") { }
 }

 public interface ICodeProgress
 {
  /// <summary>
  /// Callback progress.
  /// </summary>
  /// <param name="inSize">
  /// input size. -1 if unknown.
  /// </param>
  /// <param name="outSize">
  /// output size. -1 if unknown.
  /// </param>
  void SetProgress(Int64 inSize, Int64 outSize);
 };

 public interface ICoder
 {
  /// <summary>
  /// Codes streams.
  /// </summary>
  /// <param name="inStream">
  /// input Stream.
  /// </param>
  /// <param name="outStream">
  /// output Stream.
  /// </param>
  /// <param name="inSize">
  /// input Size. -1 if unknown.
  /// </param>
  /// <param name="outSize">
  /// output Size. -1 if unknown.
  /// </param>
  /// <param name="progress">
  /// callback progress reference.
  /// </param>
  /// <exception cref="SevenZip.DataErrorException">
  /// if input stream is not valid
  /// </exception>
  void Code(System.IO.Stream inStream, System.IO.Stream outStream,
   Int64 inSize, Int64 outSize, ICodeProgress progress);
 };

 /*
public interface ICoder2
{
 void Code(ISequentialInStream []inStreams,
const UInt64 []inSizes, 
ISequentialOutStream []outStreams, 
UInt64 []outSizes,
ICodeProgress progress);
};
  */


 /// <summary>
 /// Provides the fields that represent properties idenitifiers for compressing.
 /// </summary>
 public enum CoderPropID
 {
  /// <summary>
  /// Specifies default property.
  /// </summary>
  DefaultProp = 0,
  /// <summary>
  /// Specifies size of dictionary.
  /// </summary>
  DictionarySize,
  /// <summary>
  /// Specifies size of memory for PPM*.
  /// </summary>
  UsedMemorySize,
  /// <summary>
  /// Specifies order for PPM methods.
  /// </summary>
  Order,
  /// <summary>
  /// Specifies Block Size.
  /// </summary>
  BlockSize,
  /// <summary>
  /// Specifies number of postion state bits for LZMA (0 <= x <= 4).
  /// </summary>
  PosStateBits,
  /// <summary>
  /// Specifies number of literal context bits for LZMA (0 <= x <= 8).
  /// </summary>
  LitContextBits,
  /// <summary>
  /// Specifies number of literal position bits for LZMA (0 <= x <= 4).
  /// </summary>
  LitPosBits,
  /// <summary>
  /// Specifies number of fast bytes for LZ*.
  /// </summary>
  NumFastBytes,
  /// <summary>
  /// Specifies match finder. LZMA: "BT2", "BT4" or "BT4B".
  /// </summary>
  MatchFinder,
  /// <summary>
  /// Specifies the number of match finder cyckes.
  /// </summary>
  MatchFinderCycles,
  /// <summary>
  /// Specifies number of passes.
  /// </summary>
  NumPasses,
  /// <summary>
  /// Specifies number of algorithm.
  /// </summary>
  Algorithm,
  /// <summary>
  /// Specifies the number of threads.
  /// </summary>
  NumThreads,
  /// <summary>
  /// Specifies mode with end marker.
  /// </summary>
  EndMarker
 };


 public interface ISetCoderProperties
 {
  void SetCoderProperties(CoderPropID[] propIDs, object[] properties);
 };

 public interface IWriteCoderProperties
 {
  void WriteCoderProperties(System.IO.Stream outStream);
 }

 public interface ISetDecoderProperties
 {
  void SetDecoderProperties(byte[] properties);
 }
}

Messung V0.5
C=69 H=98 G=84

¤ Dauer der Verarbeitung: 0.12 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge