1/*
2 * Author:      William Chia-Wei Cheng (bill.cheng@acm.org)
3 *
4 * Copyright (C) 2001-2009, William Chia-Wei Cheng.
5 *
6 * This file may be distributed under the terms of the Q Public License
7 * as defined by Trolltech AS of Norway and appearing in the file
8 * LICENSE.QPL included in the packaging of this file.
9 *
10 * THIS FILE IS PROVIDED AS IS WITH NO WARRANTY OF ANY KIND, INCLUDING
11 * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
12 * PURPOSE.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL,
13 * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
14 * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
15 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
16 * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 *
18 * @(#)$Header: /mm2/home/cvs/bc-src/tgif/util.e,v 1.10 2011/05/16 16:22:00 william Exp $
19 */
20
21#ifndef _TGIF_UTIL_E_
22#define _TGIF_UTIL_E_
23
24#ifdef _INCLUDE_FROM_UTIL_C_
25#undef extern
26#define extern
27#endif /*_INCLUDE_FROM_UTIL_C_*/
28
29extern void	UtilFree ARGS_DECL((char *pszStr));
30extern char	*UtilFreeStringArray ARGS_DECL((char **ppsz, int nItems));
31extern char	*UtilStrDup ARGS_DECL((char *pszStr));
32extern int	UtilStrCpyN ARGS_DECL((char *pszDest, int nMaxDestSz,
33				char *pszSrc));
34extern int	UtilStrCpy ARGS_DECL((char *pszDest, char *pszSrc));
35extern void	UtilLeftTrim ARGS_DECL((char *pszStr));
36extern void	UtilRightTrim ARGS_DECL((char *pszStr));
37extern void	UtilTrimBlanks ARGS_DECL((char *pszStr));
38extern void	UtilStrUpper ARGS_DECL((char *pszStr));
39extern void	UtilStrLower ARGS_DECL((char *pszStr));
40extern int	UtilStrNCaseCmp ARGS_DECL((char *pszStr1, char *pszStr2,
41				int nCount));
42extern int	UtilStrICmp ARGS_DECL((char *pszStr1, char *pszStr2));
43extern char	*UtilStrRChr ARGS_DECL((char *pszStr, int int_ch));
44extern char	*UtilStrTok ARGS_DECL((char *pszStr, char *pszDelim,
45				char **ppszState));
46#ifdef NO_STRSTR
47extern char	*strstr ARGS_DECL((char *pszStr, char *pszSubStr));
48#endif /* NO_STRSTR */
49extern int	UtilShrinkName ARGS_DECL((char *pszFile));
50extern void	UtilRemoveQuotes ARGS_DECL((char *pszStr));
51extern char	*UtilGetALine ARGS_DECL((FILE *lpFile));
52extern char	*UtilGetAContinuedLine ARGS_DECL((FILE *lpFile));
53extern int	UtilCopyFile ARGS_DECL((char *pszFromFile, char *pszToFile));
54extern int	UtilConcatFile ARGS_DECL((char *pszFromFile1,
55				char *pszFromFile2, char *pszToFile));
56
57extern int	UtilPathExists ARGS_DECL((char *pszPath));
58extern int	UtilPathIsLink ARGS_DECL((char *pszPath));
59extern int	UtilIsDirectory ARGS_DECL((char *pszPath));
60extern int	UtilCreateDirHier ARGS_DECL((char *pszDir));
61
62extern long	UtilGetMilliSecTime ARGS_DECL((long *pl_sec, long *pl_msec));
63
64#ifdef _INCLUDE_FROM_UTIL_C_
65#undef extern
66#ifndef _NO_RECURSIVE_EXTERN
67#define extern extern
68#endif /* ~_NO_RECURSIVE_EXTERN */
69#endif /*_INCLUDE_FROM_UTIL_C_*/
70
71#endif /*_TGIF_UTIL_E_*/
72