Rev 536 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
259 | daniel-mar | 1 | /* |
444 | daniel-mar | 2 | This file is part of a common library |
536 | daniel-mar | 3 | Copyright (C) 2002-2006 Toby Thain, toby@telegraphics.net |
259 | daniel-mar | 4 | |
444 | daniel-mar | 5 | This program is free software; you can redistribute it and/or modify |
6 | it under the terms of the GNU General Public License as published by |
||
7 | the Free Software Foundation; either version 2 of the License, or |
||
8 | (at your option) any later version. |
||
259 | daniel-mar | 9 | |
444 | daniel-mar | 10 | This program is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
||
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||
13 | GNU General Public License for more details. |
||
259 | daniel-mar | 14 | |
444 | daniel-mar | 15 | You should have received a copy of the GNU General Public License |
16 | along with this program; if not, write to the Free Software |
||
17 | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
||
259 | daniel-mar | 18 | */ |
19 | |||
495 | daniel-mar | 20 | #ifdef WIN_ENV |
21 | #include <windows.h> |
||
22 | #endif |
||
23 | |||
439 | daniel-mar | 24 | #ifndef STR_H_ |
25 | #define STR_H_ |
||
26 | |||
559 | daniel-mar | 27 | #ifndef WIN_ENV |
444 | daniel-mar | 28 | #ifdef UNICODE |
559 | daniel-mar | 29 | //#define TCHAR wchar_t |
30 | typedef wchar_t TCHAR; |
||
495 | daniel-mar | 31 | #else |
559 | daniel-mar | 32 | //#define TCHAR char |
33 | typedef char TCHAR; |
||
495 | daniel-mar | 34 | #endif |
35 | #endif |
||
36 | |||
37 | void strcpy_advance(TCHAR** str, TCHAR* append); |
||
38 | void strcpy_advance_a(TCHAR** str, char* append); |
||
39 | |||
40 | #ifdef UNICODE |
||
444 | daniel-mar | 41 | size_t xstrlen(wchar_t* s); |
42 | wchar_t* xstrcpy(wchar_t* dst, wchar_t* src); |
||
43 | wchar_t* xstrcat(wchar_t* dst, const wchar_t* src); |
||
44 | wchar_t* xstrrchr(wchar_t* const _Str, const int _Ch); |
||
45 | int xstrcasecmp(const wchar_t* a, const wchar_t* b); |
||
460 | daniel-mar | 46 | int xstrcmp(const wchar_t* a, const wchar_t* b); |
444 | daniel-mar | 47 | #else |
48 | size_t xstrlen(char* s); |
||
49 | char* xstrcpy(char* dst, char* src); |
||
50 | char* xstrcat(char* dst, const char* src); |
||
51 | char* xstrrchr(char* const _Str, const int _Ch); |
||
52 | int xstrcasecmp(const char* a, const char* b); |
||
460 | daniel-mar | 53 | int xstrcmp(const char* a, const char* b); |
444 | daniel-mar | 54 | #endif |
55 | |||
259 | daniel-mar | 56 | unsigned char *myc2pstr(char *s); |
57 | char *myp2cstr(unsigned char *s); |
||
58 | char *myp2cstrcpy(char *dst,const unsigned char *src); |
||
59 | unsigned char *myc2pstrcpy(unsigned char *dst,const char *src); |
||
60 | char *cat(char *d,char *s); // returns pointer after last character copied |
||
355 | daniel-mar | 61 | //void *my_memset(void *dst, int val, size_t len); |
62 | char *my_strdup(char *s); // my_strdup() is like _strdup(), with the difference that it accepts "char*" instead of "const char*" as argument |
||
259 | daniel-mar | 63 | |
440 | daniel-mar | 64 | // DM 03.12.2021 removed, because it is not used in Filter Foundry |
65 | //unsigned char *PLcstrcat(unsigned char * str1,const char * s2); |
||
66 | //unsigned char *PLcstrcpy(unsigned char *s1,const char *s2); |
||
259 | daniel-mar | 67 | |
440 | daniel-mar | 68 | // DM 03.12.2021 removed, because it is not used in Filter Foundry |
259 | daniel-mar | 69 | /* in-place conversion from Pascal to C string */ |
440 | daniel-mar | 70 | //#define INPLACEP2CSTR(s) ((s)[*(s)+1] = 0,(char*)(s)+1) |
439 | daniel-mar | 71 | |
512 | daniel-mar | 72 | void strcpy_win_replace_ampersand(char* dst, char* src); |
73 | |||
439 | daniel-mar | 74 | #endif |