Ignore:
Timestamp:
Feb 12, 2011, 2:41:26 PM (11 years ago)
Author:
Matthäus Wander
Message:

Code cleanup:

  • removed obsolete CryptoolStream from solution
  • removed obsolete DisplayLevel from PluginBase attributes
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrypPlugins/PlayfairAnalysis/PlayfairAnalysis.cs

    r2334 r2673  
    4242        private string inputString;
    4343        private string outputString;
    44         private List<CryptoolStream> listCryptoolStreamsOut = new List<CryptoolStream>();
    4544        private Thread playFairAttackThread;
    4645        private bool executionStopped;
     
    8685        */
    8786
    88         CryptoolStream csBigraphStatistic;
     87        ICryptoolStream csBigraphStatistic;
    8988        [PropertyInfo(Direction.InputData, "Bigraph Statistic", "Bigraph Statistic from Playfair Analysis Statistic Plugin", null)]
    90         public CryptoolStream CustomLogStat
     89        public ICryptoolStream CustomLogStat
    9190        {
    9291            get
    9392            {
    94                 if (this.csBigraphStatistic != null)
    95                 {
    96                     CryptoolStream cs = new CryptoolStream();
    97                     cs.OpenRead(this.csBigraphStatistic.FileName);
    98                     return cs;
    99                 }
    100                 return null;
     93                return csBigraphStatistic;
    10194            }
    10295
     
    130123
    131124        [PropertyInfo(Direction.OutputData, "CryptoolStream output", "The raw CryptoolStream data after playfair analysis", null)]
    132         public virtual CryptoolStream OutputData
     125        public virtual ICryptoolStream OutputData
    133126        {
    134127            get
    135128            {
    136                 if (outputString != null)
    137                 {
    138                     CryptoolStream cs = new CryptoolStream();
    139                     listCryptoolStreamsOut.Add(cs);
    140                     cs.OpenRead(Encoding.Default.GetBytes(outputString.ToCharArray()));
    141                     return cs;
    142                 }
    143                 else
    144                 {
    145                     return null;
    146                 }
     129                return new CStreamWriter(Encoding.Default.GetBytes(outputString.ToCharArray()));
    147130            }
    148131            set { }
     
    208191                int alphabetLength;
    209192                int offset = 0;
    210                 csBigraphStatistic = CustomLogStat;
    211 
    212                 alphabetLength = (int)csBigraphStatistic.Read(offset, 1)[0];
    213                 matrixSize = (int)(Math.Sqrt(alphabetLength));
    214 
    215                 BigraphStat = new Double[(int)Math.Pow(matrixSize, 2), (int)Math.Pow(matrixSize, 2)];
    216                 byte[] statisticBuffer = new byte[8 * BigraphStat.Length];
    217 
    218                 alphabet = "";
    219                 for (int i = 0; i < alphabetLength; i++)
    220                 {
    221                     alphabet += (char)csBigraphStatistic.Read(offset, 1)[0];
    222                 }
    223 
    224                
    225                 statisticBuffer = csBigraphStatistic.Read(offset, 8 * BigraphStat.Length);
    226                
    227 
    228                 for (int i = 0; i < (int)Math.Pow(matrixSize, 2); i++)
    229                 {                               
    230                     for (int j = 0; j < (int)Math.Pow(matrixSize, 2); j++)
    231                     {                       
    232                         BigraphStat[i, j] = BitConverter.ToDouble(statisticBuffer, offset);
    233                         offset += 8;
    234                     }                               
     193                using (CStreamReader reader = CustomLogStat.CreateReader())
     194                {
     195                    alphabetLength = (int)reader.ReadByte();
     196                    matrixSize = (int)(Math.Sqrt(alphabetLength));
     197
     198                    BigraphStat = new Double[(int)Math.Pow(matrixSize, 2), (int)Math.Pow(matrixSize, 2)];
     199                    byte[] statisticBuffer = new byte[8 * BigraphStat.Length];
     200
     201                    alphabet = "";
     202                    for (int i = 0; i < alphabetLength; i++)
     203                    {
     204                        alphabet += (char)reader.ReadByte();
     205                    }
     206
     207
     208                    reader.ReadFully(statisticBuffer, offset, 8 * BigraphStat.Length);
     209
     210
     211                    for (int i = 0; i < (int)Math.Pow(matrixSize, 2); i++)
     212                    {
     213                        for (int j = 0; j < (int)Math.Pow(matrixSize, 2); j++)
     214                        {
     215                            BigraphStat[i, j] = BitConverter.ToDouble(statisticBuffer, offset);
     216                            offset += 8;
     217                        }
     218                    }
    235219                }
    236220
     
    351335        public void Dispose()
    352336        {
    353             foreach (CryptoolStream stream in listCryptoolStreamsOut)
    354             {
    355                 stream.Close();
    356             }
    357             listCryptoolStreamsOut.Clear();
    358337        }
    359338
Note: See TracChangeset for help on using the changeset viewer.