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

📄 register.h

📁 瑞星微公司RK27XX系列芯片的SDK开发包
💻 H
字号:
/******************************************************************/
/*   Copyright (C) 2007 ROCK-CHIPS FUZHOU . All Rights Reserved.  */
/*******************************************************************
File     :  register.h
Desc     :  定义系统注册表的操作函数.

Author  : huangsl
Date     : 2007-06-21
Notes   :

$Log: register.h,v $
Revision 1.4  2008/01/07 12:52:18  Huangshilin
no message

Revision 1.3  2007/10/11 04:08:11  Huangshilin
System\os

Revision 1.2  2007/10/08 02:56:23  Lingzhaojun
添加版本自动注释脚本

* huangsl             2007-06-21      利用window的思想,通过注册表来配置系统.
*
*********************************************************************/
#ifndef _OS_IREGISTER_H
#define _OS_IREGISTER_H
/********************************************************************/

/********************************************************************/

#define     REGN_DEBUG                                  0
/********************************************************************
 GLOBAL MACROS DEFINE
********************************************************************/
#define     REGN_MAXNAME                                11  //for 4 align
#define     REGN_MAXLOADING                             3   //最大 查找 次数.
#define     REGN_MAXKEYLEN                              (12*10)  //10 级

// NODE FLAG
#define     REGN_F_FLAG                                 ((0X00000001U<<31)|0X00000001U)    // 一个标志,便于查找数据(FILE)
#define     REGN_F_FOLDER                                   (0X00000001U<<30)
#define     REGN_F_RO                                   (0X00000001U<<29)   // 只读,程序中不可改变.
#define     REGN_F_DEL                                  (0X00000001U<<28)   // 已经删除掉,用于保存中.
#define     REGN_F_REALLOC                              (0X00000001U<<27)   // 重新申请空间.

/*********************************************************************
ENUMERATIONS AND STRUCTURES
*********************************************************************/
typedef void*       RKEY;
/*****************************************************************/
#ifndef REGISTER_OUT
/*********************************************************************
 FUNCTION PROTOTYPES
*********************************************************************/
//装载 --因为 REG 会 越来越大,因此不能传入固定大小,需要动态申请.
void RegisterInitilize(void);
//保存
void RegisterSerialize(void);

//用 系统注册表恢复 默认值.
void RegisterRestore(void);

//PREG_NODE  RegisterGetKey( char* Key );
RKEY  RegisterAddKey(char* Key ,  INT32U dataSize);    //如果存在,则修改
BOOLEAN  RegisterDelKey(char* Key);    //只有叶子节点才能删除

#define RegisterGetKeyValue( key )         RegisterGetKeyValueEx( key , NULL )
const void    * RegisterGetKeyValueEx(char* Key  ,  INT32U *valueSize);
BOOLEAN  RegisterSetKeyValue(char* Key ,  void * kValue);

//返回 NULL 表示 错误.
RKEY RegisterGetKey(char* Key);
RKEY RegisterGetFirstKeyChild(RKEY parentKey);
RKEY RegisterGetNextKeyChild(RKEY curChildKey);


const void    * RegisterGetRKEYData(RKEY key  ,  INT32U *valueSize);
BOOLEAN  RegisterSetRKEYData(RKEY key ,  void * kValue);
BOOLEAN RegisterSetRKeyFlag(RKEY key , INT32U Flag);


INT32U  RegisterCheckKeyValid(void);

#ifndef DLL
void RegInitGuidInitialise(void);
#endif

#ifdef _REGISTER
void RegisterInitliseKeys(void);
void  PCRegisterAddCommentTag(RKEY key , char* comment ,
                              char * typeTig);
extern RKEY  PCRegisterAddKey(char* Key , INT32U vSize)  ;

#endif

#if REGN_DEBUG > 0
void TestRegister(void);
#endif

#endif
/**************************************************************/
#endif //_OS_IREGISTER_H

/*********************************************************************
 END OF FILE
*********************************************************************/

⌨️ 快捷键说明

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