ftk.h File Reference

#include <stdarg.h>

Classes

struct  PoolMemoryBlock
 Header for blocks in a memory pool. More...
struct  POOL_STATS
 Pool memory manager. More...

Defines

#define NE_FLM_OK   0
 0 - Operation was successful.
#define NE_FLM_BOF_HIT   0xC001
 0xC001 - Beginning of results encountered.
#define NE_FLM_EOF_HIT   0xC002
 0xC002 - End of results encountered.
#define NE_FLM_EXISTS   0xC004
 0xC004 - Object already exists.
#define NE_FLM_FAILURE   0xC005
 0xC005 - Internal failure.
#define NE_FLM_NOT_FOUND   0xC006
 0xC006 - An object was not found.
#define NE_FLM_BTREE_ERROR   0xC012
 0xC012 - Corruption found in b-tree.
#define NE_FLM_BTREE_FULL   0xC013
 0xC013 - B-tree cannot grow beyond current size.
#define NE_FLM_CONV_DEST_OVERFLOW   0xC01C
 0xC01C - Destination buffer not large enough to hold data.
#define NE_FLM_CONV_ILLEGAL   0xC01D
 0xC01D - Attempt to convert between data types is an unsupported conversion.
#define NE_FLM_CONV_NUM_OVERFLOW   0xC020
 0xC020 - Numeric overflow (> upper bound) converting to numeric type.
#define NE_FLM_DATA_ERROR   0xC022
 0xC022 - Corruption found in b-tree.
#define NE_FLM_ILLEGAL_OP   0xC026
 0xC026 - Illegal operation
#define NE_FLM_MEM   0xC037
 0xC037 - Attempt to allocate memory failed.
#define NE_FLM_NOT_UNIQUE   0xC03E
 0xC03E - Non-unique key.
#define NE_FLM_SYNTAX   0xC045
 0xC045 - Syntax error while parsing.
#define NE_FLM_NOT_IMPLEMENTED   0xC05F
 0xC05F - Attempt was made to use a feature that is not implemented.
#define NE_FLM_INVALID_PARM   0xC08B
 0xC08B - Invalid parameter passed into a function.
#define NE_FLM_IO_ACCESS_DENIED   0xC201
 0xC201 - Access to file is denied. Caller is not allowed access to a file.
#define NE_FLM_IO_BAD_FILE_HANDLE   0xC202
 0xC202 - Bad file handle or file descriptor.
#define NE_FLM_IO_COPY_ERR   0xC203
 0xC203 - Error occurred while copying a file.
#define NE_FLM_IO_DISK_FULL   0xC204
 0xC204 - Disk full.
#define NE_FLM_IO_END_OF_FILE   0xC205
 0xC205 - End of file reached while reading from the file.
#define NE_FLM_IO_OPEN_ERR   0xC206
 0xC206 - Error while opening the file.
#define NE_FLM_IO_SEEK_ERR   0xC207
 0xC207 - Error occurred while positioning (seeking) within a file.
#define NE_FLM_IO_DIRECTORY_ERR   0xC208
 0xC208 - Error occurred while accessing or deleting a directory.
#define NE_FLM_IO_PATH_NOT_FOUND   0xC209
 0xC209 - File not found.
#define NE_FLM_IO_TOO_MANY_OPEN_FILES   0xC20A
 0xC20A - Too many files open.
#define NE_FLM_IO_PATH_TOO_LONG   0xC20B
 0xC20B - File name too long.
#define NE_FLM_IO_NO_MORE_FILES   0xC20C
 0xC20C - No more files in directory.
#define NE_FLM_IO_DELETING_FILE   0xC20D
 0xC20D - Error occurred while deleting a file.
#define NE_FLM_IO_FILE_LOCK_ERR   0xC20E
 0xC20E - Error attempting to acquire a byte-range lock on a file.
#define NE_FLM_IO_FILE_UNLOCK_ERR   0xC20F
 0xC20F - Error attempting to release a byte-range lock on a file.
