/* This is a frequency sustitution implementation by Sourena Maroofi THIS IS AN EXPERIMENTAL VERSION...USE IT AT YOUR OWN RISK. */ #include #include #include #ifndef freqsub_h #include "freqsub.h" #endif using namespace std; /********************************************************************************/ freqsub::freqsub(void) { // inputFile="b.txt"; //outputFile="c.txt"; codec=true; //encoding mode default } /********************************************************************************/ int freqsub::freqsub_encode(void) { ifstream inFile; inFile.open(inputFile,ios::in|ios::binary); if (!inFile.is_open()) { cout<count=0; (st+i)->used=false; } unsigned char * byte; byte=new unsigned char [1]; unsigned long int sizef; inFile.seekg(0,ios::end); sizef=inFile.tellg(); cout<<"file size is : "<count)++; y++; } inFile.seekg(0,ios::beg); int i=0; unsigned char *b_array=new unsigned char [256]; while(i<256) { b_array[i]=(unsigned char)find_max(); i++; } unsigned char *c_array=new unsigned char[256]; for(int i=0;i<256;i++) { c_array[b_array[i]]=i; } outFile.write((char *)b_array,256); y=0; while (y=max && st[i].used==false) { max=st[i].count; j=i; } } st[j].used=true; return j; } /********************************************************************************/