C/C++ User's Journal STLSoft - ... Robust, Lightweight, Cross-platform, Template Software ... ATLSTL - where the Standard Template Library meets the Active Template Library COMSTL - where the Standard Template Library meets the Component Object Model
Synesis Software InetSTL - where the Standard Template Library meets the Internet UNIXSTL - Template Software for the UNIX Operating System WinSTL - where the Standard Template Library meets the Win32 API

H:/freelibs/recls/current/src/recls_util.h

00001 /* /////////////////////////////////////////////////////////////////////////////
00002  * File:        recls_util.h
00003  *
00004  * Purpose:     Implementation header.
00005  *
00006  * Created:     17th August 2003
00007  * Updated:     17th June 2006
00008  *
00009  * Home:        http://recls.org/
00010  *
00011  * Copyright (c) 2003-2006, Matthew Wilson and Synesis Software
00012  * All rights reserved.
00013  *
00014  * Redistribution and use in source and binary forms, with or without 
00015  * modification, are permitted in accordance with the license and warranty
00016  * information described in recls.h (included in this distribution, or available
00017  * from http://recls.org/)
00018  *
00019  * ////////////////////////////////////////////////////////////////////////// */
00020 
00021 
00022 #ifndef RECLS_INCL_H_RECLS_UTIL
00023 #define RECLS_INCL_H_RECLS_UTIL
00024 
00025 /* /////////////////////////////////////////////////////////////////////////////
00026  * Includes
00027  */
00028 
00029 #include <recls/recls.h>
00030 
00031 /* /////////////////////////////////////////////////////////////////////////////
00032  * Namespace
00033  */
00034 
00035 #if !defined(RECLS_NO_NAMESPACE)
00036 namespace recls
00037 {
00038 #endif /* !RECLS_NO_NAMESPACE */
00039 
00040 /* /////////////////////////////////////////////////////////////////////////////
00041  * Functions
00042  */
00043 
00044 RECLS_LINKAGE_C recls_bool_t        is_dots(recls_char_t const *f);
00045 
00046 RECLS_LINKAGE_C size_t              align_up_size(size_t i);
00047 
00048 RECLS_LINKAGE_C size_t              count_char_instances(recls_char_t const *begin, recls_char_t const *end, recls_char_t const ch);
00049 
00050 RECLS_LINKAGE_C size_t              recls_strncpy(recls_char_t *dest, size_t cchDest, recls_char_t const *src, size_t cchSrc);
00051 RECLS_LINKAGE_C size_t              recls_strlen(recls_char_t const *dest);
00052 
00053 RECLS_LINKAGE_C recls_char_t const  *find_directory_0(recls_char_t const *path);
00054 
00055 RECLS_FNDECL(size_t)                Recls_GetStringProperty_(   struct recls_strptrs_t const    *ptrs
00056                                                             ,   recls_char_t                    *buffer
00057                                                             ,   size_t                          cchBuffer);
00058 
00059 RECLS_FNDECL(recls_rc_t)            IsValidPattern( recls_char_t const  *pattern
00060                                                 ,   recls_uint32_t      flags
00061                                                 ,   size_t              maxPathCompLen);
00062 
00063 RECLS_LINKAGE_C recls_bool_t        is_home_start_(recls_char_t const *path);
00064 
00065 RECLS_LINKAGE_C size_t              get_home_(recls_char_t *buff, size_t cchBuff);
00066 
00067 /* /////////////////////////////////////////////////////////////////////////////
00068  * Namespace
00069  */
00070 
00071 #if !defined(RECLS_NO_NAMESPACE)
00072 } /* namespace recls */
00073 #endif /* !RECLS_NO_NAMESPACE */
00074 
00075 /* ////////////////////////////////////////////////////////////////////////// */
00076 
00077 #endif /* !RECLS_INCL_H_RECLS_UTIL */
00078 
00079 /* ////////////////////////////////////////////////////////////////////////// */

recls Library documentation © Synesis Software Pty Ltd, 2001-2006