#define NE_FLM_IO_PATH_CREATE_FAILURE   0xC210
 0xC210 - Error occurred while attempting to create a directory or sub-directory.
#define NE_FLM_IO_RENAME_FAILURE   0xC211
 0xC211 - Error occurred while renaming a file.
#define NE_FLM_IO_INVALID_PASSWORD   0xC212
 0xC212 - Invalid file password.
#define NE_FLM_SETTING_UP_FOR_READ   0xC213
 0xC213 - Error occurred while setting up to perform a file read operation.
#define NE_FLM_SETTING_UP_FOR_WRITE   0xC214
 0xC214 - Error occurred while setting up to perform a file write operation.
#define NE_FLM_IO_CANNOT_REDUCE_PATH   0xC215
 0xC215 - Cannot reduce file name into more components.
#define NE_FLM_INITIALIZING_IO_SYSTEM   0xC216
 0xC216 - Error occurred while setting up to access the file system.
#define NE_FLM_FLUSHING_FILE   0xC217
 0xC217 - Error occurred while flushing file data buffers to disk.
#define NE_FLM_IO_INVALID_FILENAME   0xC218
 0xC218 - Invalid file name.
#define NE_FLM_IO_CONNECT_ERROR   0xC219
 0xC219 - Error connecting to a remote network resource.
#define NE_FLM_OPENING_FILE   0xC21A
 0xC21A - Unexpected error occurred while opening a file.
#define NE_FLM_DIRECT_OPENING_FILE   0xC21B
 0xC21B - Unexpected error occurred while opening a file in direct access mode.
#define NE_FLM_CREATING_FILE   0xC21C
 0xC21C - Unexpected error occurred while creating a file.
#define NE_FLM_DIRECT_CREATING_FILE   0xC21D
 0xC21D - Unexpected error occurred while creating a file in direct access mode.
#define NE_FLM_READING_FILE   0xC21E
 0xC21E - Unexpected error occurred while reading a file.
#define NE_FLM_DIRECT_READING_FILE   0xC21F
 0xC21F - Unexpected error occurred while reading a file in direct access mode.
#define NE_FLM_WRITING_FILE   0xC220
 0xC220 - Unexpected error occurred while writing to a file.
#define NE_FLM_DIRECT_WRITING_FILE   0xC221
 0xC221 - Unexpected error occurred while writing a file in direct access mode.
#define NE_FLM_POSITIONING_IN_FILE   0xC222
 0xC222 - Unexpected error occurred while positioning within a file.
#define NE_FLM_GETTING_FILE_SIZE   0xC223
 0xC223 - Unexpected error occurred while getting a file's size.
#define NE_FLM_TRUNCATING_FILE   0xC224
 0xC224 - Unexpected error occurred while truncating a file.
#define NE_FLM_PARSING_FILE_NAME   0xC225
 0xC225 - Unexpected error occurred while parsing a file's name.
#define NE_FLM_CLOSING_FILE   0xC226
 0xC226 - Unexpected error occurred while closing a file.
#define NE_FLM_GETTING_FILE_INFO   0xC227
 0xC227 - Unexpected error occurred while getting information about a file.
#define NE_FLM_EXPANDING_FILE   0xC228
 0xC228 - Unexpected error occurred while expanding a file.
#define NE_FLM_GETTING_FREE_BLOCKS   0xC229
 0xC229 - Unexpected error getting free blocks from file system.
#define NE_FLM_CHECKING_FILE_EXISTENCE   0xC22A
 0xC22A - Unexpected error occurred while checking to see if a file exists.
#define NE_FLM_RENAMING_FILE   0xC22B
 0xC22B - Unexpected error occurred while renaming a file.
#define NE_FLM_SETTING_FILE_INFO   0xC22C
 0xC22C - Unexpected error occurred while setting a file's information.
#define NE_FLM_IO_PENDING   0xC22D
 0xC22D - I/O has not yet completed
#define NE_FLM_ASYNC_FAILED   0xC22E
 0xC22E - An async I/O operation failed
#define NE_FLM_MISALIGNED_IO   0xC22F
 0xC22F - Misaligned buffer or offset encountered during I/O request
