Reactos
at master 46 lines 1.4 kB view raw
1/* 2 * PROJECT: ReactOS Application compatibility module 3 * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+) 4 * PURPOSE: Shim database string table interface 5 * COPYRIGHT: Copyright 2016 Mark Jansen (mark.jansen@reactos.org) 6 */ 7 8#ifndef SDBSTRINGTABLE_H 9#define SDBSTRINGTABLE_H 10 11#ifdef __cplusplus 12extern "C" { 13#endif 14 15 16/** 17 * Destroy the hashtable and release all resources. 18 * 19 * @param [in] table Pointer to table pointer, will be cleared after use 20 * 21 */ 22void SdbpTableDestroy(struct SdbStringHashTable* * table); 23 24/** 25 * Find an entry in the stringtable, or allocate it when an entry could not be found. 26 * - When the string specified does not yet exist, a new entry will be added to the table, 27 * and the pTagid specified will be associated with this string. 28 * - When the string specified does already exist, 29 * the TAGID associated with this string will be returned in pTagid. 30 * 31 * 32 * @param [in] table Pointer to table pointer, will be allocated when needed. 33 * @param [in] str The string to search for 34 * @param [in,out] pTagid 35 * the data written (in bytes) 36 * 37 * @return TRUE if the string was added to the table, FALSE if it already existed 38 */ 39BOOL SdbpAddStringToTable(struct SdbStringHashTable* * table, const WCHAR* str, TAGID* pTagid); 40 41 42#ifdef __cplusplus 43} // extern "C" 44#endif 45 46#endif // SDBSTRINGTABLE_H