/**
 * 最初の著者:: トゥイー
 * リポジトリ情報:: $Id: Context.hpp 24 2011-05-10 02:27:07Z yutaka_at_home $
 * 著作権:: Copyright (C) Ownway.info, 2011. All rights reserved.
 * ライセンス:: CPL(Common Public Licence)
 */

#ifndef _SPEECH_CONTROLLER_FRAMEWORK_CORE_CONTEXT_HPP_
#define _SPEECH_CONTROLLER_FRAMEWORK_CORE_CONTEXT_HPP_

#include <string>
#include <boost/any.hpp>

namespace spcf {

	class Context_i;

	class Context {
	private:
		Context_i* impl;

	public:
		Context();
		virtual ~Context();

	private:
		Context(const Context& context);
		Context& operator=(const Context& context);

	public:
		boost::any getProperty(const std::string& name) const;
		void setProperty(const std::string& name, const boost::any& value);
	};

}  // namespace spcf

#endif
