amxmodx/plugins/include/nvault.inc

64 lines
1.8 KiB
SourcePawn
Raw Normal View History

// vim: set ts=4 sw=4 tw=99 noet:
//
// AMX Mod X, based on AMX Mod by Aleksander Naszko ("OLO").
// Copyright (C) The AMX Mod X Development Team.
//
// This software is licensed under the GNU General Public License, version 3 or higher.
// Additional exceptions apply. For full license details, see LICENSE.txt or visit:
// https://alliedmods.net/amxmodx-license
//
// NVault Functions
//
2005-08-02 00:22:01 +04:00
#if defined _nvault_included
#endinput
2005-08-02 00:22:01 +04:00
#endif
#define _nvault_included
#pragma reqlib nvault
#if !defined AMXMODX_NOAUTOLOAD
#pragma loadlib nvault
2006-05-10 14:42:49 +04:00
#endif
2005-08-02 15:12:42 +04:00
2006-08-21 01:23:38 +04:00
/* All timestamps are in UNIX epoch form. */
/* Opens a vault by name (such as "myvault")
* Returns a vault id, INVALID_HANDLE otherwise (-1)
*/
2005-08-02 00:22:01 +04:00
native nvault_open(const name[]);
2006-08-21 01:23:38 +04:00
/* Gets a vault value by returning an int
* setting a byref float or setting a string + maxlength
*/
2015-03-11 16:19:27 +03:00
native nvault_get(vault, const key[], any:...);
2005-08-02 00:22:01 +04:00
2006-08-21 01:23:38 +04:00
/* Looks up a vault value for full information
* Returns 0 if the entry is not found
*/
native nvault_lookup(vault, const key[], value[], maxlen, &timestamp);
2005-08-02 00:22:01 +04:00
2006-08-21 01:23:38 +04:00
/* Sets a vault value (with current timestamp) */
2005-08-02 00:22:01 +04:00
native nvault_set(vault, const key[], const value[]);
2006-08-21 01:23:38 +04:00
/* Sets a permanent vault value (no timestamp) */
2005-08-02 00:22:01 +04:00
native nvault_pset(vault, const key[], const value[]);
2006-08-21 01:23:38 +04:00
/* Prunes the vault for entries that are within the given timestamps.
* This will not erase values set with pset
*/
2005-08-02 00:22:01 +04:00
native nvault_prune(vault, start, end);
2006-08-21 01:23:38 +04:00
/* Closes a vault */
2005-08-02 00:22:01 +04:00
native nvault_close(vault);
2006-04-26 09:21:29 +04:00
2006-08-21 01:23:38 +04:00
/* Removes a key from the vault */
2006-04-26 09:21:29 +04:00
native nvault_remove(vault, const key[]);
2006-08-21 01:23:38 +04:00
/* "Touches" a key to update its timestamp value.
* If stamp is -1 (default), it will use the current time.
* Like the unix command "touch," it will create an empty key
* if the value does not exist.
*/
native nvault_touch(vault, const key[], timestamp=-1);