#define NE_FLM_STREAM_DECOMPRESS_ERROR   0xC400
 0xC400 - Error decompressing data stream.
#define NE_FLM_STREAM_NOT_COMPRESSED   0xC401
 0xC401 - Attempting to decompress a data stream that is not compressed.
#define NE_FLM_STREAM_TOO_MANY_FILES   0xC402
 0xC402 - Too many files in input stream.
#define NE_FLM_COULD_NOT_CREATE_SEMAPHORE   0xC500
 0xC500 - Could not create a semaphore.
#define NE_FLM_BAD_UTF8   0xC501
 0xC501 - An invalid byte sequence was found in a UTF-8 string
#define NE_FLM_ERROR_WAITING_ON_SEMAPHORE   0xC502
 0xC502 - Error occurred while waiting on a sempahore.
#define NE_FLM_BAD_SEN   0xC503
 0xC503 - Invalid simple encoded number.
#define NE_FLM_COULD_NOT_START_THREAD   0xC504
 0xC504 - Problem starting a new thread.
#define NE_FLM_BAD_BASE64_ENCODING   0xC505
 0xC505 - Invalid base64 sequence encountered.
#define NE_FLM_STREAM_EXISTS   0xC506
 0xC506 - Stream file already exists.
#define NE_FLM_MULTIPLE_MATCHES   0xC507
 0xC507 - Multiple items matched but only one match was expected.
#define NE_FLM_BTREE_KEY_SIZE   0xC508
 0xC508 - Invalid b-tree key size.
#define NE_FLM_BTREE_BAD_STATE   0xC509
 0xC509 - B-tree operation cannot be completed.
#define NE_FLM_COULD_NOT_CREATE_MUTEX   0xC50A
 0xC50A - Error occurred while creating or initializing a mutex.
#define NE_FLM_BAD_PLATFORM_FORMAT   0xC50B
 0xC50B - In-memory alignment of disk structures is incorrect
#define NE_FLM_LOCK_REQ_TIMEOUT   0xC50C
 0xC50C - Timeout while waiting for a lock object
#define NE_FLM_WAIT_TIMEOUT   0xC50D
 0xC50D - Timeout while waiting on a semaphore, condition variable, or reader/writer lock
#define NE_FLM_NOIP_ADDR   0xC900
 0xC900 - IP address not found
#define NE_FLM_SOCKET_FAIL   0xC901
 0xC901 - IP socket failure
#define NE_FLM_CONNECT_FAIL   0xC902
 0xC902 - TCP/IP connection failure
#define NE_FLM_BIND_FAIL   0xC903
 0xC903 - The TCP/IP services on your system may not be configured or installed.
#define NE_FLM_LISTEN_FAIL   0xC904
 0xC904 - TCP/IP listen failed
#define NE_FLM_ACCEPT_FAIL   0xC905
 0xC905 - TCP/IP accept failed
#define NE_FLM_SELECT_ERR   0xC906
 0xC906 - TCP/IP select failed
#define NE_FLM_SOCKET_SET_OPT_FAIL   0xC907
 0xC907 - TCP/IP socket operation failed
#define NE_FLM_SOCKET_DISCONNECT   0xC908
 0xC908 - TCP/IP disconnected
#define NE_FLM_SOCKET_READ_FAIL   0xC909
 0xC909 - TCP/IP read failed
#define NE_FLM_SOCKET_WRITE_FAIL   0xC90A
 0xC90A - TCP/IP write failed
#define NE_FLM_SOCKET_READ_TIMEOUT   0xC90B
 0xC90B - TCP/IP read timeout
#define NE_FLM_SOCKET_WRITE_TIMEOUT   0xC90C
 0xC90C - TCP/IP write timeout
#define NE_FLM_SOCKET_ALREADY_CLOSED   0xC90D
 0xC90D - Connection already closed
#define FLM_US_LANG   0
 English, United States.
#define FLM_AF_LANG   1
 Afrikaans.
#define FLM_AR_LANG   2
 Arabic.
