/*<html><pre>*/
#ifndef FSOPS_H
#define FSOPS_H

#include <../source/TAL/objbase.h>

#ifdef	__cplusplus
extern "C" {
#endif	/* __cplusplus */
    void		V_CALL	vfsSplitDir(char *path,char *dir_ret,char *name_ret);
	void		V_CALL	vfsSplitName(char *full_name,char *name_ret,
    	char *ext_ret);
	void		V_CALL	vfsSplitPath(char *full_path,char *dir_ret,
    	char *name_ret,char *ext_ret);
	void		V_CALL	vfsMakePath(char *path_ret,char *dir,
    	char *name, char *ext);

	vboolean	V_CALL	lfsGetDir(char *buffer,u32_t size);
	vboolean	V_CALL	lfsSetDir(char *unix_dir_name,
    	vboolean make_dirs);

	void		V_CALL	lfsEnumFiles(
		void (V_CALL *dir_callback)(char *unix_path),
		void (V_CALL *file_callback)(char *unix_file_name),
		vboolean recursive);

#ifndef		__UNIX__
	vboolean	V_CALL	vfsNative2Unix(char *unix_path,char *win32_path);
	vboolean	V_CALL	vfsUnix2Native(char *win32_path,char *unix_path);
#endif		/* __UNIX__ */
#ifdef	__cplusplus
}
#endif	/* __cplusplus */

#ifndef		RIGHT_SLASHED
#define		PASS_PATH(cb,path)	\
	{\
		char	ospath[_MAX_PATH];\
		vfsNative2Unix(ospath,path);\
		cb(ospath);\
	}
#else		/* RIGHT_SLASHED */
#define		PASS_PATH(cb,path)	cb(path)
#endif		/* RIGHT_SLASHED */

#endif	/* FSOPS_H */
/*</pre></html>*/
/*EOF*/
