diff --git a/Headers/Vigenere.hpp b/Headers/Vigenere.hpp index fe6ac4a..f0f6a4f 100644 --- a/Headers/Vigenere.hpp +++ b/Headers/Vigenere.hpp @@ -1,7 +1,7 @@ //Ciphers/SourceFiles/Vigenere.hpp //Matthew Ellison // Created: 4-29-18 -//Modified; 4-29-18 +//Modified: 5-5-18 //This file contains the declaration of the Vigenere class #ifndef VIGENERE_HPP @@ -11,26 +11,26 @@ #include #include -///TODO: Might be able to make encoding and decoding faster for longer messages by actually using a grid of alphabets (Caesar Ciphers) + class Vigenere{ protected: std::string inputString; //This is the string that you want to encode or decode std::string outputString; //This is the string that is output from encoding or decoding std::string keyword; //This is the keyword that is the resposible for determining the offsets that you change each character by std::vector offset; //This holds the offsets computed from each character in the keyword - void setOffset(); + void setOffset(); //Uses keyword to calculate the offset for the Caesar cipher for each character + void setInputString(std::string input); + void setKeyword(std::string key); + std::string encode(); + std::string decode(); public: Vigenere(); ~Vigenere(); - void setInputString(std::string input); std::string getInputString() const; - std::string getOutputString() const; - void setKeyword(std::string key); + std::string getOutputString() const; std::string getKeyword() const; std::vector getOffsets() const; - std::string encode(); std::string encode(std::string key, std::string input); - std::string decode(); std::string decode(std::string key, std::string input); void reset(); };