#define FLM_CA_LANG   3
 Catalan.
#define FLM_HR_LANG   4
 Croatian.
#define FLM_CZ_LANG   5
 Czech.
#define FLM_DK_LANG   6
 Danish.
#define FLM_NL_LANG   7
 Dutch.
#define FLM_OZ_LANG   8
 English, Australia.
#define FLM_CE_LANG   9
 English, Canada.
#define FLM_UK_LANG   10
 English, United Kingdom.
#define FLM_FA_LANG   11
 Farsi.
#define FLM_SU_LANG   12
 Finnish.
#define FLM_CF_LANG   13
 French, Canada.
#define FLM_FR_LANG   14
 French, France.
#define FLM_GA_LANG   15
 Galician.
#define FLM_DE_LANG   16
 German, Germany.
#define FLM_SD_LANG   17
 German, Switzerland.
#define FLM_GR_LANG   18
 Greek.
#define FLM_HE_LANG   19
 Hebrew.
#define FLM_HU_LANG   20
 Hungarian.
#define FLM_IS_LANG   21
 Icelandic.
#define FLM_IT_LANG   22
 Italian.
#define FLM_NO_LANG   23
 Norwegian.
#define FLM_PL_LANG   24
 Polish.
#define FLM_BR_LANG   25
 Portuguese, Brazil.
#define FLM_PO_LANG   26
 Portuguese, Portugal.
#define FLM_RU_LANG   27
 Russian.
#define FLM_SL_LANG   28
 Slovak.
#define FLM_ES_LANG   29
 Spanish.
#define FLM_SV_LANG   30
 Swedish.
#define FLM_YK_LANG   31
 Ukrainian.
#define FLM_UR_LANG   32
 Urdu.
#define FLM_TK_LANG   33
 Turkey.
#define FLM_JP_LANG   34
 Japanese.
#define FLM_KO_LANG   35
 Korean.
#define FLM_CT_LANG   36
 Chinese-Traditional.
#define FLM_CS_LANG   37
 Chinese-Simplified.
#define FLM_LA_LANG   38
 another Asian language
#define FLM_COMP_CASE_INSENSITIVE   0x0001
 0x0001 = Do case sensitive comparison.
#define FLM_COMP_COMPRESS_WHITESPACE   0x0002
 0x0002 = Compare multiple whitespace characters as a single space.
#define FLM_COMP_NO_WHITESPACE   0x0004
 0x0004 = Ignore all whitespace during comparison.
#define FLM_COMP_NO_UNDERSCORES   0x0008
 0x0008 = Ignore all underscore characters during comparison.
#define FLM_COMP_NO_DASHES   0x0010
 0x0010 = Ignore all dash characters during comparison.
#define FLM_COMP_WHITESPACE_AS_SPACE   0x0020
 0x0020 = Treat newlines and tabs as spaces during comparison.
#define FLM_COMP_IGNORE_LEADING_SPACE   0x0040
 0x0040 = Ignore leading space characters during comparison.
#define FLM_COMP_IGNORE_TRAILING_SPACE   0x0080
 0x0080 = Ignore trailing space characters during comparison.

Typedefs

typedef FLMINT RCODE
 Return code.

Enumerations

enum  eColorType {
  FLM_BLACK = 0, FLM_BLUE, FLM_GREEN, FLM_CYAN,
  FLM_RED, FLM_MAGENTA, FLM_BROWN, FLM_LIGHTGRAY,
  FLM_DARKGRAY, FLM_LIGHTBLUE, FLM_LIGHTGREEN, FLM_LIGHTCYAN,
  FLM_LIGHTRED, FLM_LIGHTMAGENTA, FLM_YELLOW, FLM_WHITE
}
 Colors used for logging messages. More...
enum  eLogMessageSeverity {
  F_FATAL_MESSAGE = 0, F_WARN_MESSAGE, F_ERR_MESSAGE, F_INFO_MESSAGE,
  F_DEBUG_MESSAGE
}
 Message severity. More...
