⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 encoderimplfactory.h

📁 这是一个基于VS2003开发的数据加密和解密的程序
💻 H
字号:
/*!
	\file EncoderImplFactory.h
	\author Jackson
	\date 13/1/2005
*/

#ifndef _LUCID_ENCRYPTION_ENCODERIMPLFACTORY_H_
#define _LUCID_ENCRYPTION_ENCODERIMPLFACTORY_H_

#include "ShareLib.h"

#include "EncodeAlgorithm.h"

namespace Lucid {

namespace Encryption {

class TEncoderImplBase;
class TDigestImplBase;

//! \class TEncoderImplFactory
/*!
	\brief Factory class create encoder implementation
*/
class TEncoderImplFactory {
public:

	/*!
		\brief get encoder implementation factory singleton
	*/
	static TEncoderImplFactory& GetSingleton() {
		static TEncoderImplFactory factory;
		return factory;
	}

	/*!
		\brief create encoder implementation
		\param key key for encryption
		\param key_length length of key
		\param iv initial vector encryption
		\param iv_length length of initial vector
		\param algorithm encode algorithm used
	*/
	TEncoderImplBase* CreateEncoderImpl(const unsigned char* key, unsigned int key_length, const unsigned char* iv = 0, unsigned int iv_length = 0, TEncodeAlgorithm algorithm = NO_ENCODE);
    TDigestImplBase* CreateDigestImpl(THashAlgorithm algorithm = NO_DIGEST);

private:
	TEncoderImplFactory() {}
	TEncoderImplFactory(const TEncoderImplFactory&);
	TEncoderImplFactory& operator=(const TEncoderImplFactory&);
	~TEncoderImplFactory() {}
};

#define ENCODER_IMPL_FACTORY TEncoderImplFactory::GetSingleton()

}

}

#endif	// _LUCID_ENCRYPTION_ENCODERIMPLFACTORY_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -