/*
 *%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 *  SCR_SvL1.h
 *  Scripts, Beaudet Christophe
 *%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 *
 */
 
#ifndef __SCR_SvL1_h__Types
#define __SCR_SvL1_h__Types
 
#ifndef __Only_Types__
#define __SCR_SvL1_h__Undef
#define __Only_Types__
#endif /* !__Only_Types__ */
 
/*
 *=================================================================================================
 *  Includes.
 *=================================================================================================
 */
 
#include "SCR_Ntfy.h"
 
#ifdef __SCR_SvL1_h__Undef
#undef __Only_Types__
#undef __SCR_SvL1_h__Undef
#endif /* __SCR_SvL1_h__Undef */
 
/*
 *=================================================================================================
 *  Constants.
 *=================================================================================================
 */
 
/*
 *  To export code.
 */
#undef CPA_EXPORT
#if defined(CPA_WANTS_IMPORT)
#define CPA_EXPORT __declspec(dllimport)
#elif defined(CPA_WANTS_EXPORT)
#define CPA_EXPORT __declspec(dllexport)
#else /* CPA_WANTS_IMPORT */
#define CPA_EXPORT
#endif /* CPA_WANTS_IMPORT */
 
#endif /* __SCR_SvL1_h__Types */
 
/*
 *=================================================================================================
 *  Global variables.
 *=================================================================================================
 */
 
#if !defined(__SCR_SvL1_h__Globals) && !defined(__Only_Types__)
#define __SCR_SvL1_h__Globals
 
CPA_EXPORT extern char gs_a_szModifyFileName[_MAX_PATH];
 
#endif /* !__SCR_SvL1_h__Globals && !__Only_Types__ */
 
 
/*
 *=================================================================================================
 *  Macros.
 *=================================================================================================
 */
 
#if !defined(__SCR_SvL1_h__Macros) && !defined(__Only_Types__)
#define __SCR_SvL1_h__Macros
 
/*
 *	Update modify file.
 *	_String	:	String to write.
 */
#define SCR_M_v_SvL1_UpdateModify(_String)\
{\
	FILE	*p_xFile;\
	p_xFile = fopen(gs_a_szModifyFileName, "at");\
	if(p_xFile == NULL)\
		p_xFile = fopen(gs_a_szModifyFileName, "wt");\
	if(p_xFile)\
		fprintf(p_xFile, "%s", _String);\
	/*ANNECY CB*/\
if(p_xFile)\
	/*ENDANNECY*/\
	fclose(p_xFile);\
}
 
#endif /* !__SCR_SvL1_h__Macros && !__Only_Types__ */
 
/*
 *=================================================================================================
 *  Protos.
 *=================================================================================================
 */
 
#if !defined(__SCR_SvL1_h__Protos) && !defined(__Only_Types__)
#define __SCR_SvL1_h__Protos
 
CPA_EXPORT extern void                          SCR_fn_v_SvL1_RegisterNotify(char *, SCR_tdpfn_Ntfy_Callback, void *, SCR_tde_Ntfy_Action);
CPA_EXPORT extern void                          SCR_fn_v_SvL1_DeleteRegisterNotify(char *, char);
CPA_EXPORT extern SCR_tdst_Ntfy_Description     *SCR_fnp_st_SvL1_GetRegisterNotify(char *);
 
CPA_EXPORT extern void                          SCR_fn_v_SvL1_ToPrevLine(SCR_tdst_File_Description *);
CPA_EXPORT extern void                          SCR_fn_v_SvL1_ToNextLine(SCR_tdst_File_Description *);
CPA_EXPORT extern void                          SCR_fn_v_SvL1_ToNextSection(SCR_tdst_File_Description *);
CPA_EXPORT extern void                          SCR_fn_v_SvL1_ToEndSection(SCR_tdst_File_Description *);
 
CPA_EXPORT extern unsigned int					SCR_fn_ui_SvL1_GetLine(SCR_tdst_File_Description *, char *);
CPA_EXPORT extern void                          SCR_fn_v_SvL1_DeleteLine(SCR_tdst_File_Description *);
CPA_EXPORT extern void                          SCR_fn_v_SvL1_DeleteSection(SCR_tdst_File_Description *);
 
CPA_EXPORT extern void                          fn_v_SvL1_UpdateOneNotify(SCR_tdst_Ntfy_Description *, SCR_tde_Ntfy_Action);
CPA_EXPORT extern void                          SCR_fn_v_SvL1_UpdateAllNotify(void);
CPA_EXPORT extern void							SCR_fn_v_SvL1_SetModificationFileName(char *);
 
#endif /* !__SCR_SvL1_h__Protos && !__Only_Types__ */