enum  eLockType { , FLM_LOCK_EXCLUSIVE, FLM_LOCK_SHARED }
 Types of locks that may be requested. More...

Functions

virtual void FLMAPI appendString (const char *pszStr)=0
 Append a string to the message.
virtual void FLMAPI newline (void)=0
 Append a newline to the message.
virtual void FLMAPI endMessage (void)=0
 End the current message.
FLMUINT FLMAPI f_languageToNum (const char *pszLanguage)
 Get the language string from a language code.
void FLMAPI f_languageToStr (FLMINT iLangNum, char *pszLanguage)
 Convert a language string to the appropriate language code.
virtual FLMBOOL FLMAPI addLockInfo (FLMUINT uiLockNum, FLMUINT uiThreadID, FLMUINT uiTime)=0
 Return lock information for a lock holder or waiter.

Detailed Description


Enumeration Type Documentation

enum eColorType
 

Colors used for logging messages.

Enumerator:
FLM_BLACK  0 = Black
FLM_BLUE  1 = Blue
FLM_GREEN  2 = Green
FLM_CYAN  3 = Cyan
FLM_RED  4 = Red
FLM_MAGENTA  5 = Magenta
FLM_BROWN  6 = Brown
FLM_LIGHTGRAY  7 = Light Gray
FLM_DARKGRAY  8 = Dark Gray
FLM_LIGHTBLUE  9 = Light Blue
FLM_LIGHTGREEN  10 = Light Green
FLM_LIGHTCYAN  11 = Light Cyan
FLM_LIGHTRED  12 = Light Red
FLM_LIGHTMAGENTA  13 = Light Magenta
FLM_YELLOW  14 = Light Yellow
FLM_WHITE  15 = White

enum eLockType
 

Types of locks that may be requested.

Enumerator:
FLM_LOCK_EXCLUSIVE  1 = Exclusive lock.
FLM_LOCK_SHARED  2 = Shared lock.

enum eLogMessageSeverity
 

Message severity.

Enumerator:
F_FATAL_MESSAGE  Indicates that a fatal error occurred - the kind that would normally require a shutdown or other corrective action by an administrator.
F_WARN_MESSAGE  Warning message.
F_ERR_MESSAGE  Non-fatal error message.
F_INFO_MESSAGE  Information-only message.
F_DEBUG_MESSAGE  Debug message.


Function Documentation

virtual FLMBOOL FLMAPI addLockInfo FLMUINT  uiLockNum,
FLMUINT  uiThreadID,
FLMUINT  uiTime
[pure virtual]
 

Return lock information for a lock holder or waiter.

This method is called for each thread that is either holding the lock or waiting to obtain the lock. The application should return TRUE from this method in order to continue, FALSE if it wants to stop and return from the IF_LockObject::getLockInfo() function.

Parameters:
uiLockNum  Position in queue (0 = lock holder, 1..n = lock waiter).
uiThreadID  Thread ID of the lock holder/waiter.
uiTime  For the lock holder, this is the amount of time the lock has been held. For a lock waiter, this is the amount of time the thread has been waiting to obtain the lock. Both times are milliseconds.

virtual void FLMAPI appendString const char *  pszStr  )  [pure virtual]
 

Append a string to the message.

This method may be called multiple times by to format a complete message. The message is not complete until the endMessage() method is called.

virtual void FLMAPI endMessage void   )  [pure virtual]
 

End the current message.

The application should finish logging, displaying, storing, etc. (whatever) the message. The object should be reset in case a new message is subsequently started.

void FLMAPI f_languageToStr FLMINT  iLangNum,
char *  pszLanguage
 

Convert a language string to the appropriate language code.

Parameters:
pszLanguage  Language string that is to be converted to a code.

virtual void FLMAPI newline void   )  [pure virtual]
 

Append a newline to the message.

This method is called when a multi-line message is being created. Rather than embedding a newline character, this method is used. This allows an application to recognize the fact that there are multiple lines in the message and to log, display, store, etc. (whatever) them accordingly.


Generated on Tue Sep 19 14:48:16 2006 for FTK by  doxygen 1.4.6-NO