// header file:   Expander.hpp
// description:   Concrete Coder class used as an example for compression.
//                Design pattern: Strategy, concrete strategy.
// author:        Karlheinz Hug
// creation date: 2012-07-05
// last update:   2012-07-10

#ifndef EXPANDER_HPP_
#define EXPANDER_HPP_

#include "Coder.hpp"

	class Expander : public Coder
	{
		public:
			virtual void encode (const std::vector<char> & source_buffer, std::vector<char> & target_buffer);
			virtual void decode (const std::vector<char> & source_buffer, std::vector<char> & target_buffer);
				// 'result()' may be 'failed_decode'.
	};

#endif // EXPANDER_HPP_
